android調試經驗
最後更新:2018-07-23
來源:互聯網
上載者:User
1.phone的aidl編譯不通過
android系統 phone 應用匯入到eclipse時,aidl編譯不通過,最後發現原來aidl的import只支援有限的類型,
所以import com.android.internal.telephony.gsm.NetworkInfo編譯不通過,解決辦法是到對應的android的sdk目錄中找到framework.aidl在裡面添加parcelable com.android.internal.telephony.gsm.NetworkInfo,就可以了
2.錯誤資訊:
ActivityManager: Warning: Activity not started, its current task has been brought to the front
錯誤判出的時間:
當以android Application模式(或對應的Debug模式)啟動時,可能報錯
報錯原因:
因為當前我們啟動到模擬器的任務正在被執行。
解決方案:
將模擬器回到最初狀態,然後重新發送到模擬器執行就OK了。
3.當編譯不通過的時候可能的原因是沒有設定Linux的環境變數
4.報錯資訊:
Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
報錯原因:
因為簽名的問題導致的
解決方案:
設定 export TAR_GET_PRODUCT=sprdroid_base
運行 mmm package/apps/Settings(不同的應用不同的路徑)
這樣能產生一個.apk檔案,安裝此apk檔案到目的機上就OK了
5.報錯資訊:Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
報錯原因:因為手機上安裝的應用太多導致手機記憶體不夠使用
解決方案:
刪除手機上的所有安裝的apk檔案
6.報錯資訊:調用findViewById 返回的對象為空白
解決方案:將R.java檔案刪除,並且將項目clean之後重建即可
7.報錯資訊:通過eclipse對終端安裝應用,報錯如下:INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
原因:因為在應用中的簽名不一致導致的問題
解決方案:在伺服器上對應用使用 mmm 具體路徑進行編譯,將編譯出來的apk檔案進行安裝
比如:需要安裝phone這個應用,發現因為簽名的問題安裝出錯
那麼在伺服器上通過mmm package/apps/phone單獨對phone進行編譯,然後安裝編譯後的apk檔案