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();   }   }

VoLLcloud6折限量,香港CMI云服务器三网直连-200M带宽

vollcloud LLC首次推出6折促销,本次促销福利主要感恩与回馈广大用户对于我们的信任与支持,我们将继续稳步前行,为广大用户们提供更好的产品和服务,另外,本次促销码共限制使用30个,个人不限购,用完活动结束,同时所有vps产品支持3日内无条件退款和提供免费试用。需要了解更多产品可前往官网查看!vollcloud优惠码:VoLLcloud终生6折促销码:Y5C0V7R0YW商品名称CPU内存S...

Hostwinds:免费更换IP/优惠码美元VPS免费更换IP4.99,7月最新优惠码西雅图直连VPS

hostwinds怎么样?2021年7月最新 hostwinds 优惠码整理,Hostwinds 优惠套餐整理,Hostwinds 西雅图机房直连线路 VPS 推荐,目前最低仅需 $4.99 月付,并且可以免费更换 IP 地址。本文分享整理一下最新的 Hostwinds 优惠套餐,包括托管型 VPS、无托管型 VPS、Linux VPS、Windows VPS 等多种套餐。目前 Hostwinds...

DMIT:香港国际线路vps,1.5GB内存/20GB SSD空间/4TB流量/1Gbps/KVM,$9.81/月

DMIT怎么样?DMIT是一家美国主机商,主要提供KVM VPS、独立服务器等,主要提供香港CN2、洛杉矶CN2 GIA等KVM VPS,稳定性、网络都很不错。支持中文客服,可Paypal、支付宝付款。2020年推出的香港国际线路的KVM VPS,大带宽,适合中转落地使用。现在有永久9折优惠码:July-4-Lite-10OFF,季付及以上还有折扣,非 中国路由优化;AS4134,AS4837 均...

looper prepare为你推荐
策略组组策略是什么,命令是什么???网关和路由器的区别路由器和网关有什么区别?天融信防火墙都说天融信的产品不错,那天融信的下一代防火墙真的是当今最好的防火墙产品了吗?editplus破解版DBTools Manager Professional 破解版在哪里可以下载?索引超出了数组界限什么是索引超出了数组界限radius认证电信或网通的RADIUS认证都记录些什么?谁能说说ISP的宽带帐号检查流程民生电商民生电商与传统的电商有什么区别?微信论坛手机微信论坛如何实现layoutsubviews如何设置plus.nativeui.toast的样式图片存储如何将图片保存下来
域名空间购买 主机测评网 webhosting 搬瓦工官网 香港主机 cloudstack 美国主机论坛 便宜建站 轻博客 账号泄露 42u标准机柜尺寸 香港新世界电讯 京东云擎 php免费空间 空间服务商 华为4核 admit的用法 lol台服官网 卡巴斯基试用版 爱奇艺vip免费试用7天 更多