一般在AndroidManifest.xml里最好不设置android:debuggable属性置,而是由打包方式来决定其值。当打release包时,android:debuggable为false,不可以调试的,打debug包时,android:debuggable为true。
只有android:debuggable="true"时我们才可以在手机上调试Android程序。
一、检测
当然对于测试人员还是应该检查该属性的,比如使用aapt工具:
aapt list -v -a myfile.apk
这个命令将会打印和apk相关的所有详细信息,找到“android:debuggable",它的值分为:
0x0: debuggable false
0xffffffff: debugabble true
例如,在我的测试中,这一行的信息是:
A: android ebuggable(0x0101000f)=(type 0x12)0x0
这说明我的Release Build已经关闭了debuggable!
二、aapt介绍
aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看,创建, 更新ZIP格式的文档附件(zip, jar, apk)。也可将资源文件编译成二进制文件,尽管你可能没有直接使用过aapt工具,但是build scripts和IDE插件会使用这个工具打包apk文件构成一个Android 应用程序。在使用aapt之前需要在环境变量里面配置SDK-tools路径,或者是路径+aapt的方式进入aapt。