Xcode 錯(cuò)誤、報(bào)錯(cuò)、警告集錦

以前遇到的各種Xcode報(bào)錯(cuò)!都放進(jìn)來(lái)了!以后還有會(huì)繼續(xù)加入!相當(dāng)于一個(gè)記錯(cuò)本!




打包、上架
WARNING ITMS-90076: "Potential Loss of Keychain Access. The previous version of software
has an application-identifier value of ['G3WRS4SYLU.com.MMP.LiLiVaVa'] and the new 
version of software being submitted has an application-identifier of ['3FKGU7B68C.com.MMP.LiLiVaVa']. 
This will result in a loss of keychain access."

??警告的原因:打包上架的應(yīng)用最近從另一個(gè)帳號(hào)轉(zhuǎn)讓到了另一個(gè)帳號(hào),這僅僅是個(gè)警告,并不影響上傳及服務(wù)器編譯。




錯(cuò)誤
[ A ]. 本地化字符串文件不能使用。
  • 【1.】清理建文件夾,刪除里面的一切DerivedData文件夾(位于“/Users/個(gè)人PC用戶名/Library/Developer/Xcode/DerivedData”)路徑下的緩存文件(占很大的內(nèi)存空間),刪除里面的程序,重新啟動(dòng)Xcode,重建工程。
    DerivedData文件夾
  • 【2.】去項(xiàng)目目錄里,手動(dòng)地創(chuàng)建個(gè)“infoplist.strings”的文件,第一次在“en.lproj文件夾和第二次在“fr.lproj文件夾



[ B ]. Apple Mach-O Linker Error

Linker command failed with exit code 1 (use -v to see invocation)

例子??:



原因:重復(fù)引用多個(gè)文件或目錄

導(dǎo)入時(shí),錯(cuò)誤地導(dǎo)入為“.m”文件:




[ C ]. installation failed,Invalid argument

應(yīng)用程序編譯通過(guò),但是運(yùn)行時(shí),出現(xiàn)下面的提示框:“installation failed Invalid argument”


原因
infor.plist文件中的Bundle indentifier置為空了!!

解決
填寫Bundle indentifier就行了!










報(bào)錯(cuò)
[ A ]. 未引入庫(kù)文件( .m文件)


一般是沒(méi)引入相應(yīng)的庫(kù)文件(或“.m文件)。在引入三方庫(kù)的時(shí)候都會(huì)提供“.a文件framework,里面裝的是第三方庫(kù)所提供的對(duì)“.h”文件的實(shí)現(xiàn),只有加進(jìn)去了才能找到“.h”文件里面方法實(shí)現(xiàn)


解決辦法:檢查工程里是否已經(jīng)把對(duì)應(yīng)文件加了進(jìn)來(lái)。
(PROJECT -> TARGETS -> Build Settings -> Compile Sources -> 點(diǎn)“+”,添加“WeiboApi.m”文件)
若是已經(jīng)加了,則在“build phases”底下的“compile sources”中入相應(yīng)的“.m文件,或者在“link binary with libraries”中入相應(yīng)的庫(kù)文件



[ B ]. 一對(duì)象被釋放多次:Thread 1: signal SIGABRT

往往是一個(gè)對(duì)象被釋放了多次(多次釋放)。大多是粗心所致。

有一種情況稱為過(guò)渡釋放,比較隱蔽

 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
 self.myData = [userDefault objectForKey:@"myCollectData"];

這種寫法是錯(cuò)誤的!我們自己并沒(méi)有將內(nèi)存分配給myData。所以 編譯器對(duì)這塊內(nèi)存有控制權(quán),而不是我們自己!
所以,在某個(gè)時(shí)刻,我們不能保證myData是否有效。更不能保證程序到最后 進(jìn)行了“[_myData release];”操作!




根據(jù) “誰(shuí)分配,誰(shuí)管理” 的原則!我改寫成了如下形式:

 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
 NSData * my_data = [userDefault objectForKey:@"myCollectData"];
 self.myData = [NSData alloc] initWithData:my_data];

確保進(jìn)行了初始化!這樣才正確!



[ C ]. 展示名字:manager start failed :

在“info.plist”中必須添加“Bundle display name

在使用百度地圖開(kāi)發(fā)平臺(tái)時(shí),需要直接用“source code”方式,打開(kāi)“info.plist”并添加:

 <key>CFBundleDisplayName</key>
       <string>BaiduDemo</string>

便可以了 !!!
(當(dāng)然DisplayName(展示名字)是 可變的 )



[ D ]. 權(quán)限描述

iOS10點(diǎn)擊有關(guān)權(quán)限訪問(wèn),直接Crash。并在控制臺(tái)輸出了如下一些信息:

 This app has crashed because it attempted to access privacy-sensitive 
 data without a usage description.  The app's Info.plist must contain
 an NSContactsUsageDescription key with a string value explaining to
 the user how the app uses this data.

意思:你需要在“info.plist”文件中,添加一個(gè)“NSContactsUsageDescription”的Key,并為其Value添加一個(gè)描述

步驟:

1,在項(xiàng)目中找到“info.plist”文件,右擊 “Open As”,以“Source Code” 的形式打開(kāi);
2,分別復(fù)制以下ValueKey,Key是一定不能錯(cuò),Value可以隨便填

   // 相機(jī)權(quán)限描述:
   <key>NSCameraUsageDescription</key>   
   <string>cameraDesciption</string>
   // 通信錄:   
   <key>NSContactsUsageDescription</key>    
   <string>contactsDesciption</string>
   // 麥克風(fēng):
   <key>NSMicrophoneUsageDescription</key>    
   <string>microphoneDesciption</string>
   // 相機(jī):
   <key>NSPhotoLibraryUsageDescription</key>    
   <string>photoLibraryDesciption</string>

3,在“info.plist”文件里復(fù)制上,然后保存。并且Clean工程就好了。



[ E ]. PNG圖片格式錯(cuò)誤

打包的時(shí)候,出現(xiàn)這個(gè)警告!
意思是:png圖片文件 失效 (png file invalid;)

重新導(dǎo)入一下png圖片就ok了。但是 要知道“到底是哪張圖片”出問(wèn)題了。



[ F ]. 程序結(jié)束:Message from debugger: Terminated due to signal 9

原因:在調(diào)試的時(shí)候主動(dòng)的結(jié)束了程度。
如:上滑、點(diǎn)擊按鈕等結(jié)束了程序。



[ G ]. AFNetworking請(qǐng)求、接收的格式問(wèn)題

返回數(shù)據(jù)json”標(biāo)準(zhǔn)格式,會(huì)報(bào)如下錯(cuò)誤:

Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object 
and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not 
start with array or object and option to allow fragments not set.}

原因:在默認(rèn)情況下,AFNetworking的網(wǎng)絡(luò)請(qǐng)求都是以json數(shù)據(jù)格式返回?cái)?shù)據(jù)。因此,在客戶端也會(huì)以json為默認(rèn)格式

解決:需在發(fā)送請(qǐng)求前,加入下面代碼:manager.responseSerializer = [AFHTTPResponseSerializer serializer]



[ H ]. 類型沖突:[__NSCFNumber length]: unrecognized selector sent to instance 0x8b3c310’

原因:NSNumber類型與NSString類型有沖突
解決:將所需要相應(yīng)屬性的NSString類型 改為NSNumber類型(將屬性類型設(shè)置為NSNumber), 而在調(diào)用時(shí)在將NSNumber類型 轉(zhuǎn)成 NSString類型即可。



[ I ]. 兩個(gè).m文件:linker command failed with exit code 1 (use -vto see invocation)

原因:導(dǎo)入了“.m”的頭文件,導(dǎo)致同時(shí)有兩個(gè)一樣的“.m文件 在編譯。



[ J ]. Xcode真機(jī)測(cè)試報(bào)錯(cuò):Could not launch...
  • 解決方案一:
    1.刪除“/Users/(用戶名)/Library/Developer/Xcode/DerivedData/(對(duì)應(yīng)APP程序)文件夾”里的內(nèi)容;
    2.拔掉手機(jī),刪除對(duì)應(yīng)的APP應(yīng)用,完全退出 Xcode工具;
    3.重新連接手機(jī)進(jìn)行真機(jī)測(cè)試

  • 解決方案二:
    進(jìn)行過(guò)真機(jī)抓包測(cè)試,關(guān)閉 HTTP代理

  • 解決方案三:
    1.選擇手機(jī)中“設(shè)置” → “通用” → “設(shè)備管理” → 選擇自己對(duì)應(yīng)的開(kāi)發(fā)商應(yīng)用 → “刪除應(yīng)用”;
    2.重新運(yùn)行Xcode中的程序,這個(gè)時(shí)候應(yīng)該還會(huì)報(bào)錯(cuò);
    3.再次進(jìn)入自己對(duì)應(yīng)的開(kāi)發(fā)商應(yīng)用 → “驗(yàn)證應(yīng)用”;
    4.再次運(yùn)行Xcode中的程序就OK了。
    參:《個(gè)人賬號(hào) 真機(jī)測(cè)試



[ K ]. 數(shù)據(jù)修改:Warning! ivar size mismatch in StepUICollectionView_ of 80 bytes - can't change the superclass.

解決:
1.搜索“StepUICollectionView”,找到“.m”文件;
2.搜索“char filler”,在“[ ]”中,將數(shù)據(jù)改為警告提示的數(shù)據(jù)。



[ L ]. Xib連線問(wèn)題

原因:Xib中連線出問(wèn)題



[ M ]. 沒(méi)實(shí)現(xiàn)某方法

原因:某個(gè)對(duì)象沒(méi)有實(shí)現(xiàn)某個(gè)方法



[ N ]. 網(wǎng)絡(luò)代理:nw_proxy_resolver_create_parsed_array
2017-03-15 09:03:51.941774 cuteKids[1155:34545] PAC Fetch failed with error [NSURLErrorDomain:-1004]
2017-03-15 09:03:51.942688 cuteKids[1155:34545] [] nw_proxy_resolver_create_parsed_array PAC evaluation error: NSURLErrorDomain: -1004

原因:mac系統(tǒng) 網(wǎng)絡(luò)代理問(wèn)題。
解決:系統(tǒng)偏好設(shè)置網(wǎng)絡(luò)高級(jí)代理,然后關(guān)閉自動(dòng)代理”就好了。







警告
[ A ]. 字符串格式:Data argument not used by format string

原因:“[ stringWithFormat: ]”里面沒(méi)有idx對(duì)應(yīng)的格式引起的。



解決:修改里面為 相對(duì)應(yīng)的格式





[ B ]. SB的屬性未刪除

Failed to set () user defined inspected property on (UILabel): [<UILabel 0x7febfcf4e7b0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key .

原因:在增加了一些屬性之后,卻在代碼中刪除掉了,但是還是在UIStoryboard中保留

解決:所以需改掉(刪除)相應(yīng)的屬性。





[ C ].鍵盤遮蓋住了textview

報(bào)錯(cuò):

2017-08-11 16:33:33.293831 cuteKids[10465:317797] 0x60800014d7e0 Copy matching assets reply: XPC_TYPE_DICTIONARY  <dictionary: 0x60800014d7e0> { count = 1, transaction: 0, voucher = 0x0, contents =
    "Result" => <int64: 0x60800003e260>: 29
}
 2017-08-11 16:33:33.294494 cuteKids[10465:317797] 0x60800014c8c0 Daemon configuration query reply: XPC_TYPE_DICTIONARY  <dictionary: 0x60800014c8c0> { count = 2, transaction: 0, voucher = 0x0, contents =
    "Dictionary" => <dictionary: 0x60800014c130> { count = 1, transaction: 0, voucher = 0x0, contents =
        "ServerURL" => <dictionary: 0x60800014daa0> { count = 3, transaction: 0, voucher = 0x0, contents =
            "com.apple.CFURL.magic" => <uuid: 0x608000249f30> C3853DCC-9776-4114-B6C1-FD9F51944A6D
            "com.apple.CFURL.string" => <string: 0x60800024bee0> { length = 30, contents = "https://mesu.apple.com/assets/" }
            "com.apple.CFURL.base" => <null: 0x10ac19f20>: null-object
        }
    }
    "Result" => <int64: 0x608000037fe0>: 0
}
 2017-08-11 16:33:33.294780 cuteKids[10465:317797] [MobileAssetError:29] Unable to copy asset information from https://mesu.apple.com/assets/ for asset type com.apple.MobileAsset.TextInput.SpellChecker


原因:由于鍵盤會(huì)遮蓋住textview,所以需要實(shí)現(xiàn)鍵盤彈出修改scrollview的位置。


解決:

_mytextView.autocorrectionType = UITextAutocorrectionTypeNo; //??必須添加??
_mytextView.spellCheckingType = UITextSpellCheckingTypeNo;




[ D ].未添加協(xié)議:UITextFieldDelegate

警告:Assigning to 'id<UITextFieldDelegate> _Nullable' from incompatible type '某個(gè)ViewController *const __strong'



原因:提示分配給"UITextFieldDelegate"是類型有誤的!

解決:添加<UITextFieldDelegate>協(xié)議




[ E ].CFNetwork internal error

警告:(控制臺(tái)警告信息)
440: CFNetwork internal error (0xc01a:/BuildRoot/Library/Caches/com.apple.xbs/Sources/CFNetwork/CFNetwork-758.4.3/Loading/URLConnectionLoader.cpp:289)



解決:修改“info.plist”文件的“NSExceptionDomains”項(xiàng)!

NSExceptionAllowInsecureHTTPLoads : YES

NSExceptionRequiresForwardSecrecy : NO
NSIncludesSubdomains : YES


Source Code”格式:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSExceptionAllowInsecureHTTPLoads</key>
    <true/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>192.168.3.106</key>     <!-- 域地址 -->
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSIncludesSubdomains</key>
            <true/>
        </dict>
    </dict>
</dict>












更多文章 (參考\總結(jié))

iOS警告收錄及科學(xué)快速的消除方法
iOS工程的警告修復(fù)














goyohol's essay

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,117評(píng)論 6 537
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,860評(píng)論 3 423
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 177,128評(píng)論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,291評(píng)論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,025評(píng)論 6 410
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,421評(píng)論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,477評(píng)論 3 444
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,642評(píng)論 0 289
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,177評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,970評(píng)論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,157評(píng)論 1 371
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,717評(píng)論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,410評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,821評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,053評(píng)論 1 289
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,896評(píng)論 3 395
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,157評(píng)論 2 375