链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

项目名:Cockroach:降低Android非必要crash

在Android开发过程中,默认的异常杀进程机制存在简单粗暴的问题,很多时候一些小bug就会导致app崩溃,但有些bug对用户影响不大。Cockroach库的出现旨在解决这一问题,它能够降低Android应用中非必要的崩溃情况。该库通过一些技术手段如替换ActivityThrea...

访问官网 →

【Github】项目名:Cockroach:降低Android非必要crash

项目简介

在Android开发中,很多时候由于小bug导致app崩溃,而默认的异常杀进程机制简单粗暴。有些系统或编码造成的bug对用户影响不大,这种情况下崩溃不如忽略。Cockroach库可减少非必要的崩溃情况。

项目目的

旨在降低Android应用中那些因微不足道的bug而产生的不必要的崩溃情况,避免因小问题影响用户体验。

核心技术

Cockroach 2.0通过替换ActivityThread.mH.mCallback,实现拦截Activity生命周期,通过调用ActivityManager的finishActivity结束掉生命周期抛出异常的Activity。

实践案例

  1. 某特殊手机开启Activity时提示未在清单中声明(其他机型正常),在onclick回调里直接startActivity,因无其他逻辑可直接忽略,仅该Activity不显示。
  2. 集成三方数据统计库在Application的onCreate最后初始化时崩溃,由于在启动流程中的位置可直接忽略。
  3. 检查app升级功能中,用Application开启dialog风格Activity提示升级,上线崩溃提示未设FLAG_ACTIVITY_NEW_TASK,低版本问题可直接忽略。还有onclick触发的异常很多也可忽略。

项目总结

Cockroach库在处理Android非必要崩溃方面有着独特的作用,其2.0版本也在不断优化。如果你对这个项目感兴趣或者有任何想法,欢迎在下方留言讨论。

项目地址

GitHub链接直达