安卓的anr是什麼
發布時間: 2023-09-10 19:20:23
1. android中anr異常是什麼意思
ANR (「Application Not Responding」),意思是」應用沒有響應「。
在如下情況下,Android會報出ANR錯誤:
1.主線程 (「事件處理線程」 / 「UI線程」) 在5秒內沒有響應輸入事件。
2.BroadcastReceiver 沒有在10秒內完成返回。
通常情況下,下面這些做法會導致ANR:
1、在主線程內進行網路操作。
2、在主線程內進行一些緩慢的磁碟操作(例如執行沒有優化過的SQL查詢)。
應用應該在5秒或者10秒內響應,邏輯應該是:
1. new出一個新的線程,進行數據請求。
2. 獲取數據後,調用handler.sendMessage方法。
3. 在handler的handle()方法中更新UI。
2. 安卓anr和crash的區別
CRASH是程序崩潰的意思,ANR是經態腔常遇到的CRASH報錯咐閉山,ANR就是衡中內存溢出,比如圖片載入過大,線程開太多就會出現這個錯誤,可以這么理解,ANR是CRASH的一種而已。
熱點內容