app启动前debug的方法

81 篇文章 3 订阅

在app刚启动时调试

 

    我们知道使用Eclipse/AndroidStudio调试进程,都需要进程已经创建好的情况下,才能attach上去。但是有时候我们需要Debug进程启动的过程怎么办?

 

     如果本身有app的源码,并且可以编译,那自然很方便,直接以debug方式编译安装就好了,Eclipse/AndroidStudio都可以一键完成,但是如果没有可编译的源码,或者源码编译非常耗时,这么做就不太方便了。

方法一

   在android开发者选项里,选择调试应用的列表里选择要调试的应用,然后把后面的等待调试器开关打开即可。

 方法二

        我们可以首先通过adb shell am set-debug-app -w <package>,然后再启动<package>进程,系统会弹出一个Dialog提醒Application正在Waiting For Debugger。实际上这个时候应用程序进程已经fork出来了,只不过是阻塞在ActivityThread.handleBindApplication()方法里面,它通过调用Debug.waitForDebugger();一直等待直到DDMS连接上。这个时候我们再用Eclipse/AndroidStudio attach上<package>所在进程,即可Debug后续启动过程,如ClassLoader的创建,Application的初始化以及启动,Activity启动等。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值