Invalid Application Binary [closed]

两盒软妹~` 提交于 2019-12-12 02:34:40

问题


Today we received a feedback about our submission and we do not understand the reported problem: "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.".

We know about the rejections about udid, but our App do not use this! After read this, our team reevaluated the App and we do not found occurrences from "UIDevice uniqueIdentifier". We also revised all used libraries and really we do not find any call from UDID.

Someone have ideas?

After research, I executed "greap" command:

my-app-directory $ grep -Rnis 'uniqueIdentifier' * Binary file John.xcodeproj/project.xcworkspace/xcuserdata/franz.xcuserdatad/UserInterfaceState.xcuserstate matches

Binary file John.xcodeproj/project.xcworkspace/xcuserdata/mahendra.xcuserdatad/UserInterfaceState.xcuserstate matches

Binary file John.xcodeproj/project.xcworkspace/xcuserdata/pareshrathod.xcuserdatad/UserInterfaceState.xcuserstate matches

Binary file John.xcodeproj/project.xcworkspace/xcuserdata/User.xcuserdatad/UserInterfaceState.xcuserstate matches

How to i solve above issues?

by John


回答1:


You should remove any usage of UDIDs. Apple started rejecting apps using this as of May 1, 2013.

Using Identifiers in Your Apps

Starting May 1, the App Store will no longer accept new apps or app updates that access UDIDs. Please update your apps and servers to associate users with the Vendor or Advertising identifiers introduced in iOS 6. You can find more details in the UIDevice Class Reference.

Source: https://developer.apple.com/news/

Although I've not independently confirmed it, I believe this is what you should use:

NSUUID *uuid = [[UIDevice currentDevice] identifierForVendor];
NSString *uuidString = [uuid UUIDString];



回答2:


According to New Review Guideline by Apple, Its not permitted or Banned to use UDID of your Device for any kind of Identification or any other purpose in your Application. Apple found after a long time that UDID is also used to crack some of the Data hack of users and variety of other hacks, as they realize it immediately they Restricted the use of UDID in any of the applications.

So i advice you to remove any snipped or code from your application which used UDID, search following line of code in your application

[[UIDevice currentDevice] uniqueIdentifier]

if you find it, just replace it with other unique identifier or some other business logic and create a fresh binary with that and upload it. it will be through the review process.

you can find more news and updates of IOS apps here and about usage of UDID here



来源:https://stackoverflow.com/questions/16468310/invalid-binary-replied-from-apple

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!