Iphone 什么是非公共API?

Iphone 什么是非公共API?,iphone,ios,ipad,Iphone,Ios,Ipad,应用商店内部审查指南称,非公共应用将被拒绝。这是什么意思 私有API和非公共API之间有什么区别 我正在使用我客户的API,在我的应用程序中为我的UIWebview获取数据,这是否属于非公共APIs 帮帮我。没有区别。它们都是指任何未记录的iOS API 外部API不算数,因为它们与iOS本身无关,所以只要在Objective-C代码中不使用未记录的调用,您就安全了。非公共API指的是未记录并提供给程序员的Apple API方法 苹果不保证API的这一部分在未来的升级中能够正常工作。他们可以自由

应用商店内部审查指南称,非公共应用将被拒绝。这是什么意思

私有
API
和非公共
API
之间有什么区别

我正在使用我客户的
API
,在我的应用程序中为我的
UIWebview
获取数据,这是否属于非公共
API
s


帮帮我。

没有区别。它们都是指任何未记录的iOS API


外部API不算数,因为它们与iOS本身无关,所以只要在Objective-C代码中不使用未记录的调用,您就安全了。

非公共API指的是未记录并提供给程序员的Apple API方法

苹果不保证API的这一部分在未来的升级中能够正常工作。他们可以自由地改变这部分

它们禁止使用,这样你的应用程序就不会在iOS更新中中断,从而保护你应用程序的未来用户/购买者


Web服务是外部的,因此不属于非公共的。您需要保证的是这一部分,而不是苹果。

目标C允许以不同的方式使用内部(私有)方法。 苹果要求的是不要使用他们框架中的方法,这些方法不是设计用于“客户端”代码的。
因此,当你访问一个私有方法时,它的属性是不好的。

在iOS的发展过程中,苹果通常从拥有一个私有API开始,直到它被完善并有足够的文档来允许开发者使用它

iOS上的方法和类比您的标题或文档要多得多。例如,有一个类将NSAttributedString转换为HTML,名为NSHTMLWriter。这不是文档化的,也不是公开的,但在UITextView内部使用

私有API的其他示例包括直接访问蜂窝网络信息、低级别硬件访问或精确的电池负载百分比(公共API仅返回5%的增量)之类的内容

不公开API可以让苹果进一步完善它,甚至可能更改名称,这将打破依赖于先前命名的软件。苹果可以做到这一点,因为他们控制着所有的系统软件。要更改已发布的API中的某些内容,他们必须在不赞成的情况下进行此操作

App Store Review团队有一个scanner应用程序,可以查看您提交的应用程序,并标记对未记录方法和类的所有调用。有很多方法可以绕过那些模糊的方法选择器,但一般来说,你想和苹果玩得很好,因为如果你违反规则,他们不喜欢

有一些非常罕见的例子,其中一个私人API被追溯公开。i、 在iOS 5中已经存在一种方法,苹果允许我们使用,尽管没有相关文档,只有一份技术说明

总之:只使用苹果官方文档中记录的类和方法


PS:有一些方法可以通过官方渠道从UIWebView获取数据。这里更详细的技术答案完全取决于您试图做什么。

您的意思是,使用客户端API是安全的,对吗?@pradeepj,是的,它是安全的。你的意思是web服务。不是API。通过私有API,它意味着像应用程序中使用的未记录的方法之类的东西。下面是你想要了解的内容,你会找到答案。你可以使用特殊软件检查应用程序是否使用私有API:这个问题不应该被关闭。是的,我使用了部分更改的类,它们是由苹果开发的(来自示例代码部分)。我在开发应用程序时使用了它们,然后我忽略了它们,但仍然在我一直验证的包中链接。苹果不喜欢使用他们的方法,尤其是他们的名字