Binary rejected because of Non-public API usage (g

2019-04-10 11:08发布

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?

6条回答
Evening l夕情丶
2楼-- · 2019-04-10 11:43

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
查看更多
Ridiculous、
3楼-- · 2019-04-10 11:44

You need to replace

[[UIDevice currentDevice] uniqueIdentifier] 

with other method. please refer this url it's working for me.

查看更多
ゆ 、 Hurt°
4楼-- · 2019-04-10 11:47

I had the same problem... I removed the library that was giving the problem, in my case adMob library. But pay attention to check even inside the folder you do not have any more the old library, that was my problem. Good luck

查看更多
仙女界的扛把子
5楼-- · 2019-04-10 11:53

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!

查看更多
Animai°情兽
6楼-- · 2019-04-10 11:54

To find out what's using the method in question, use terminal and cd to the project's root directory and run the following command;

find . | grep -v .svn | grep "\.a" | grep -v "\.app" | xargs grep uniqueIdentifier

This will then tell you what's using it. Update and or remove your code and or any libraries that's using it.

查看更多
狗以群分
7楼-- · 2019-04-10 11:59

For Google Analytics SDK 2.0b4 and UDID reference, just remove libGoogleAnalytics_debug.a entirely from project, clean, recompile and submit again.

查看更多
登录 后发表回答