Non-public API

Hi Devs!


Apple does not allow non-public api usage in the app BUT

  1. How do we distinguish between public and non public?
  2. How do we find out if an app is consuming a non public api?


😕



Follow up:

I realized how Apple define non-public api in our code. When the method name that you defined in code has collide with Apple's private API, Apple will reject your due to conflict issue. Am I right?

Public APIs are documented, private (to Apple) APIs are not.


It's your responsibility to avoid using names that collide with private API names. See here:


https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingMethods.html#//apple_ref/doc/uid/20001282-1003829-BCIBDJCA


(at the end of the page under heading "Private Methods").


If you accidentally override a private method name when you subclass a Cocoa class, then, yes, app store review will reject your app.

Non-public API
 
 
Q