2

I have integrated Everyplay in my game based on SpriteKit. After submitting an update I got a warning "The app references non-public selectors in Payload/game.app/game: appID, expirationDate, isOpen".

I have searched for few hours to solve the problem but haven't found something useful.

Could you help me to fix this problem?

Will my game get approved?

Edit: This is coming from Everyplay's code. I ran strings command (to test).

My game was approved.

  • Are you calling those selectors somewhere in your app ? – KIDdAe Jul 16 '14 at 08:06
  • No, I don't call those selectors. – Sergey Zapuhlyak Jul 16 '14 at 08:14
  • you may want to take this to everyplay support – CodeSmile Jul 16 '14 at 08:22
  • Are you sure your code (or other non-Apple code you might be using) haven't defined their own methods with these same names? These warnings can be set off by "false positives". The tool thinks you're using a private API when in reality, you're just using a method with a name that matches a private API. Renaming those methods would solve the problem (if that's what's going on). Those names look very generic to me ... the kinds of things that multiple frameworks might be using. – Nate Jul 17 '14 at 20:31
  • I can't rename methods of Everyplay framework. – Sergey Zapuhlyak Jul 18 '14 at 06:57
  • Do you know that this is coming from Everyplay's code? Have you run `nm` or `strings` on that framework binary to see if that's where the usage is? If not, you should :) – Nate Jul 19 '14 at 07:12
  • 1
    This is coming from Everyplay's code. I ran strings command. – Sergey Zapuhlyak Jul 20 '14 at 08:17
  • Then, your only choices are: (1) email the Everyplay developers, and ask them to rename the methods, or (2) take the output from your `strings` command, and include it with the Review Notes when you submit your app to Apple, explaining that (a) it's not your code doing this, and (b) the false warnings are simply because Everyplay appears to be using methods with the same names as Apple's, and not that you are actually using the Private APIs with those same names. That should be enough to get your app accepted. – Nate Jul 20 '14 at 21:09
  • If you got a response from Apple, please post the results as an answer **below**, and accept that answer so people know this problem has been solved. If you did anything to get the app accepted, please describe it in the answer. Thanks. – Nate Jul 22 '14 at 21:29
  • Apple just approved my game and not commented this problem. – Sergey Zapuhlyak Jul 24 '14 at 07:45
  • **please post the results as an answer below, and accept that answer so people know this problem has been solved.** – Nate Jul 27 '14 at 03:43

1 Answers1

1

Yes, these are from Everyplay. They way we access the Facebook SDK within the game references non-public selectors, but since these are not private Apple API's, there are no issues with doing so aside from the warning you get.

So your app is approved normally and you can ignore the warnings.

TuomasR
  • 2,296
  • 18
  • 28