日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android两种常见错误(ANR和FC)解决办法

發布時間:2023/11/29 Android 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android两种常见错误(ANR和FC)解决办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??ANR(Activity Not Respone)(無響應)

? ? 先介紹下Main線程(也稱為UI線程、主線程)

? ? 功能: 1.創建UI控件

? ? ? ? ? ? ?2.更新UI控件狀態

? ? ? ? ? ? ?3.事件處理

? ? 限制:Main線程不建議有超過5秒的事件

? ? 出現條件:

? ? ? ? 當用戶輸入事件5s內沒有得到響應,將彈出ANR對話框

? ? ? ??廣播接收者的onReceive()執行時間超過10s

? ? 解決方案(原則):

? ? ? ? 所有可能的耗時操作都要在子線程()中執行

? ? ? ? 常見耗時操作:

? ? ? ? ? ? I/O:網絡操作

? ? ? ? ? ? ? ? ? ?SDcard?

? ? ? ? ? ? 數據運算


FC(Force close)

? ? 原因:

????? ? 1.Error

????? ? OOM(out of memory error)

????? ? StackOverFlowError

????? ? 2.RuntimeException

? ? 解決辦法:

? ? ? ? 看日志



? ? 子線程不能更新UI的解決思路:

? ? ?? 1、 將子線程執行結果發送到Main線程:handler+massage線程間通訊

? ? ? ? ? ? 發送消息:

????????????????????????Message?msg?=?mHandler.obtainMessage(UPLOAD,?json);? ???

????????????????????????mHandler.sendMessage(msg);

? ??? ??? ? 接收消息:

? ? ? ??public?void?handleMessage(Message?msg)?{

????????????switch?(msg.what)?{

????????????case?UPLOAD:

????????????????mTextView2.setText((String)?msg.obj);

????????????break;

????????????case?DOWNLOAD:

????????????????mTextView.setText((String)?msg.obj);

????????????????break;

????????????default:

????????????????break;


轉載于:https://blog.51cto.com/1206995290qq/1844257

總結

以上是生活随笔為你收集整理的Android两种常见错误(ANR和FC)解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。