顯示具有 Crashlytics 標籤的文章。 顯示所有文章
顯示具有 Crashlytics 標籤的文章。 顯示所有文章

[Crashlytics] Warning: NSUncaughtExceptionHandler is 'uncaughtExceptionHandler' in another library

最近自行製作蒐集log/crash的library,想當然爾一定會override uncaughtExceptionHandler如下
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
void uncaughtExceptionHandler(NSException *exception) {
}

要停止報warning就只能二擇一,停用自製library或Crashlytics
不然就是繼續置之不理反正只是warning,但是否會有不可預期的狀況就難講了@_@

[iOS]Crashlytics管理與發佈

1.Fabric的管理介面
申請安裝完畢後,除了Fabric.app管理小工具,最即時的crash report就要登入fabric提供的網站查看https://fabric.io/home

到fabric網站針對你管理的每個app去查看report


fabric.app很貼心(雞婆)每次Archive後會問你要不要自行發布測試版本給你的開發者


2.發送測試邀請
        

當測試人員收到email並接受邀請後,管理者回到fabric.app查看,可能會有如下的黃色warning

解決方式是管理者會收到一封來自fabric的信,裡面附有一個包含測試者手機UDID的附檔,請將這個附檔交付給團隊中負責管理上架的人員,至Apple Developer將此UUID加到Devices,並綁定到被測試App的Provisioning Profile




上架負責人幫你處理完畢後,請務必記得重新下載Provisioning Profile重包一版,再透過fabric.app發布測試通知給測試人員,這樣對方才能成功安裝!
對方成功安裝後,管理者再回頭查看fabric.app就不會再看到黃色warning了^^


3.查看crash report



PS: 如果測試者有安裝套用Crashlytics前的版本(例如Apple Store版),一定要先移除才行,不然會安裝失敗。
PS:產生crash後,基本上最慢幾分鐘就能在fabric網站看到(管理者會馬上收到mail通知),如果一直沒有crash資料進來,要請用戶再開一次app,因為crash report是在crash之後,再開一次app才會真正傳送上去 !

申請安裝Crashlytics

Crashlytics真的做得非常好,還沒真的導入到專案,就在安裝過程中感受到Twitter的誠意,無論是安裝流程或是後來的使用方式,真的是連笨蛋都會用XD

但還是紀錄一下吧,網路上目前的文章都有點舊了呢
安裝時間:2016年5月
安裝環境:Xcode 7.3

1.前往登入頁,申請使用Crashlytics


2.收到驗證信並開通
驗證信基本上幾分鐘內會收到(我是一提出申請馬上收到)
開通並輸入團隊名稱(方便管理專案)




3.開通成功,開始下載對應IDE的安裝檔




4.打開fabric.app並登入


5.選擇要導入的專案


6.選擇要安裝的SDK
這邊我先選Crashlytics而已


7.選擇安裝加載的方式(CocoaPods或Framework)
選完後會自動幫你把Xcode打開,我選CocoaPods,所以右圖是如何修改Podfile的指示


8.依照說明安裝
修改Podfile並update



9.將Fabric整合到Xcode(Add Run Script)
實際Add Run Script的步驟可參考官網步驟




10.開始寫code,讓Crashlytics可以在app中執行
按照指令將藍色highlight處貼到專案的AppDelegate.m


11.Done
給他一點時間跑,就完成啦!


真的很簡單呢!只要跟著第3步驟中安裝好的fabric.app,一步一步完成他所指示的所有事項,就能導入Crashlytics  ^_^
PS:登入過程中如果遭遇錯誤,可能是你的公司網路環境有阻擋,請暫時先改用其他網路環境安裝嚕