綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[資料] android捕獲全局異常和處理

[複製連結] 查看: 855|回覆: 1|好評: 0
跳轉到指定樓層
樓主
暗桌之光 | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2011-6-14 17:39

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
在做項目時,經常會把錯誤利用異常拋出去,這樣在開發時就可以通過手機拋的異常排查錯誤,很方便。但是當程序開發完畢,版本穩定,需要上線時,為了避免拋出異常影響用戶感受,可以捕獲全局異常,對異常做出處理。

具體的實方法如下:

利用Thread.UncaughtExceptionHandler 獲取異常,並對異常做出處理:
  1. public class MyUncaughtExceptionHandler implements
  2.         Thread.UncaughtExceptionHandler {
  3.     private Thread.UncaughtExceptionHandler a;
  4.     MyUncaughtExceptionHandler(){
  5.          this.a = Thread.getDefaultUncaughtExceptionHandler();
  6.     }
  7.     @Override
  8.     public void uncaughtException(Thread thread, Throwable ex) {
  9.         Log.i("huilurry","ppppppppppppp="+ex.getMessage());
  10.     //是否拋出異常
  11. //        if(a!=null)
  12. //        a.uncaughtException(thread, ex);
  13.     }
  14. }
複製代碼
具體調用:
  1. public class HuiLurryActivty extends Activity {
  2.     @Override
  3.     public void onCreate(Bundle savedInstanceState) {
  4.         super.onCreate(savedInstanceState);
  5.         setContentView(R.layout.main);
  6.         String t=android.provider.Settings.System.getString(getContentResolver(), "android_id");
  7.         Log.i("huilurry","android_id="+t);
  8.         huilurry();
  9.         throw new NullPointerException("is null");
  10.     }
  11.     HandlerThread localHandlerThread;
  12.     Handler handler;
  13.     private void huilurry()
  14.     {
  15.        localHandlerThread=new HandlerThread("huilurry");
  16.         localHandlerThread.start();
  17.         handler=new Handler(localHandlerThread.getLooper());
  18.         Thread.setDefaultUncaughtExceptionHandler(new MyUncaughtExceptionHandler());
  19.     }
  20. }
複製代碼
主要是利用了Hander和HandlerThread。

源代碼見:http://wangjun-memory.googlecode.com/svn/trunk/android.huilurry
「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)

評分

參與人數 1碎鑽 +5 收起 理由
y776 + 5 支持一下

查看全部評分

收藏收藏1 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
沙發
張祚瑋 | 收聽TA | 只看該作者
發表於 2011-6-15 03:30
good 非常子夕棒!!!
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則