Xcode顯示上傳成功了,但開發(fā)者賬號中沒有構(gòu)建版本的 “?”
這種現(xiàn)象俗稱吃包,此時(shí)注冊的開發(fā)者賬號時(shí)的郵箱一定有郵件,先去郵箱查看郵件,蘋果發(fā)來的郵件一般有不能構(gòu)建版本的原因,比如:使用了UIWebView、對權(quán)限調(diào)用時(shí)Info.plist的使用權(quán)限說明問題等等
1、因使用UIWebView被拒絕
郵件提示如下:
使用UIWebView后郵件.png
Apple官方提示2020年6月棄用UIWebView,取而代之的是WKWebView;
此時(shí)要求工程中不能有UIWebView的使用,包括三方庫;
如果使用了UIWebView解決辦法如下:
1.1、全局搜索UIWebView,將自己使用的UIWebView用WKWebView替換
1.2、三方庫使用的了UIWebView,此過程比較繁瑣一些:
1.2.1、一般還在更新的三方庫(如:AFNetWorking)這些還有人在維護(hù),只需升級版本即可
1.2.2、一些三方庫不再更新,但使用了UIWebView,可嘗試在不影響其功能的前提下,將其中包含UIWebView的代碼刪除
(如:ZBarSDk我就是這么操作的,因?yàn)槲揖褪褂闷鋻邨l形碼功能);
謹(jǐn)記:此做法有風(fēng)險(xiǎn),刪除后一定再次測試;最好做法找其他庫代替
從2020年4月開始,蘋果將停止接受使用UIWebView API的應(yīng)用。
解決方式
1.手動(dòng)拖入AFNetWorking的同學(xué),需要手動(dòng)刪除UIWebView,這里不做講解。
2.使用pod導(dǎo)入AFNetWorking的同學(xué),需要在Podfile文件中做出如下修改,然后重新在終端執(zhí)行pod install。
// 在之前的基礎(chǔ)上,加上這句代碼。
// :subspecs => ['Reachability', 'Serialization', 'Security', 'NSURLSession']
pod 'AFNetworking', '~> 3.2.1', :subspecs => ['Reachability', 'Serialization', 'Security', 'NSURLSession']
補(bǔ)充說明
1.以上操作結(jié)束后,項(xiàng)目會報(bào)找不到AFNetWorking文件名的錯(cuò)。
2.使用 #import <AFNetworking/AFHTTPSessionManager.h> 代替 #import "AFNetworking.h"可以解決這個(gè)問題。
2、因使用系統(tǒng)權(quán)限描述被拒
郵件提示如下:
因使用了藍(lán)牙權(quán)限后的郵件.png
iOS10 要求info里面添加對權(quán)限的文字描述,用了那些系統(tǒng)權(quán)限一定要說明為什么使用,要不然也會導(dǎo)致不能構(gòu)建版本;以下是部分系統(tǒng)權(quán)限描述:
<key>NSPhotoLibraryUsageDescription</key>
<string>App需要您的同意,才能訪問相冊</string>
<key>NSCameraUsageDescription</key>
<string>App需要您的同意,才能訪問相機(jī)</string>
<key>NSMicrophoneUsageDescription</key>
<string>App需要您的同意,才能訪問麥克風(fēng)>
<key>NSLocationUsageDescription</key>
<string>App需要您的同意,才能訪問位置</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>App需要您的同意,才能在使用期間訪問位置</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>App需要您的同意,才能始終訪問位置</string>
<key>NSCalendarsUsageDescription</key>
<string>App需要您的同意,才能訪問日歷</string>
<key>NSRemindersUsageDescription</key>
<string>App需要您的同意,才能訪問提醒事項(xiàng)</string>
<key>NSMotionUsageDescription</key>
<string>App需要您的同意,才能訪問運(yùn)動(dòng)與健身</string>
<key>NSHealthUpdateUsageDescription</key>
<string>App需要您的同意,才能訪問健康更新</string>
<key>NSHealthShareUsageDescription</key>
<string>App需要您的同意,才能訪問健康分享</string>
<key>NSBluetoothPeripheralUsageDescription</key>
<string>App需要您的同意,才能訪問藍(lán)牙</string>
<key>NSAppleMusicUsageDescription</key>
<string>App需要您的同意,才能訪問媒體資料庫</string>