最近的项目用到了著名的Three20界面库, 程序发布完成结果背Apple拒绝,理由是使用了Private APIs, 没话说,肯定是Three20的问题。
于是获取最新代码,编译之后对可执行文件进行扫描确认没有Private APIs被调用了之后再build最终版本以提交App Store, 不知道是哪根筋不对突然觉得是否应该在真机上编译个release版本再提交,不然又要等若干天,万一被打回又得耽误功夫。
果然,一试吓一跳, 无法运行,原因是Three20中的所有对SDK种类的扩展都没被打包编译进来,运行时无法找到相应的selector,当然就crash了
开始是google搜寻答案,屡试之后,静下心来看看Three20的文档, 看到最后才恍然大悟,原来还需要一个 -all_load 连接选项。添加后编译运行,一切顺利, god。
然后翻阅水果文档,才知道 -all_load link option连接选项是告诉编译器将所连接的库全部包含,而不是用到才引入。
编程开发
看到很刚开始开发iPhone软件的朋友问很多问题,其实同样的问题我也碰到过, 所以抽时间把能想到的或者碰到的问题汇总一下, 一来可以给自己做个备忘也可以和朋友们分享探讨。
ZipArchive is a wrapper class to compress and uncompress zip files for Objective-C and cocoa use. It’s developed based on minizip and zlib.
iPhone越来越普及, 从而越来越多的人加入到了iPhone开发的行列, 还记得大概2年前刚开始iPhone SDK开发的时候苦于四处寻找资料, 当时国内相关内容少的可怜, 只有cocoachina 及论坛。 大多数时候泡在apple 官方论坛。 现在不同了, 各类iPhone相关的网站可谓铺天盖地, 其中内容重复的也不在少数, 个人经常上的只有几个, 在此列出共大家参考:
Recently, I got a task to develop an application for iPhone. In the application, there are some optional choices for user to decide further processes. The first idea jumps out from my head is something like button with a checkbox just the same as other desktop platforms, but unfortunately, iPhone SDK doesn’t provide such view. The only official choice is the ON|OFF switch view, but it really can’t represent the actually meaning of the options. So comes out the idea of writing custom checkbox style button.
Snow Leopard正式版已经发布有一段时间了,看了一下iHackintosh的介绍,升级到Snow Leopard需要一块新的硬盘,作罢。 今天抽空将iDeneb系统升级到10.5.8, 升级过程非常简单,如果已经是10.5.7系统就下载官方更新包Delta update(274MB), 如果是低版本则下载Combo update(759MB)。 在升级之前,还需要下载osx86tools。