2014-10-29 56 views
4

當我想以編程方式報告Crashlytics上的non-fatal error時,我正在使用Crashlytics.logException()方法。如何在報告非致命錯誤時添加用戶名?

儘管我在應用程序啓動時爲當前登錄的用戶設置了一個有效的標識符,但Crashlytics.setUserName()在儀表板中看不到此信息。相反,它只有在發生崩潰時纔會出現(見圖片)。

enter image description here

如何啓用它的非致命錯誤嗎?

編輯:我使用Crashlytics的Eclipse插件,1.7.0

+0

http://stackoverflow.com/a/38231199/2528850 – RealNmae 2017-04-26 12:57:42

回答

4

我只是通過更新Crashlytics庫來解決這個問題。

我仍然有1.7.0版本,沒有Fabric。我升級了帳戶,並使用the new guide下載了新的2.0軟件包,現在我可以在所有非致命錯誤中看到用戶的信息。

+0

很高興你找到了一種使事情順利進行的方法。 – Cipriani 2014-11-05 11:50:38

4

的用戶名信息將在非致命事故出現太大。您能否請檢查Crashlytics.setUsername()的電話是否在Crashlytics.logException()之前完成?

見下圖:

screenshot

然而,消息記錄目前不同步,因此,如果碰撞發生很快,所有或者沒有使用這些語句可以使它結束了。數據的寫入是在後臺線程中完成的,所以正在處理的崩潰總是會超過另一個線程,所以在這種情況下,即使寫入日誌可能已經啓動。

+0

我在啓動時初始化用戶後立即調用'setUserName()'。很明顯,'logException()'可能會在後來出乎意料地被調用,但我認爲Crashlytics並沒有忘記關於用戶的信息。 – TheUnexpected 2014-10-29 13:59:43

+0

感謝您指出這一點,我編輯瞭解釋的答案 – Cipriani 2014-10-29 17:06:24

+0

謝謝,但這並不能解釋我的問題的原因,因爲'setUserName()'和'logException()'的調用可能會通過,例如, 2分鐘。這當然是合理的時間......但報告中的信息仍然不存在! – TheUnexpected 2014-10-29 18:59:14