android 开启调试小技巧

对android APP进行调试,大部分情况下,启动调试是件so easy的事情。
在Eclipse或Android Studio下,直接就可以对工程进行启动debug。
debug_eclipse
android 开启调试小技巧_第1张图片

APP跑起来后就会先去连接调试器,运行过程中自动会触发断点。
但有另外一种情况,若APP是通过其他工具编译的,如ant或是插件APP等,则无法直接通过eclipse直接进行Debug,必须先等APP运行起来之后,通过DDMS里面找到该进程,然后启动调试器:
android 开启调试小技巧_第2张图片
这样的话,必须等APP完全运行起来后,才能启动调试。
这对于一些插件APP的调试有时候是不太方便的,比如需要调试程序启动过程,就无法设置断点来调试了。
除了利用IDE工具,android还提供了一种代码层面的调试API,android.os.Debug类。
具体用法:

public class BridgeInterface extends PluginRuntime {

    public static final String TAG = "BridgeInterface";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        sApplication = this;
        BridgeSSOService.getInstance().initApp(this);
        IntentFilter filter = new IntentFilter(ExitBroadcastReceiver.ACTION_PROCESS_EXIT);
        getApplication().registerReceiver(mExitReceiver, filter);
        super.onCreate(savedInstanceState);
        Debug.waitForDebugger();//等待连接调试器,然后才继续运行后续代码
        MyLog.d(TAG, "onCreate");
    }
}

这样,APP运行的时候,在Debug.waitForDebugger()这行会自动等待调试器来连接,连接成功后,继续运行后面的代码。
这就解决了上述用其他工具编译或是插件无法调试启动过程的问题!
android 开启调试小技巧_第3张图片

当然,重要的是,代码调试完毕转发布时,一定要去掉这行,否则程序运行到这一行,会一直处于等待连接调试器的状态,而未连接IDE开发工具到PC的手机,这个程序就无法正常运行了!!切记!

//Debug.waitForDebugger();//等待连接调试器,然后才继续运行后续代码

你可能感兴趣的:(android开发)