AndroidStudio release版本的APP也能打印日志和调试

在AndroidManifest.xml清单文件中Application标签下配置android:debuggable="true"属性;结果不管你打debug包还是release包,系统都会默认是debug模式,在AndroidStudio的控制台就可以输出日志,并且可以调试,有些反编译调试别人的APP(比如微信)也是增加或者修改android:debuggable="true"属性值,然后重新打包,这样就可以实现动态调试他人的app;

注意:即使在AndroidManifest.xml中android:debuggable="true",如果在module下的buil.gradle设置debuggable false ,那么最终打包的AndroidManifest.xml中android:debuggable="false";

buildTypes {
    release {
        minifyEnabled false
        debuggable true //true代表开启 false 关闭,新建项目默认是没有这个参数的
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

最好不要在AndroidManifest中设置android:debuggable属性。 设置它,编译的任何版本都要采用指定的debug模式,前提是没有在build.gradle中设置debuggable。

总结:

上面介绍了两种在release版本中实现打印日志和动态调试的方式,就是在AndroidManifest或者build.gradle设置debuggable属性值;

你可能感兴趣的:(IDE或Toos)