今天,我们收到了有关提交内容的反馈,但我们无法理解所报告的问题:“应用程序不允许访问UDID,并且不得使用UIDevice的uniqueIdentifier方法。请更新您的应用程序和服务器,以将用户与供应商或广告相关联iOS 6中引入的标识符。”。我们知道有关udid的拒绝,但我们的应用程序不使用此功能!阅读此内容后,我们的团队重新评估了该应用程序,但未从“ UIDevice uniqueIdentifier”中发现任何事件。我们还修订了所有使用的库,实际上我们找不到来自UDID的任何调用。有人有主意吗?经过研究,我执行了“ greap”命令,并且怀疑FacebookSDK:my-app-directory $ grep -Rnis 'uniqueIdentifier' *Binary file MyApp/FacebookSDK.framework/FacebookSDK matchesBinary file MyApp/FacebookSDK.framework/Versions/A/FacebookSDK matchesBinary file MyApp/FacebookSDK.framework/Versions/Current/FacebookSDK matchesBinary file MyApp/MyApp.xcodeproj/project.xcworkspace/xcuserdata/myuser.xcuserdatad/UserInterfaceState.xcuserstate matchesFacebookSDK使用uniqueIdentifier?分辨率是多少?
3 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
就我而言,它是ibGoogleAnalytics_debug.a库。
要查找使用uniqueidentifier方法的库,请转到您的项目文件夹并输入:
$ find . | grep -v .svn | grep "\.a" | grep -v "\.app" | xargs grep uniqueIdentifier
我得到了:二进制文件./My_Project/libGoogleAnalytics_debug.a匹配
料青山看我应如是
TA贡献1772条经验 获得超8个赞
解决了这个问题:问题是您的项目仍引用旧的SDK,并且使用旧的sdk方法(包括苹果拒绝的UDID)编译代码。
在SEARCH PATH Framework搜索路径库搜索路径的构建属性中修复它
删除不必要的值,例如旧的sdk路径,并将当前的sdk路径放在此处
清理所有项目的文件:窗口->组织者->项目-删除项目产品->清理
现在重建它,然后重新提交给苹果。
请享用 :)
牛魔王的故事
TA贡献1830条经验 获得超3个赞
检查您使用strings命令生成的二进制文件,并查找uniqueIdentifier:
$ strings YOUR_BINARY | grep uniqueIdentifier
您很可能会在那找到它。
我发现OpenSSL uniqueIdentifier在其标头中声明了一个字符串,因此您的应用程序(或您随应用程序提供的任何静态库)可能包含了它。
就我而言,罪魁祸首是libspotify。
- 3 回答
- 0 关注
- 640 浏览
添加回答
举报
0/150
提交
取消