looper prepareAndroid 全局异常是什么意思

looper prepare  时间:2022-02-24  阅读:()

Android 全局异常是什么意思

Android系统的“程序异常退出”,给应用的用户体验造成不良影响。为了捕获应用运行时异常并给出友好提示,便可继承UncaughtExceptionHandler类来处理。通过Thread.setDefaultUncaughtExceptionHandler()方法将异常处理类设置到线程上即可。   1、异常处理类,代码如下:   [java] view plaincopy   public class CrashHandler implements UncaughtExceptionHandler {   public static final String TAG = "CrashHandler";   private static CrashHandler INSTANCE = new CrashHandler();   private Context mContext;   private Thread.UncaughtExceptionHandler mDefaultHandler;   private CrashHandler() {   }   public static CrashHandler getInstance() {   return INSTANCE;   }   public void init(Context ctx) {   mContext = ctx;   mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler();   Thread.setDefaultUncaughtExceptionHandler(this);   }   @Override   public void uncaughtException(Thread thread, Throwable ex) {   // if (!handleException(ex) && mDefaultHandler != null) {   // mDefaultHandler.uncaughtException(thread, ex);   // } else {   // android.os.Process.killProcess(android.os.Process.myPid());   // System.exit(10);   // }   System.out.println("uncaughtException");   new Thread() {   @Override   public void run() {   Looper.prepare();   new AlertDialog.Builder(mContext).setTitle("提示").setCancelable(false)   .setMessage("程序崩溃了...").setNeutralButton("我知道了", new OnClickListener() {   @Override   public void onClick(DialogInterface dialog, int which) {   System.exit(0);   }   })   .create().show();   Looper.loop();   }   }.start();   }   /**   * 自定义错误处理,收集错误信息 发送错误报告等操作均在此完成. 开发者可以根据自己的情况来自定义异常处理逻辑   *   * @param ex   * @return true:如果处理了该异常信息;否则返回false   */   private boolean handleException(Throwable ex) {   if (ex == null) {   return true;   }   // new Handler(Looper.getMainLooper()).post(new Runnable() {   // @Override   // public void run() {   // new AlertDialog.Builder(mContext).setTitle("提示")   // .setMessage("程序崩溃了...").setNeutralButton("我知道了", null)   // .create().show();   // }   // });   return true;   }   }   2、线程绑定异常处理类   [java] view plaincopy   public class CrashHandlerActivity extends Activity {   /** Called when the activity is first created. */   @Override   public void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.main);   CrashHandler crashHandler = CrashHandler.getInstance();   crashHandler.init(this); //传入参数必须为Activity,否则AlertDialog将不显示。   // 创建错误   throw new NullPointerException();   }   }

欧路云(22元/月),美国CERA弹性云服务器!香港弹性云服务器15元/月起;加拿大高防vps仅23元/月起

欧路云怎么样?欧路云主要运行弹性云服务器,可自由定制配置,可选加拿大的480G超高防系列,也可以选择美国(200G高防)系列,也有速度直逼内地的香港CN2系列。所有配置都可以在下单的时候自行根据项目 需求来定制自由升级降级 (降级按天数配置费用 退款回预存款)。2021年7月14日美国 CERA 弹性云服务器 上新 联通CUVIP 线路!8折特惠中!点击进入:欧路云官方网站地址付款方式:PayPa...

Friendhosting四五折促销,VPS半年付7.5欧元起

Friendhosting发布了针对“系统管理日”(每年7月的最后一个星期五)的优惠活动,针对VPS主机提供55%的优惠(相当于四五折),支持1-6个月付款使用,首付折扣非永久,优惠后最低套餐首半年7.18欧元起。这是一家保加利亚主机商,成立于2009年4月,商家提供VDS和独立服务器租用等,数据中心目前可选美国洛杉矶、保加利亚、乌克兰、荷兰、拉脱维亚、捷克和波兰等8个地区机房。下面以最低套餐为例...

轻云互联,香港云服务器折后22元/月 美国云服务器 1核 512M内存 15M带宽 折后19.36元/月

轻云互联成立于2018年的国人商家,广州轻云互联网络科技有限公司旗下品牌,主要从事VPS、虚拟主机等云计算产品业务,适合建站、新手上车的值得选择,香港三网直连(电信CN2GIA联通移动CN2直连);美国圣何塞(回程三网CN2GIA)线路,所有产品均采用KVM虚拟技术架构,高效售后保障,稳定多年,高性能可用,网络优质,为您的业务保驾护航。官方网站:点击进入广州轻云网络科技有限公司活动规则:1.用户购...

looper prepare为你推荐
1u1U的 定义linux修改文件名Linux中,怎样修改文件名?网关和路由器的区别网关和路由器的区别是什么tvos智能电视都什么功能被广电封杀了?inode智能客户端我的电脑上inode智能客户端连接网络时,提示~服务器没有响应,请确认当前认证网卡已连接到合适的网layoutsubviews如何让NSSplitView的子View的大小固定清除电脑垃圾怎么清除电脑的垃圾啊?国际加速世界经济全球化加速发展的表现有哪些?在全球化趋势加强的过程中,人类共同面临的问题有哪些?基础设施即服务基础设施与市政公用设施以及公共设施之间的区别!银联商务招聘急问银联商务的客服待遇如何啊?
大庆服务器租用 如何注册网站域名 个人域名备案流程 亚洲大于500m jsp主机 好看的留言 搜狗12306抢票助手 hkt yundun 万网主机管理 网通服务器 免费asp空间申请 php服务器 谷歌台湾 ledlamp 网站加速 vim命令 dbank 电脑主机打不开 大容量存储控制器 更多