2 回答

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊
ANR 是應(yīng)用程序無(wú)響應(yīng)的縮寫。Android開(kāi)發(fā)者網(wǎng)站對(duì)調(diào)試這些文章在這里。要理解的關(guān)鍵是,這意味著您的應(yīng)用程序正在執(zhí)行一些在 UI 線程上需要很長(zhǎng)時(shí)間的事情。常見(jiàn)的cuplrit有:
使用網(wǎng)絡(luò)
使用磁盤
一些密集的計(jì)算
訪問(wèn)數(shù)據(jù)庫(kù)
你知道這正在發(fā)生android.app.ActivityThread.performLaunchActivity
。
幸運(yùn)的是,Android 是開(kāi)源的,所以如果你谷歌“android source performLaunchActivity”,你會(huì)發(fā)現(xiàn)源代碼是最重要的結(jié)果。
您可以看到這是啟動(dòng)您的應(yīng)用程序的代碼。因此,您的應(yīng)用程序啟動(dòng)中的某些內(nèi)容運(yùn)行非常緩慢。你可以做很多事情來(lái)調(diào)查這個(gè):
在您的應(yīng)用程序啟動(dòng)中查找訪問(wèn)磁盤、網(wǎng)絡(luò)或數(shù)據(jù)庫(kù)的代碼并將其移動(dòng)到后臺(tái)線程
在嚴(yán)格模式下運(yùn)行您的應(yīng)用程序,這將警告您的不良行為
上面鏈接的文章中有更多提示。

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊
ANR,應(yīng)用程序無(wú)響應(yīng),當(dāng)您的應(yīng)用程序在主線程上做太多工作時(shí)發(fā)生,通常是由于磁盤或網(wǎng)絡(luò) I/O。
試著檢查一下。我想你可以StrictMode
調(diào)試它
添加回答
舉報(bào)