zoukankan      html  css  js  c++  java
  • java android 捕获未处理异常

    1. 定义一个异常处理类

    public class ExceptionHandler implements Thread.UncaughtExceptionHandler {
    
        public ExceptionHandler()
        {
            Thread.setDefaultUncaughtExceptionHandler(this);
        }
        
        @Override
        public void uncaughtException(Thread thread, Throwable ex) {
            final StringWriter sw = new StringWriter();
            final PrintWriter pw = new PrintWriter(sw, true);
            ex.printStackTrace(pw);
            String errMsg = sw.getBuffer().toString();
            Log.d("未捕获的错误:", errMsg);
            System.out.println(errMsg);
        }
        
    }

    2. 定义一个App启动程序类,在onCreate方法中注册异常处理类,并在 AndroidManifest.xml 中注册启动程序类。

    import android.app.Application;
    
    public class MyApp extends Application {
        @Override
        public void onCreate() {
            super.onCreate();
            new ExceptionHandler();
        }
    }
    <application
        android:name=".MyApp" ... />

    3.手动引发一个异常以测试我们的程序。

    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            int a = 1;
            int b = 0;
            int c = a/b;
            System.out.println(c);
        }
    }
  • 相关阅读:
    web ERP前端技术选型
    poj1741 Tree 树的分治
    HDU4694 未AC
    zoj4100 Balanced Number 数位DP
    树的最小表示法 UVA 12489
    2013长沙网赛 I题 Grand Prix
    2013第八场多校
    2013第六场多校
    2013第五场多校
    ZOJ3724 树状数组+离线处理
  • 原文地址:https://www.cnblogs.com/nanfei/p/8352177.html
Copyright © 2011-2022 走看看