Android(安卓)捕获运行时异常详解
16lz
2021-01-26
Android 捕获运行时异常详解
Android 异常分为两类:CheckedException 和 UnCheckedException
CheckException:在编译代码时就需要进行try()catch捕获的。
UnCheckException:所有的运行时异常,RuntimeException类和他的子类,都是在APP运行的过程中的发生的。即:APP在运行的过程中崩溃了,这种异常我们就成为运行时异常(比如空指针),当APP崩溃的时候,给用户的体验很不好,所以我们应该捕获这个异常进行处理(弹个界面啦),然后更好的方案是获取到这个异常后,把他传回服务器,这样我们在开发的时候就知道APP哪里的代码有问题了
说了半天到底怎么捕获呢?
安卓提供了一个接口:UncaughtExceptionHandler 这个接口是Thread类的内部接口,有相应的方法:
Thread.getDefaultUncaughtExceptionHandler()Thread.setDefaultUncaughtExceptionHandler()
通常的方案就是在项目的Application中,调用Thread.setDefaultUncaughtExceptionHandler(),注意这个方法需要一个实现了UnCaughtExceptionHandler接口的对象,我们可以自定义一个类实现这个接口,然后在onUncaughtException()方法中就可以拿到导致APP崩溃的异常了。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
更多相关文章
- Android模拟器运行速度很慢的解决办法
- Android(安卓)捕获错误日志 UncaughtExceptionHandler
- Android运行Socket项目 Error: ShouldNotReachHere()
- ida android incompatible debugger server protocol version is
- Android之回调函数
- 毕业设计遇到的问题及解决方法
- 用ndk-build 编译C语言文件,生成可在android系统上运行的文件
- Parcelable和Parcel
- Android实现判断某个服务是否正在运行的方法