什么是Private FrameWorks以及我们将如何使用它们?

时间:2010-04-20 19:33:33

标签: iphone macos frameworks

我的问题是关于IphoneOS3.1SDK dirctory中的私人框架

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks /

他们是什么?当我将其中一个添加到我的项目中时,他们没有任何标题? 我如何在我的项目中使用它们?

3 个答案:

答案 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容忍这种做法,或者他们在审批过程中没有检查这种用法。)