我的问题是关于IphoneOS3.1SDK dirctory中的私人框架
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks /
他们是什么?当我将其中一个添加到我的项目中时,他们没有任何标题? 我如何在我的项目中使用它们?
答案 0 :(得分:8)
私有框架是您不允许使用的框架。预计它们不会在Apple之外使用,因此“私有”。它们通常是较低级别的库,如果使用不当可能会“破坏”系统。 (但框架必须存在,因为Apple的应用程序和公共框架确实使用私有框架。)
由于私有框架不供公众使用,Apple不需要提供任何标题或文档。
如果您正在为AppStore写作,那么不应该使用私有框架(除非您来自Apple)。即使在审核流程开始之前,系统也会立即拒绝您的应用。
(另一方面,对于越狱平台,您可以自由使用任何框架。即便如此,私有框架的API也不稳定,如果可能,您应该避免使用它们。
我们一直在努力在http://iphonedevwiki.net/index.php/Main_Page中记录这些私有框架和API。)
答案 1 :(得分:3)
如果您想将应用程序提交给Apple,请避免使用私有框架。否则,您可以使用自己的代码调用任何可用的私有方法。 Erica Sadun在她的网站上有一些关于私人框架的信息。
答案 2 :(得分:0)
虽然其他答案通常都是正确的,但有一个小例外值得提及。
在某些情况下,私有框架的某些内容(除了代码库之外通常还有数据库及其中类似的二进制,非可执行文件)可以在App Store应用程序中使用(捆绑)。其中一个例子是来自@rmaddy的RMPhoneFormat类,它使用“Apple提供的名为Default.phoneformat的私有框架文件的副本”。作者(无疑还有其他开发人员)在App Store应用without problems中使用了这个二进制文件。
(我不知道这是否是因为Apple容忍这种做法,或者他们在审批过程中没有检查这种用法。)