比 Logcat 更加美观易用的异常信息接收器: CrashWoodpecker (类似 LeakCanary 的用法) , 只要一行代码: CrashWoodpecker.fly().to(this); - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
drakeet
V2EX    Android

比 Logcat 更加美观易用的异常信息接收器: CrashWoodpecker (类似 LeakCanary 的用法) , 只要一行代码: CrashWoodpecker.fly().to(this);

  •  1
     
  •   drakeet 2015-09-03 23:12:05 +08:00 13659 次点击
    这是一个创建于 3698 天前的主题,其中的信息可能已经有所发展或是发生改变。

    screenshot.png
    因为我的 Android Studio 在使用的过程中, 经常会出现 App 崩溃了, 而 AS 自带的 logcat 并没有搜集到异常信息, 特别烦恼, 怎么折腾怎么重连都不痛快, 特别是对于那种 “启动崩” 的异常, 很难马上捕捉到, 丢失也是经常的.

    所以我做了这么一个库, 仿造 Square 检测并展示内存泄露的 LeakCanary. 当开发过程中, 如果有没有处理的异常导致 crash, 使用了 CrashWoodpecker 以后, 便会起一个新的美观页面, 以很友好的方式即时展示异常信息. 更多内容可以参看一下我写在 GitHub 的文档:

    CrashWoodpecker

    A Uncaught Exception Handler library like as Square ’ s LeakCanary.

    源代码: https://github.com/drakeet/CrashWoodpecker

    Demo apk download: LittleWood.apk

    Getting started

    In your build.gradle:

    dependencies { debugCompile 'me.drakeet.library:crashwoodpechker:0.9' } 
    Error: language "gradle" is not supported

    // I will add a releaseCompile to compile do nothing with the same class and package in your release build. Comming soon...

    In your Application class:

    public class ExampleApplication extends Application { @Override public void onCreate () { super.onCreate (); CrashWoodpecker.fly ().to (this ); } } 

    That is all! CrashWoodpecker will automatically show an Activity when your app crash with uncaught exceptions in your debug build.

    第 1 条附言    2015-09-04 17:35:38 +08:00
    注: 这是一个给开发者 开发阶段 使用的便利工具, 而不是要用于 发布 /用户阶段
    第 2 条附言    2015-09-08 13:27:24 +08:00
    最新 0.9.6 修复了之前兼容性的大问题,并且支持所有线程的未捕捉异常的捕捉了。
    11 条回复    2015-09-08 13:26:07 +08:00
    kaedea
        1
    kaedea  
       2015-09-04 02:01:49 +08:00
    沙发
    mthli
        2
    mthli  
       2015-09-04 02:12:14 +08:00 via Android   1
    提个 feature 。发布 release 时自定禁止弹出异常窗口。另外可以搞一个分享操作啥的。
    ljbha007
        3
    ljbha007  
       2015-09-04 08:50:59 +08:00   1
    logcat 里不要加过滤器就能看到那种启动崩的日志了
    开发机器尽量少装软件 以免不必要的日志太多
    dast
        4
    dast  
       2015-09-04 09:43:41 +08:00   1
    这个世界真小, 2 天前从 follow 的好友 star 里看到了这项目,今天居然在 v2 上也看到
    sjn9588
        5
    sjn9588  
       2015-09-04 11:10:19 +08:00
    非常不错。可是觉得 logcat 够用了。
    drakeet
        6
    drakeet  
    OP
       2015-09-04 17:33:50 +08:00
    @sjn9588 当你觉得不够用或者受不了它的时候...
    sonaive
        7
    sonaive  
       2015-09-04 19:00:10 +08:00 via Android   1
    好评。楼主很棒。
    kaedea
        8
    kaedea  
       2015-09-05 00:41:04 +08:00
    @sjn9588 Logcat 有个很好的替代品 Logger ,但是我自己有个更好的,支持把 Log 内容保存到本地。
    一直想开源出来,但是名字一直没想好,现在是叫 MLog ,但是我感觉不够高大上啊,想改成 SmartLog 之类的,但是又感觉太长了……
    jiaxin1121
        9
    jiaxin1121  
       2015-09-06 10:08:42 +08:00
    这个是锤子么
    sjn9588
        10
    sjn9588  
       2015-09-07 11:39:37 +08:00
    @kaedea MLog 是取得什么意思。 SmartLog 我觉得不错啊。不是很长,而且看起来比较舒服,可能习惯变量命名了。
    drakeet
        11
    drakeet  
    OP
       2015-09-08 13:26:07 +08:00
    @jiaxin1121 是啊,锤子 Smartisan T1 白色版,不过我不是锤子手机,只是使用了锤子的壳子截图
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2626 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 09:22 PVG 17:22 LAX 02:22 JFK 05:22
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86