大数据男 2020-04-12 13:39
浏览 319

android界面卡死,光标还在闪烁,没有ANR,百分百必现,求大神解救?

一,问题描述


1,在Application类中做了如下操作,目的是全局处理未捕获的异常,尝试实现App永不崩溃:


// application的OnCreate方法中
new Handler(Looper.getMainLooper()).post(new Runnable() {
    @Override
    public void run() {
        //主线程异常拦截
        while (true) {
            try {
                Looper.loop();//主线程的异常会从这里抛出
            } catch (Throwable e) {

                e.printStackTrace();

            }
        }
    }
});



2,打脸的是,在Activity监听物理返回键,并在其中抛出运行时异常,上述代码虽然能捕获异常,App也没崩溃,但是界面会卡死。



只要按**物理返回键**,无论是模拟器还是真机,都会卡死,而且必现。


// activity 中监听物理返回键
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(keyCode == KeyEvent.KEYCODE_BACK) {
        throw new RuntimeException("dsds");
    }
    return super.onKeyDown(keyCode, event);
}


请问,这是为啥

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 树莓派与pix飞控通信
    • ¥15 自动转发微信群信息到另外一个微信群
    • ¥15 outlook无法配置成功
    • ¥30 这是哪个作者做的宝宝起名网站
    • ¥60 版本过低apk如何修改可以兼容新的安卓系统
    • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
    • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
    • ¥50 有数据,怎么用matlab求全要素生产率
    • ¥15 TI的insta-spin例程
    • ¥15 完成下列问题完成下列问题