【Unity】2021接Bugly踩坑記錄


寫在前面

  因為在工作項目中用到Bugly,所以我在自己的測試工程中嘗試接入Bugly,卻沒有成功,明明一切是按照說明書操作,為什么會不成功?當時在網上找了很久的資料,最后試成功了,這里把當時遇到的問題和解決辦法記錄下來。

踩坑記錄

環境

  • Unity 2017.4.39f1
  • Bugly 1.5.3(Unity插件版)

記錄

  我在官網上看到Unity插件版的Bugly更新時間停留在了2017年,而Android版的更新時間則是最近,馬上感覺有點不妙。果然在測試項目上接入完畢、出apk、運行后,沒有看到錯誤上報。明明一切是按照說明書操作,為什么會不成功?以下是我的種種嘗試:

【嘗試1】

  我剛開始認為可能是網絡原因,可能再等半小時就能看到錯誤上報了:結果不是,我等了超過半小時甚至一天都沒看到錯誤上報。

【嘗試2】

  我在官網的“Unity Plugin 常見問題”下看到可能是Application.RegisterLogCallback(...)被注冊了的情況,當時測試項目中還裝有UnityLogsViewer(方便手機上看Unity日志的插件),UnityLogsViewer已經注冊了Application.RegisterLogCallback(...):結果不是,根本沒有用到UnityLogsViewer,所以Application.RegisterLogCallback(...)肯定沒有被注冊。

【嘗試3】

  可能是Bugly的版本問題,因為項目工程用的是1.4.3版本能正常上報錯誤:結果不是,我在測試項目上將Bugly換成1.4.3版本后依然沒看到錯誤上報。

【嘗試4】

  測試項目自身有問題:我的測試項目非常簡單,新建的工程,只有為了測Bugly的場景和對應代碼。雖然沒看出我的測試項目問題出在哪,我就用Bugly帶的示例工程出apk看能否正常錯誤上報,結果也不能。

【嘗試5】

  以上的嘗試都沒成功,那可能就是sdk的問題,可能是Bugly的sdk有問題,可能是安卓的sdk有問題:在查找資料的工程中,我看到有博客提到了G站已經有人寫了工具BuglyEasyToUnity,可以直接用。不過因為我的Unity是2017版的,而BuglyEasyToUnity的示例用的Unity是2019版,所以我不確定是否要用這個工具。而且我此時更想知道到底是哪里出了問題,所以暫時將它作為參考,對比Bugly官網說明,看看工具作者到底是做了什么不一樣的事情。因為我只看安卓,工具作者Jim202020在這里做了兩件Bugly官網說明沒提到的事情:①在UnityPlayerActivity.java里初始化CrashReport;②開啟明文流量的網絡請求。

  我后知后覺想到為什么我沒用logcat看安卓的日志……接下來是有了安卓日志下的嘗試。

  如果沒有在UnityPlayerActivity.java里初始化CrashReport,安卓的日志上都不會出現Bugly這個單詞。加了以后,能在安卓日志中看到Bugly相關信息,但還不能正常上報錯誤。此時安卓日志中有條異常(如下圖),這條異常就是指說明文流量的網絡請求沒開啟。我開啟后,能正常上報錯誤。

   這里,因為能看到Bugly正常上報錯誤,所以我的嘗試就告一段落了,但我的同事在他的測試項目上接入Bugly時還遇到了sdk的其他問題,他的Unity是2019版本的。BuglyEasyToUnity很可能已經解決了這些麻煩,因為我看到作者提到了更新sdk。

  總之,還是使用現成工具BuglyEasyToUnity避開麻煩吧。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM