<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[JachHu的专栏]]></title><description><![CDATA[我是一个怀着学习欲望的iOS菜鸟]]></description><link>https://blog.youkuaiyun.com/hushing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; hushing]]></copyright><item><title><![CDATA[ios生成随机数方法]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/25365381</link><guid>https://blog.youkuaiyun.com/hushing/article/details/25365381</guid><author>hushing</author><pubDate>Fri, 09 May 2014 09:11:14 +0800</pubDate><description><![CDATA[ios 有如下三种随机数方法：
1.    srand((unsigned)time(0));  //不加这句每次产生的随机数不变
        int i = rand() % 5;      

2.    srandom(time(0));
        int i = random() % 5;

3.    int i = arc4random() % 5 ;
 
]]></description><category></category></item><item><title><![CDATA[TCP、UDP和HTTP]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/24774139</link><guid>https://blog.youkuaiyun.com/hushing/article/details/24774139</guid><author>hushing</author><pubDate>Wed, 30 Apr 2014 10:35:21 +0800</pubDate><description><![CDATA[先来一个讲TCP、UDP和HTTP关系的

1、TCP/IP是个协议组，可分为三个层次：网络层、传输层和应用层。
在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
在传输层中有TCP协议与UDP协议。
在应用层有FTP、HTTP、TELNET、SMTP、DNS等协议。
因此，HTTP本身就是一个协议，是从Web服务器传输超文本到本地浏览器的传送协议。
 ]]></description><category></category></item><item><title><![CDATA[iOS开发之单元测试]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/24359549</link><guid>https://blog.youkuaiyun.com/hushing/article/details/24359549</guid><author>hushing</author><pubDate>Wed, 23 Apr 2014 13:23:04 +0800</pubDate><description><![CDATA[iOS开发之单元测试

开始之前
本文侧重讲述如何在iOS程序的开发过程中使用单元测试。使用Xcode自带的OCUnit作为测试框架。
一、单元测试概述
单元测试作为敏捷开发实践的组成之一，其目的是提高软件开发的效率，维持代码的健康性。其目标是证明软件能够正常运行，而不是发现bug（发现bug这一目的与开发成本是正相关的，虽然发现bug是保证软件质量的一种手段，但是很显然这与降低软件开发]]></description><category></category></item><item><title><![CDATA[使用GCD]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/20940557</link><guid>https://blog.youkuaiyun.com/hushing/article/details/20940557</guid><author>hushing</author><pubDate>Mon, 10 Mar 2014 18:13:13 +0800</pubDate><description><![CDATA[Posted by 唐巧 Feb 22nd, 2012
iOS

什么是GCD
Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。该方法在Mac OS X 10.6雪豹中首次推出，并随后被引入到了iOS4.0中。GCD是一个替代诸如NSThread, NSOperationQueue, NSInvocationOperation等技术的很高效]]></description><category></category></item><item><title><![CDATA[CocoaPods第三方库的管理利器,不会用你就OUT]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/20471199</link><guid>https://blog.youkuaiyun.com/hushing/article/details/20471199</guid><author>hushing</author><pubDate>Tue, 04 Mar 2014 16:57:41 +0800</pubDate><description><![CDATA[开发应用的时候第三方的库是不可缺少的，能提高开发的效率。 一些经常用到的库，在新的项目里用是，你又得手工的Add到项目里，用的到库多起来了，就不方便管理了。发现CocoaPods这个软件，可以帮你管理Xcode里的第三方的库，很方便。
那怎么用呢？先安装CocoaPods。

场景1：利用CocoaPods，在项目中导入类库

1、CocoaPods是跑在Ruby的软件，安装可能需要几分]]></description><category></category></item><item><title><![CDATA[Device token的获得和改变详解]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/19819487</link><guid>https://blog.youkuaiyun.com/hushing/article/details/19819487</guid><author>hushing</author><pubDate>Mon, 24 Feb 2014 13:50:44 +0800</pubDate><description><![CDATA[Device token for an iPhone device生成之后就永远不变吗？
不是，if a device is wiped (应该是重装系统), it will get a new device token. 
官方网站是这样写的： If
 the user restores backup data to a new device or computer, or reinsta]]></description><category></category></item><item><title><![CDATA[苹果消息推送正式环境]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/19819309</link><guid>https://blog.youkuaiyun.com/hushing/article/details/19819309</guid><author>hushing</author><pubDate>Mon, 24 Feb 2014 13:48:27 +0800</pubDate><description><![CDATA[这篇是关于正式环境的消息推送步骤，和测试环境的消息推送有点差别，分享给大家：
IOS的推送证书，有有效期限制，一般为一年。当我们证书过期的时候，就需要重新生成证书了。下边我们将重新生成一个正式环境的push推送的证书。



1。先打开钥匙串(应用程序-实用工具-钥匙串访问)，请求一个证书







常用名称写为：2013.04.27_push_production_]]></description><category></category></item><item><title><![CDATA[ios正式发布 遇到的推送服务问题]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/19632343</link><guid>https://blog.youkuaiyun.com/hushing/article/details/19632343</guid><author>hushing</author><pubDate>Fri, 21 Feb 2014 17:44:01 +0800</pubDate><description><![CDATA[ios的推送使用开发配置就不说了，网上有各种教程。

http://blog.sina.com.cn/s/blog_a63c672e01013762.html

http://zxs19861202.iteye.com/blog/1532460

http://www.youkuaiyun.com/article/2012-02-18/311976

产品在提交前使用sandbox模式，测试通]]></description><category></category></item><item><title><![CDATA[一步一步教你做ios推送]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/19625967</link><guid>https://blog.youkuaiyun.com/hushing/article/details/19625967</guid><author>hushing</author><pubDate>Fri, 21 Feb 2014 16:10:46 +0800</pubDate><description><![CDATA[本帖出处：http://blog.youkuaiyun.com/showhilllee/article/details/8631734

最近在研究ios的推送问题，遇到了一些问题，最终整理了一下。放在这里和大家分享
APNS的推送机制
首先我们看一下苹果官方给出的对ios推送机制的解释。如下图


 
Provider就是我们自己程序的后台服务器，APNS是Apple Push Notifi]]></description><category></category></item><item><title><![CDATA[amr编码]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/9232333</link><guid>https://blog.youkuaiyun.com/hushing/article/details/9232333</guid><author>hushing</author><pubDate>Wed, 03 Jul 2013 12:04:40 +0800</pubDate><description><![CDATA[目录
1. 概述
2. AMR编码
3. AMR解码
4. AMR帧读取算法
5. 参考资料

1. 概述
现在很多智能手机都支持多媒体功能，特别是音频和视频播放功能，而AMR文件格式是手机端普遍支持的音频文件格式。

AMR，全称是：Adaptive Multi-Rate，自适应多速率，是一种音频编码文件格式，专用于有效地压缩语音频率。

AMR音频主要用于移动设备的音频]]></description><category></category></item><item><title><![CDATA[ios程序发布后，收集Crash崩溃信息]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/9197713</link><guid>https://blog.youkuaiyun.com/hushing/article/details/9197713</guid><author>hushing</author><pubDate>Fri, 28 Jun 2013 16:11:48 +0800</pubDate><description><![CDATA[有人想在iOS程序发布之后，收集程序崩溃的信息以便改进程序，今天我给大家介绍个比较实用的方法。
崩溃信息的收集完成后会在沙盒生成txt报告，但是这个crash收集也不能收集所有的程序崩溃信息，例如栈溢出或者对象指针损坏等等，这些崩溃会导致Crash收集的代码不会执行。
废话不多说，先直接讲添加方法，源代码一起奉献；
在appdelegate里的 application:didFinishLo]]></description><category></category></item><item><title><![CDATA[AMR文件分析]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8618715</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8618715</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 17:46:32 +0800</pubDate><description><![CDATA[(转)AMR文件分析
(2012-03-25 13:45:03)
转载▼





标签：
杂谈

分类：音视频编解码




目录
1.   概述
2.   AMR编码方式
3.   AMR文件结构示范图
4.   AMR帧头格式分析
5.   异常帧分析
6.   AMR帧读取算法
7.   参考资料
1.     概述
现在很多智能手机都支持]]></description><category></category></item><item><title><![CDATA[什么是PCM？它和.wav文件是什么关系？]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8618671</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8618671</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 17:34:48 +0800</pubDate><description><![CDATA[PCM（Pulse CodeModulation----脉码调制录音)。所谓PCM录音就是将声音等模拟信号变成符号化的脉冲列，再予以记录。PCM信号是由[1]、[0]等符号构成的数字信号，而未经过任何编码和压缩处理。与模拟信号比，它不易受传送系统的杂波及失真的影响。动态范围宽，可得到音质相当好的影响效果。

WAV是由微软开发的一种音频格式。WAV符合 PIFF Resource Interc]]></description><category></category></item><item><title><![CDATA[(综合)iPhone手机录音-amr]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8618606</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8618606</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 17:26:12 +0800</pubDate><description><![CDATA[Android的音频采集
主要使用AudioTrack和AudioRecord两个类进行操作

可参考webrtc源码：\ver789\src\modules\audio_device\main\source\android\org\webrtc\voiceengine\AudioDeviceAndroid.java

参考百度资料
http://wenku.baidu.com/vie]]></description><category></category></item><item><title><![CDATA[iphone 开发技巧总结]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8618122</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8618122</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 15:55:22 +0800</pubDate><description><![CDATA[iphone 开发技巧总结
1、如果在程序中想对某张图片进行处理的话（得到某张图片的一部分）可一用以下代码：



UIImage*image = [UIImageimageNamed:filename];
CGImageRef imageRef =image.CGImage;
CGRect rect= CGRectMake(origin.x,origin.y ,size.width]]></description><category></category></item><item><title><![CDATA[ios与android设备即时语音互通的录音格式预研说明]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8616703</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8616703</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 11:06:50 +0800</pubDate><description><![CDATA[本文虽属原创，但是内容都是来自于网络,参考了大家的微博，以及论坛的总结。
在做语音对讲的时候，将会碰到录制语音格式的问题，因为要考虑自己开发设备的支持的格式，还要考虑其他设备操作系统的支持的格式，以及各自平台实现各格式的难易程度。
以前公司做语音这部分，解决方式是通过本地录制一个语音文件，在服务器进行编解码转换。当然每个平台也是选择自己最合适的编码格式。
现在平台主要是ios与android]]></description><category></category></item><item><title><![CDATA[什么是音频的采样率和采样大小]]></title><link>https://blog.youkuaiyun.com/hushing/article/details/8616685</link><guid>https://blog.youkuaiyun.com/hushing/article/details/8616685</guid><author>hushing</author><pubDate>Wed, 27 Feb 2013 11:05:06 +0800</pubDate><description><![CDATA[自然界中的声音非常复杂，波形极其复杂，通常我们采用的是脉冲代码调制编码。即PCM编码。PCM通过抽样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。

抽样：在音频采集中叫做采样率。
由于声音其实是一种能量波，因此也有频率和振幅的特征，频率对应于时间轴线，振幅对应于电平轴线。波是无限光滑的，弦线可以看成由无数点组成，由于存储空间是相对有限的，数字编码过程中，必须对弦线的点进行采样。采]]></description><category></category></item></channel></rss>