華山論劍之iOS錯誤日志

日志來源


前兩個月一直在做項目,在項目遇到過不少以前沒有遇到過的錯誤日志,這里就整理出來,分享一下那些年我掉進(jìn)去的坑.

全部日志


this class is not key value coding-compliant for the key XXX錯誤

" this class is not key value coding-compliant for the key digitPressed.' "的錯誤若治,經(jīng)過一番搜索和排查發(fā)現(xiàn)是自己在設(shè)置IBAction和IBOutlet時有多余的連線,按下ctrl鍵檢查控件的連接將多余的連續(xù)刪除后程序正常運行端幼。



Unable to add App ID because the '10' App ID limit in '7' days has been exceeded.

字面意思是7天內(nèi)不能增加10個以上appid

我們都知道Xcode7增加了自動生成iOS免費調(diào)試證書的功能,但是問題在于每次調(diào)試不同的iOS工程静暂,不同的bundle id谱秽,都會占用一個appid洽蛀,profile文件和證書文件疟赊,這就造成了郊供,資源冗余近哟,并且蘋果沒有提供管理這些證書驮审,appid的管理面板.

錯誤原因:
  • 最大的可能就是吉执,蘋果的新規(guī)則,7天之內(nèi)不能創(chuàng)建超過10個appid

  • 蘋果出問題了 鎖定了大部分正常的開發(fā)者賬號

  • 換 bundle ID 造成的

  • 自動fix證書造成的戳玫。。建議手動生成證書下載安裝

解決方案
  • 如果都是新工程咕宿,使用一個固定的并且之前可以正常調(diào)試的bundle id,比如我的所有新建工程都是用的是org.skyfox.test

  • 如果之前能調(diào)試換過bundle id不能調(diào)試,換回原有的bundle id即可

  • 等7天再試币绩。。雖然時間很長

  • 致電蘋果詢問情況

建議
  • iOS開發(fā)者進(jìn)行Xcode7真機調(diào)試的時候缆镣,使用固定的bundle id進(jìn)行調(diào)試,比如我一直在使用org.skyfox.test進(jìn)行調(diào)試董瞻,也是對那些生成亂七八糟證書,profile文件的一個技巧



7.3模擬器第一次啟動出現(xiàn)的問題
解決方案: xcode7.3,每次開機第一次必定遇到這個情況,在運行就正常了,



reason: '-[__NSCFNumber length]: unrecognized selector sent to instance 0x8b3c310’
這個問題的原因是因為解析json數(shù)據(jù)時候把整形當(dāng)成字符型存儲到model中取出來用的時候,直接會崩潰.



***** Terminating app due to uncaught exception ‘NSGenericException’, reason: ‘*** Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.’**
這個問題的原因是因為我們一邊遍歷數(shù)組一邊對數(shù)組中的元素進(jìn)行修改.導(dǎo)致的崩潰



問題緣由:DTAssetProviderService could not start DTXConnection with Simulator 'iPhone 6s Plus'. Check the system log for errors
圖片說明
解決方案: 重啟模擬器睬澡,重啟Xcode,重啟mac機器



錯誤日志:'Supported orientations has no common orientation with the application, and [UIAlertController shouldAutorotate] is returning YES'
圖片:
解決方案: 查看一下,項目是否支持,設(shè)置的方向,就可以解決了
解決方案示意.png



錯誤日志: -[__NSCFNumber rangeOfCharacterFromSet:]: unrecognized selector sent to instance
錯誤日志
問題分析及解決方案: 這個是由于傳的參數(shù)類型不對所導(dǎo)致煞聪,這里其實是要傳NSString類型逝慧,而其實返回的是NSArray類型昔脯,這個錯誤不會立即出發(fā)笛臣,而是過一段時間再出發(fā)云稚,所以不好定位沈堡。
[cell setColumnTitle:[homeData objectAtIndex:row]];



錯誤日志:'-[__NSArrayM objectForKeyedSubscript:]: unrecognized selector sent to instance 0x7fd0195d53d0'
錯誤日志
問題分析及解決方案:這個是因為你在做解析的過程當(dāng)中,你寫的代碼認(rèn)為 JSON 反序列化到對象 (詞典),但事實上它進(jìn)行反序列化到一個包含一個對象的數(shù)組诞丽。如下
   NSMutableArray *topLevelArray = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];    
 
    NSDictionary *dict = topLevelArray[0];

如果您想要檢查你的什么,你可以使用 *isKindOfClass: *像這樣:
id jso = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
if (jso == nil) {
    // Error.  You should probably have passed an NSError ** as the error
    // argument so you could log it.
} else if ([jso isKindOfClass:[NSArray class]]) {
    NSArray *array = jso;
    // process array elements
} else if ([jso isKindOfClass:[NSDictionary class]]) {
    NSDictionary *dict = jso;
    // process dictionary elements
} else {
    // Shouldn't happen unless you use the NSJSONReadingAllowFragments flag.
}



錯誤日志:'-[__NSCFConstantString countByEnumeratingWithState:objects:count:]: unrecognized selector sent to instance 0x108e14470'
錯誤日志
問題分析及解決方案:一個空指針(null僧免,或者在OC里是NSNull)發(fā)送了countByEnumeratingWithState:objects:count:;所以解決方法,判斷一下拿到的對象是不是NSNull類懂衩,如果是的話走另一套處理流程吧。



錯誤:The operation couldn’t be completed. (LaunchServicesError error 0.)
圖片
解決辦法:
  • 第1種方法.點擊當(dāng)前的模擬器浊洞,點擊IOS Simulator->Reset Content and Settings...->Reset,然后會重置模擬器沛申,再編譯代碼可登錄模擬器成功
  • 第2種方法.點擊Xcode->Product->Clean
  • 第3種方法.將模擬器上的當(dāng)前運行的app刪除劣领,再重新加載(長按模擬器的屏幕铁材,點擊當(dāng)前報錯的app 刪除)
  • 第4種方法.在info.plist文件中修改bundle的版本號我遇到的問題是上述幾種方法只能暫時解決奕锌,當(dāng)我一修改代碼時,又重新報錯村生,然后我把我項目里的那個Resources(就是存儲圖片的那個包)給刪除了,然后重新建分組趁桃,但是資源包的名字不叫Resources,然后重新clean,結(jié)果問題解決了,我想原因可能是我的Resources與Xcode里沖突了卫病,然后Xcode不能打包app到模擬器上吧



webView錯誤日志打印:Error Domain=WebKitErrorDomain Code=101 "(null)"
問題原因:因為URL不能有中文,符號,以及音標(biāo)
解決方法 :用UFT8進(jìn)行一下轉(zhuǎn)碼就好
urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  



xCode出現(xiàn) The operation couldn't be completed.(LaunchServicesError error 0.)錯誤修復(fù)
問題的出現(xiàn)

今天在利用XCode開發(fā)蘋果APP時想使用腳本來存儲一些語言文字信息,在完成環(huán)境配置和搭建以后調(diào)用Lua腳本成功蟀苛。但是該Lua腳本把所有的內(nèi)容都包含在一起益咬,不太符合文件獨立的要求帜平,就把文件拆成了兩部分幽告,通過include之類的Lua關(guān)鍵字進(jìn)行關(guān)聯(lián)裆甩。調(diào)整完畢以后運行調(diào)試,出現(xiàn)了Lua引擎無法搜索到被包含的腳本的錯誤嗤栓,于是就開始折騰了冻河,一會用相對包含關(guān)系包含文件茉帅,一會又用文件引用方式使用文件芋绸,最終問題沒有得到解決但是出了一個新問題

對比了工程版本修改記錄也沒發(fā)現(xiàn)問題原因担敌,求助了萬能的百度(吐啊吐啊~~~)廷蓉,結(jié)果沒有找到答案全封。百無聊賴之下運行了下Clean然后在Build下桃犬,問題奇跡般的消失了I层病T芟尽土匀!OMG形用!

分析原因

回憶了自己折騰時的步驟就轧,基本定位在資源文件加載方式變化上引起該問題,導(dǎo)致編譯的緩存數(shù)據(jù)中含有殘留的無效數(shù)據(jù)妒御。重新編譯以后清空了錯誤數(shù)據(jù)解愤,使得程序能夠正常跑起來了乎莉。



invalid nib registered for identifier ((null)) - nib must contain exactly one top level object which must be a UITableViewCell instance

大致意思就是 這個nib的注冊不合法, 這個nib必須只保含一個 object 并且是UITableViewCell 的實例,也就說你創(chuàng)建的cell的xib文件中有可能不單單只有cell,可能不小心拖了一個控件到xib上,都會出現(xiàn)問題,問題解決辦法就是把多余的控件刪除就好了.


結(jié)束


兩月三項目,基本所有的奇葩問題都在這了, 今天就說到這了,謝謝查看.
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末惋啃,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子边灭,更是在濱河造成了極大的恐慌异希,老刑警劉巖存筏,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異椭坚,居然都是意外死亡予跌,警方通過查閱死者的電腦和手機善茎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來垂涯,“玉大人烁焙,你說我怎么就攤上這事耕赘〗居” “怎么了操骡?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵九火,是天一觀的道長册招。 經(jīng)常有香客問我岔激,道長是掰,這世上最難降的妖魔是什么虑鼎? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮炫彩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘媒楼。我一直安慰自己,他們只是感情好划址,可當(dāng)我...
    茶點故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著夺颤,像睡著了一般痢缎。 火紅的嫁衣襯著肌膚如雪世澜。 梳的紋絲不亂的頭發(fā)上独旷,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天寥裂,我揣著相機與錄音嵌洼,去河邊找鬼封恰。 笑死麻养,一個胖子當(dāng)著我的面吹牛诺舔,可吹牛的內(nèi)容都是我干的鳖昌。 我是一名探鬼主播低飒,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼许昨,長吁一口氣:“原來是場噩夢啊……” “哼褥赊!你這毒婦竟也來了糕档?” 一聲冷哼從身側(cè)響起拌喉,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎司光,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體残家,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年坞淮,在試婚紗的時候發(fā)現(xiàn)自己被綠了茴晋。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片回窘。...
    茶點故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡诺擅,死狀恐怖啡直,靈堂內(nèi)的尸體忽然破棺而出烁涌,到底是詐尸還是另有隱情酒觅,我是刑警寧澤撮执,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布舷丹,位于F島的核電站抒钱,受9級特大地震影響颜凯,放射性物質(zhì)發(fā)生泄漏谋币。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一蕾额、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧凡简,春花似錦、人聲如沸精肃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至习柠,卻和暖如春匀谣,著一層夾襖步出監(jiān)牢的瞬間资溃,已是汗流浹背武翎。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工溶锭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留宝恶,地道東北人。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓垫毙,卻偏偏與公主長得像霹疫,于是被迫代替她去往敵國和親综芥。 傳聞我的和親對象是個殘疾皇子丽蝎,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,697評論 2 351