![]() |
1
18
私有API是SDK中未记录的API。例如,一个框架类可能声明一个外部开发人员不打算使用的方法。不能保证私有API的行为。您甚至无法确定该方法是否会在平台的未来更新中出现。它的声明可能在公开分发的SDK头文件中不可用。如果您坚持SDK文档中公开定义的内容,那么您就可以了。 |
![]() |
2
6
您会发现,由于意外,很难使用私有API。它们没有在SDK文档中记录,也没有出现在XCode的代码完成建议中。
|
![]() |
3
3
导致应用程序被拒绝的不仅仅是私有API。使用公共API的未记录成员可能会导致应用程序被拒绝。例如,three20库(自修复以来)访问了一个类别中的_阶段和UITouch的其他成员。 它们还可以检测到呼叫 成员通过performSelector,因为以下内容也标记了拒绝:
|
![]() |
4
1
通常情况下,它们不在SDK头中。苹果公司的惯例之一是在ObjC方法名称前面加下划线。 |
![]() |
5
1
在提交应用程序之前使用的一个很好的工具是AppScanner。它会扫描你的.app文件,查看私有API的使用情况,并显示哪些方法签名匹配,以及这些方法所在的类。 |
![]() |
6
1
我的应用因为使用私有API而被苹果拒绝。下面是代码,
|
![]() |
7
0
它显示了机器人如何扫描API。 |
![]() |
Ben Dowling · iOS触摸事件通知(专用API) 12 年前 |