XCode:第 3 方库使用“uniqueIdentifier";导致苹果拒绝二进制 [英] XCode: 3rd Party Library Uses "uniqueIdentifier" Causing Apple to Reject Binary

查看:33
本文介绍了XCode:第 3 方库使用“uniqueIdentifier";导致苹果拒绝二进制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试验证我的二进制文件以提交到 App Store 时收到以下错误:

I receive the following error when I try and validate my binary file for submission to the App Store:

非公开 API 使用:

"Non-public API usage:

应用不允许访问 UDID,不得使用 UIDevice 的 uniqueIdentifier 方法.请更新您的应用和服务器,以将用户与 iOS 6 中引入的供应商或广告标识符相关联."

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."

我已经确定罪魁祸首在于我正在使用的名为libScannerKit.a"的第 3 方库.我正在调查该库是否已经更新,但有什么方法可以自己更新文件,或者反编译代码并更新,以便我遵守 iOS 二进制文件的 iTunesConnect 规则?下面是在 libScannerKit.a(在文本编辑器中打开)中调用一个点uniqueIdentifier"的示例.

I've determined that the culprit lies in a 3rd party library I am using called, "libScannerKit.a". I am looking into whether the library has since been updated, but is there any way I can update the file myself, or decompile the code and update so that I comply with iTunesConnect rules for iOS binary files? Below is an example of one spot "uniqueIdentifier" is called out in libScannerKit.a (opened in a text editor).

任何帮助将不胜感激!

˘ -[SKDeviceManager canReachInternetUsingWiFi] ˇ -[SKDeviceManager init] ô -[SKDeviceManager dealloc] -[SKDeviceManager isGreaterThanVersion41] -[SKDeviceManager deviceId] É-[SKDeviceManager canReachInternet] -[SKDeviceManager hasAutofocusCameraCapability] ] -[SKDeviceManager canReachInternetUsingCellularNetwork] -[SKDeviceManager apiKey] 3 -[SKDeviceManager hasCamera] ‹ -[SKDeviceManager平台] ˘ -[SKDeviceManager userAgent] ∫ -[SKDeviceManager checkReachabilityIfNeccessary] ß +[SKDeviceManager sharedManager] ~ gDeviceCapabilitiesManager LT objc_object e NSObject SKDeviceManager ÿ NSString @è@ ÄOffffff@,à <.alloc.init.checkReachabilityIfNeccessary.mainBundle.objectForInfoDictionaryKey:.infoDictionary.objectForKey:.sharedManager.apiKey.pathForResource:ofType:.initWithContentsOfFile:.platform.currentDevice.systemVersion.stringWithFormat:.stringByAppendingForm在:.release.uniqueIdentifier.stringWithCString:encoding:.timeIntervalSinceReferenceDate.sharedReachability.internetConnectionStatus.floatValue.length.substringToIndex:.dealloc.canReachInternet.canReachInternetUsingWiFi.canReachInternetUsingCellularNetwork.hasAutofocusCameraCapability4.Id.Agent._lastReachabilityCheckTimestamp _networkStatus \ b g Ö ê ¨ ª ... ◊ fi ˆ % 3 E^ f w ì ≤ ≈ fi È  CFBundleIdentifier CFBundleDisplayName CFBundleVersion ScannerKitInfo plist %@-v%@ %@ %@ iPhoneOSv%@ ScannerKit-v%@ hw.machine canReachInternet Tc,R,N canReachInternetUsingWiFi canReachInternetUsingCellularNetwork hasAutofocusCameraCapability hasCamera apiKey T@"NSString",R,NuserAgent deviceId platform » P » c » w» á » ñ » ú » μSKDeviceManager @8@0:4 c8@0:4 v8@0:4 d i ...(

��˘��-[SKDeviceManager canReachInternetUsingWiFi]�ˇ��-[SKDeviceManager init]�ô��-[SKDeviceManager dealloc]���-[SKDeviceManager isGreaterThanVersion41]�â��-[SKDeviceManager deviceId]�É��-[SKDeviceManager canReachInternet]�Ã��-[SKDeviceManager hasAutofocusCameraCapability]�]��-[SKDeviceManager canReachInternetUsingCellularNetwork]�á��-[SKDeviceManager apiKey]�3��-[SKDeviceManager hasCamera]�‹��-[SKDeviceManager platform]�˘��-[SKDeviceManager userAgent]�∫��-[SKDeviceManager checkReachabilityIfNeccessary]�ß��+[SKDeviceManager sharedManager]�~��gDeviceCapabilitiesManager�����L����������T��objc_object�e��NSObject���SKDeviceManager�ÿ��NSString����������������@è@����ÄOAffffff@,��������������à������������������<����������������������������alloc�init�checkReachabilityIfNeccessary�mainBundle�objectForInfoDictionaryKey:�infoDictionary�objectForKey:�sharedManager�apiKey�pathForResource:ofType:�initWithContentsOfFile:�platform�currentDevice�systemVersion�stringWithFormat:�stringByAppendingFormat:�release�uniqueIdentifier�stringWithCString:encoding:�timeIntervalSinceReferenceDate�sharedReachability�internetConnectionStatus�floatValue�length�substringToIndex:�dealloc�canReachInternet�canReachInternetUsingWiFi�canReachInternetUsingCellularNetwork�hasAutofocusCameraCapability�hasCamera�userAgent�deviceId�isGreaterThanVersion41�_lastReachabilityCheckTimestamp�_networkStatus���\��b��g��Ö��ê��¨��ª��…��◊��fi��ˆ������%��3��E��^��f��w��ì��≤��≈��fi��È��������������CFBundleIdentifier�CFBundleDisplayName�CFBundleVersion�ScannerKitInfo�plist�%@-v%@ %@ %@ iPhoneOSv%@� ScannerKit-v%@�hw.machine�canReachInternet�Tc,R,N�canReachInternetUsingWiFi�canReachInternetUsingCellularNetwork�hasAutofocusCameraCapability�hasCamera�apiKey�T@"NSString",R,N�userAgent�deviceId�platform�����������»��P���������»��c���������»��w���������»��á���������»��ñ���������»��ú���������»��µ�����SKDeviceManager�@8@0:4�c8@0:4�v8@0:4�d�i��������������…���������������������¯��(������������������

推荐答案

不幸的是,在库的作者发布不使用 UDID 的更新之前,我认为最好的办法是尝试找到另一个提供类似功能的库功能并且不使用 UDID(如果可以的话).也许其中提到的库之一:条码阅读器的 iOS 库?

Unfortunately, until the author of the library issues an update that does not use the UDID, I think your best bet is to try to find another library that provides similar functionality and does not use the UDID (if you can). Maybe one of the libraries mentioned at: iOS library for Barcode reader?

这篇关于XCode:第 3 方库使用“uniqueIdentifier";导致苹果拒绝二进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆