Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Binary rejected because of Non-public API usage (google analytic iOSv2)

I recently had an app rejected because of reason - Non-public API usage: Apps are not permitted to access the UDID and must not use the uniqueIdentifier method of UIDevice. Please update your apps and servers to associate users with the Vendor or Advertising identifiers introduced in iOS 6.

I have used google analytics iOS v2 in this app, is it causing this problem?

like image 899
Richa Avatar asked Jan 13 '23 10:01

Richa


2 Answers

My app was rejected due to the new UDID polices too. In my case, I'm using AdMob and the steps to fix this problem was:

  • Update AdMob to the latest version (Google warned me that my app would be rejected if I would try to submit it after 1st May).

  • Go to Xcode > Organizer > Projects > YourProject > Delete (Derived Data).

  • Product > Clean.

After these steps I submitted my app and now is Waiting to Review (before these steps Apple rejected my app at the moment after Upload Received).

Hope it helps!

like image 133
jjordan Avatar answered Jan 21 '23 15:01

jjordan


And, another thing, if in your code you are using

[UIDevice currentDevice].uniqueIdentifier;

you must chenge to

// Get UUID value
NSUUID  *uuid = [NSUUID UUID];

// Convert UUID to string and output result
NSLog(@"UUID: %@", [uuid UUIDString]);

The output looks something like this:

UUID: A84AFC3C-B3A7-31C7-B3E9-234AF423C6B1
like image 43
cesarak Avatar answered Jan 21 '23 17:01

cesarak