我正在为包含预定义视图控制器的客户端创建SDK。为了方便起见,打包所有内容(静态lib,.xib和.png(s))的推荐方法是什么?
我使用的SDK(例如Pinch Media)可以很好地提供.h和.a文件,该文件只公开用户可访问的功能并隐藏其他所有功能。当我阅读Apple的文档时,框架将是理想的,但在iPhoneOS上是不允许的。
一些关键要求:
谢谢!
答案 0 :(得分:3)
框架将是理想的,但正如你所说,iPhone上是不允许的。我想最终你需要提供至少3个文件:头文件,静态库和资源包。
头文件只包含您想要公开的所有API。如果您有多个类,则可能需要提供多个标题。
对于静态库,我建议对每个体系结构(设备和模拟器)进行正常编译,然后使用lipo将它们组合起来(根据需要替换路径):
lipo -create -output output/file/path device/file/path simulator/file/path
使用bundle你可以在Xcode中创建一个新目标来创建一个bundle,但实际上它只是一个文件夹。您还需要让SDK知道如何加载捆绑包,并获取资源。但是,您无法从捆绑中加载可执行代码;这就是框架在iPhone上不起作用的原因。