1.一個(gè)奇葩的注冊(cè)App上傳時(shí)出的蛋疼問(wèn)題
事情是這樣的:一個(gè)風(fēng)和日麗的下午,我正在 itunesConnect 中注冊(cè)一個(gè)APP,基本信息都保存了,在編輯版本信息時(shí),都弄的差不多了,可是沒(méi)有保存,結(jié)果不巧,停電了......,等來(lái)電之后我再次注冊(cè)時(shí):

可是我這里并沒(méi)有顯示出來(lái)啊,而且老板定下的名字也不能改啊,于是我嘗試各種解決辦法:關(guān)閉瀏覽器清理電腦,再次登錄;換臺(tái)電腦再次登錄;重啟電腦,再次登錄。可是還是如此。期間,itunesConnect竟然抽風(fēng)宕機(jī)了

沒(méi)辦法了,我都想著給蘋(píng)果的客服打電話(huà)了,可是第二天早上,登錄賬號(hào)后發(fā)現(xiàn)

它居然出現(xiàn)了,尼瑪,,,蘋(píng)果服務(wù)器出的問(wèn)題。
2. Xcode8上一個(gè)模擬器運(yùn)行時(shí)的報(bào)錯(cuò)。

這是個(gè)不經(jīng)常出現(xiàn)的問(wèn)題,一旦出現(xiàn)模擬器就無(wú)法以Debug的形式,連接調(diào)試了。真機(jī)上可以運(yùn)行。
解決方法:
先New 一個(gè)Scheme。

點(diǎn)擊 Mangage Scheme ,

在這個(gè)界面中刪除舊的 Scheme,選擇使用新創(chuàng)建的 Scheme即可解決。
3. 使用服務(wù)器返回的 NSCFBooL 類(lèi)型的數(shù)據(jù)需要使用方法 boolValue
問(wèn)題是這樣的,使用服務(wù)器返回的一個(gè)bool類(lèi)型的字段,使用時(shí) 直接
if(){}就是這個(gè)值是 YES的意思,可是不管返回的是什么,這個(gè)if 條件都成立。無(wú)法使用。

解決辦法: 需要使用 boolValue 才可以正真?zhèn)骰癁?Bool類(lèi)型。

4. 獲取某一行cell的崩潰性Bug
這是一個(gè)大家一不小心就會(huì)犯的錯(cuò)誤,我也是經(jīng)常躺槍?zhuān)?dāng)時(shí)記住了,事后又忘記出錯(cuò)了。

解決辦法 加上 inSection:0 進(jìn)行 NSIndexPath 的初始化。

5. 一個(gè)自定義彈框,點(diǎn)擊頁(yè)面上任何地方都會(huì)觸發(fā)消失手勢(shì)
~
一個(gè)自定義彈框中有一個(gè)灰色的背景,點(diǎn)擊可以讓整個(gè)彈框都消失,點(diǎn)擊中心的白色編輯區(qū)域,不應(yīng)該消失,可是現(xiàn)在,點(diǎn)擊中心的白色編輯區(qū)域也會(huì)觸發(fā)加在灰色背景上的消失手勢(shì)。
解決方法: 原因是因?yàn)?,白色的區(qū)域 addSubView 在了 灰色背景視圖上,手勢(shì)加在灰色視圖上,因?yàn)榘咨母敢晥D是灰色的視圖,所以點(diǎn)擊白色的區(qū)域也會(huì)觸發(fā)其父視圖的手勢(shì),,,,,只需要把白色視圖不加在 灰色區(qū)域即可,這樣,點(diǎn)擊白色區(qū)域就不會(huì)觸發(fā)灰色背景上的消失手勢(shì)了。
6. 集成海康監(jiān)控SDK 時(shí),導(dǎo)入了系統(tǒng)類(lèi)庫(kù)后還是報(bào)了這么多錯(cuò)誤。真機(jī)、模擬器都報(bào)錯(cuò)。
~

看了一個(gè)問(wèn)題:發(fā)現(xiàn) “std”跟C++語(yǔ)言混編有關(guān),也的確,工程中用到了混編。有.mm文件

解決方法 如下圖設(shè)置即可,這也是很多C++混編都可能出現(xiàn)的問(wèn)題解決方案

XCode 的 Build Setting中 的 C++ Standard Library默認(rèn)選擇了
libc++ (LLVM C++ standard library with C++11 support)選項(xiàng),
這個(gè)表示支持c++11的最新特新,
但是它只支持ios5以上,所以如果要使用這個(gè)選項(xiàng),有兩個(gè)選擇:
第1個(gè)選擇就是 將Deployment Target中 改為5.0以上,一般不會(huì)這樣,因?yàn)槲覀円话阆胫С值膕dk越低越好,盡量支持低版本的ios設(shè)備。
第2個(gè)選擇就是 將這個(gè) C++ Standard Library選項(xiàng)改為 libstdc++ (GNU c++ standard library ),它支持最低到4.3 .
++++++++++++++++++++++++++++++++++++++++++
總結(jié)一句話(huà):將 C++ Standard Library選項(xiàng)改為 libstdc++ (GNU c++ standard library ),即可,Deployment Target 可以支持 4.3 以上的任意版本。
由上面的介紹可知,這次的報(bào)錯(cuò)可能是 ??档腟DK是在iOS5之前開(kāi)發(fā)的,并不支持 ios5以上,
所以需要將這個(gè) C++ Standard Library選項(xiàng)改為 libstdc++ (GNU c++ standard library )以支持更低的版本
7. 網(wǎng)絡(luò)請(qǐng)求回來(lái)數(shù)據(jù)解析后Block回調(diào)布置頁(yè)面很久不顯示
~
#debug斷點(diǎn)調(diào)試的時(shí)候,代碼明明已經(jīng)執(zhí)行了,但是就是要過(guò)很久之后才會(huì)顯示
#猜測(cè)是分線(xiàn)程的問(wèn)題,加上這句通知主線(xiàn)程的語(yǔ)句后,
#即可立即顯示需要布置的UI
dispatch_async(dispatch_get_main_queue(), ^{
xxxxxxxx
});
8.模擬器上顯示圖片,真機(jī)運(yùn)行后卻不顯示
~
這的確是一件蛋疼的事,Clean?,卸載重裝,都還是不顯示......
你可以選擇砸了手機(jī),說(shuō)一句:“WTF,破手機(jī),這手機(jī)有問(wèn)題”
也可以這樣:把那些不顯示的圖片拖到 PS里面,快速導(dǎo)出為 PNG,然后刪除原來(lái)的圖片,導(dǎo)入新生成的圖片,造次Clean,運(yùn)行就會(huì)出現(xiàn)了。
這是因?yàn)槟M器不會(huì)校對(duì)文件格式的正確性,而真機(jī)會(huì),那些不顯示的圖片其實(shí)不是真正的 PNG格式
.
9.APP上傳APPStore 報(bào)錯(cuò) -22421

.
直接Cancel掉,重新Upload一次就行了,如果還不行,等幾分鐘再試一次。
原因就是:蘋(píng)果服務(wù)器那邊繁忙導(dǎo)致的,并不是我們打包的問(wèn)題。
10.一次模擬器運(yùn)行報(bào)錯(cuò)

解決方法: 重置模擬器即可解決。