两个简单的错误提示和原因
在使用iTunes Connect上传时出现Info.plist does not contain a CFBundleResourceSpecification这样的错误时通常是因为你上传的是模拟器的版本的程序。
建议在上传前还是经过真机测试..
使用UIWebView显示多种文档
除了HTML的内容,UIWebView还可以显示多种类型的文档
包括以下的类型
· Excel (.xls)
· &nbs..
为什么应用程序用户启动时崩溃,使用xcode打开却不会
iPhone的系统在程序启动时使用一个看门狗定时器,一旦发现程序花费太长的时间用来初始化启动程序,系统会终结程序。程序被终结的异常代码为0x8badf0..
在设备上保存用户数据
应用程序在保存数据到程序的Bundle,这在模拟器上是可以的,但是在真机上就不行了。
这是因为设备和模拟器的不同的权限导致的。模拟器拥有完全的读写权限,设备就没有了。
iPhone Applic..
在程序中检测数字和链接
在iPhone 3.0后就支持UIDataDetectorTypes来检测数字和链接。
UIDataDetectorTypePhoneNumber
UIDataDetectorTypeLink
UIDataDetectorTypeNone
UIDataDetectorTypeAll
通过设置data..
如何在程序内退出iPhone程序
iPhone上退出应用程序只能由用户点击Home键,apple并没有提供退出的api,私有的api是有的,不过听说4.0也已经无效了。基本我们已经不用这种暴力的事情了。苹果就是这样的霸..
最近遇到了关于检查更新的版本问题了。
问题出在了Info.Plist配置中的两个字段,BundleVersion和BundleShortVersionString。
搞了两年的开发,第一次看到还有另一个字段的版本。
由于版本检测升级的问题,搞得一众人手忙脚乱,一直讨论都没有一个定论。
迅速google后,网络上多数都是对官方文档的复述,还是没有实质的解决。
有一部分人的观点是,BundleVersion的会出现非a.b.c.d的数值,类似于beta等
后来在stack overflow,大致是说苹果的BundleVersion会出现bug。具体是1.02会被识别为1.2,而后在新版本的1.1时,无法正确判断,因为1.1<1.2。
现在的问题是这两个字段到底是有什么作用。
辗转查找,看到下图后基本知道其含义了。
当系统存在动态版本的库时,如何直接链接静态版本的库
通常,连接器会遍历目录去寻找动态版本的库如果没找到,在每一个目录下查找静态版本的相同的库。
显示的判断使用哪一个版本的库时..
如何在发布包中将资源放在独立目录中
在添加资源时,首先资源应该在独立的目录中,然后在添加资源的时候修改一下默认的选择项,就可以。添加后资源目录会变成不同于平常的黄色文件夹,而是蓝色文..
我怎么确定是不是运行在调试器下呢?
下面的代码展示最佳的判断方式
#include <assert.h>
#include <stdbool.h>
#include <sys/types.h>
#include <unistd.h>
#in..