- 博客(16)
- 资源 (11)
- 收藏
- 关注
原创 由_layer.contents = (__bridge id)image.CGImage想到的
UIImage *image = [UIImage imageNamed:@"xxx.png"] ;_layer.contents = (__bridge id)image.CGImage ;这句代码非常熟悉,我经常用到,曾经怀疑要不要保持image不要其被释放,不然image.CGImage就会被释放了,然后他不会,因为在CALayer里,contents被定义成@property(strong
2015-04-27 15:53:16
1974
原创 网络协议的设计(积累改进中)
做一个稍微复杂一点的APP都要涉及网络,网络通讯简单一点的是使用HTTP协议,HTTP协议是PULL的,我也蛮喜欢HTTP的,因为简单。对于需要大量交互的应用还是要用socket,所以基本上还是要自己制订协议,做过几个应用都有用到这方便的东西,所以也想总结一下,由于自己的知识有限,随着学到的东西越来越多,可能会发现这篇文章有一些错误或者需要改进的地方,我会随时更新。协议的字段先说说我认为一个协议必要
2015-04-22 17:11:12
1769
原创 Weakly linked symbols and frameworks(弱引用符号和framework)
我们开发的时候,都会使用最新的SDK,但是为了让老的设备可以下载并运行我们的应用,就要将Deployment Target设置成之前系统的版本号。例如我们应用使用iOS 8.1的SDK,Deployment Target设置成iOS 5.1.1,虽然我们开发的时候使用的是8.1的SDK,但是程序运行在的设备中却可能是6.0 or 7.0的SDK上,按照苹果的说法,如果我们应用使用了最新SDK引入的特
2015-04-07 17:50:34
1708
原创 socket编程杂记
对于已关闭的socket的写操作,第一次会正确返回,第二次就会触发SIGPIPE信号,如果没有捕获就会导致程序被杀掉,可以使用下面的代码解决。int nosigpipe = 1; setsockopt(socketFD, SOL_SOCKET, SO_NOSIGPIPE, &nosigpipe, sizeof(nosigpipe));
2015-04-07 10:07:55
586
原创 VoIP项目总结
两年前从前做过VoIP的项目,当然那时候iOS8还没出现,自从iOS8出现后,VoIP的通知的方式好像改成了推送通知了,之后的实现方式我也没怎么研究了,所以这篇文章是只针对基于iOS8之前的SDK开发的项目的,可能你觉得这已经没有必要了,但是我还是想做一个记录。苹果对于VoIP的介绍比较详细了 Tips for developing a VoIP AppA Voice over I
2015-01-27 15:02:12
1075
原创 const & volatile
const int a = 0 ;volatile int b = 0 ;上面这两行代码比较简答,const修饰符表示我们不能够修改a这个变量的值,而volatile修饰符表示每次用到b这个变量,都要重新从内存里加载,不允许编译器对其优化。const int a = 0 ;const int *pa = &a ; volatile int b ;volati
2014-12-18 11:08:18
644
原创 iOS中的僵尸对象的实现
僵尸对象对于我们调试程序来说很有用,在XCode中打开僵尸对象的方法是设置NSZombieEnabled环境变量为YES,这导致所有的对象都不会被释放,程序跑起来会时间长了内存占用量很大。Mike Ash在他的博客中已经解释了僵尸对象实现的细节,我在这里就算是翻译一下吧... OC中的对象都是结构体,结构体中第一个字段是一个isa,指向对象的类对象,类对象也是一个对象,也有
2014-12-16 14:26:44
2048
原创 Valid Architectures & Architectures & Build Active Architecture Only
Valid Achitectures 表示我们的工程支持的处理器类型,因为有的时候工程可能依赖于wai'jie
2014-11-04 14:49:13
1477
原创 Xcode工程和Target中环境变量
以viewControllerContainer这个工程为例BUILT_PRODUCTS_DIR is /Users/yuanrui/Library/Developer/Xcode/DerivedData/viewControllerContainer-caxnrbwyakpuxoeuvnskydlqiqle/Build/Products/Debug-iphoneos
2014-11-04 13:54:23
1187
原创 __bridge_transfer其实是release
最近项目中遇到了一些崩溃的情况,发现主要是对象多次释放,所以jie'ci'jin'hui
2014-09-16 10:39:07
1080
原创 剖析iOS开发证书和provisioning profiles
这编文章主要是参考了Demystifying iOS certificate and provisioning files,本来是想翻译来着,不过因为我又加了许多自己的理解,所以就放个链接出来算是引用好了。 文章用到了一些密码学的知识,比如公钥、私钥、数字签名、证书等等,这些知识我是从《计算机网络:自顶向下方法》计算机网络中的安全这一章了解到的,如果大家有不明白的地方可以参考一下。
2014-09-11 15:15:23
928
Windows API for VB
2009-06-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人