`

关于AndroidManifest.xml中的android:debuggable

 
阅读更多
在AndroidManifest.xml中,<application>可以设置attribute android:debuggable,其值为“true”或“fasle”。

  在官方文档中对它的说明如下:

  Whether or not the application can be debugged, even when running on a device in user mode — "true " if it can be, and "false " if not. The default value is "false ".

  那么如何获知它的设置值呢?下面的可以提供了解。



  1. 如何测试APK是否设置android:debuggable="false"

  在此blog中介绍的两个方法。

   第一种用于对apk文件的检测。使用下面的命令(在Ubuntu中示例):

  aapt list -v -a  apk文件名 |grep debuggable

  得到如下输出:

  A: android:debuggable(0x0101000f)=(type 0x12)0x0

  这表示 android:debuggable="false"




   第二种为单元测试的方法(此方法还未尝试)。其原文如下:

   另外,还有一种测试方法:

   使用android cts测试,http://source.android.com/compatibility/cts-intro.html

   这是一种单元测试的方法,具体用到的类是android.permission.cts.DebuggableTest。

   testNoDebuggable :如果是true,说明debuggable false;

   testNoDebuggable :如果是false,说明debuggable true。




  2. [打包、发布] 程序如何知道当前的apk包是不是处于debuggable

   此贴中讨论的是在程序自身运行时获取设置值。关键点可以从贴中引用的一段话体现:

   Now you can check this attribute's value from your code by checking the ApplicationInfo.FLAG_DEBUGGABLE flag in the ApplicationInfo obtained from PackageManager.
分享到:
评论

相关推荐

    AndroidManifest.xml文件剖析.pdf

    AndroidManifest.xml文件是Android应用程序的全局配置文件,它是Android应用程序中最重要的配置文件之一。该文件用于描述应用程序的基本信息、组件信息、权限信息、IntentFILTER信息等。理解AndroidManifest.xml文件...

    AndroidManifest.xml文件剖析[参考].pdf

    在application分支中,我们需要了解一些常见的属性,这里可以看到一些我们实用的选项,比如允许调试android:debuggable、任务关系android:taskAffinity、创建一个新的任务实用标记FLAG_ACTIVITY_NEW_TASK、为程序...

    mprop190924.zip

    第一是apk的配置文件内的AndroidManifest.xml的 android:debuggable=”true”,第二就是/default.prop中ro.debuggable=1。两种方式第一种通常是解包添加属性再打包,随着加壳软件以及apk校验等,容易出现安装包异常...

    mprop修改手机的ro.debuggable属性

    1.APK的AndroidManifest.xml文件中的Application标签包含android:debuggable="true"; 2./default.prop中的ro.debuggable的值为1; mprop是用来修改手机ro.debuggable值的工具,使用该工具需要root手机。使用步骤如下...

    Android应用9类漏洞.doc

    1. 调试风险:AndroidManifest.xml 文件中的 android:debuggable 属性如果设置为 true,可能会导致 App 可以被调试,黑客可以通过调试来获取 App 的敏感信息。修复建议:将 android:debuggable 属性设置为 false,以...

    OA0-002 V9.02

    在AndroidManifest.xml文件中定义的标签有一个android:debuggable属性,用于控制应用是否可以被调试。此属性可以设置为"true"或"false"。如果未设置,默认为"false"。因此,A选项正确。该属性不会影响Eclipse的断点...

    快速Android 反编译 回编译 工具集 含直接调试破解之法

    1》修改AndroidManifest.xml 主中android.intent.action.MAIN和android.intent.category.LAUNCHER【application】的 android:debuggable="true" 2》在入口处添加waitForDebugger代码进行调试等待。 Activity中a=0...

    Android开发真机测试方法

    1. 在 AndroidManifest.xml 文件中,添加 android:debuggable="true" 属性,以启用调试模式。 2. 保存修改后的 AndroidManifest.xml 文件。 三、执行真机调试 在 Eclipse 中,右键点击项目--&gt;Debug As--&gt;Debug ...

    apktool documentation

    original = META-INF folder / AndroidManifest.xml, which are needed to retain the signature of apks to prevent needing to resign. Used with -c / --copy-original on [b]uild unknown = Files / folders ...

    android5.0 系统setting选项变为开发者模式

    1. **AndroidManifest.xml**: 开发者选项的可见性是在应用程序的`AndroidManifest.xml`文件中控制的。你需要检查设置应用(Settings应用)的清单文件,寻找相关的权限声明。可能需要添加`android:debuggable="true"`...

    Android NDK翻译之Application

    当你的应用配置为可调试(如AndroidManifest.xml中android:debuggable="true")时,默认使用'debug'模式。即使在'release'模式下,也可以进行调试,但'debug'模式提供的调试信息更为详细,因为'release'模式的优化...

    Android Application Engineer Certifications Basic(OA0-00)认证考试题库.docx

    2. **AndroidManifest.xml中的`android:debuggable`属性**: - 默认情况下,如果未设置,该属性将被视为`false`,即应用不处于调试模式。 - 设置为`true`可以让开发者在Eclipse或其他IDE中使用断点进行调试,但这...

    Android 开发 — 开机自启动

    你可以使用Logcat查看日志,或者在AndroidManifest.xml中设置调试标志`android:debuggable="true"`以便在运行时查看BroadcastReceiver的行为。另外,使用第三方工具如"绿色守护"或"钛备份"可以帮助你检测和管理应用...

    Android JNI 断点调试C++

    - 如果在调试过程中遇到问题,检查AndroidManifest.xml是否包含了`android:debuggable="true"`属性。 - 有些设备或模拟器可能不支持JNI调试,确保设备配置正确。 通过这个简单的测试项目"HelloNDK",初学者可以快速...

    android测试方法

    在Android应用的主清单文件AndroidManifest.xml中,添加`android:debuggable="true"`属性到`&lt;application&gt;`标签内。这使得应用在调试模式下运行,允许开发者获取更详细的错误信息。 4. **Eclipse中的真机调试**: ...

    安卓反调试-解决方案一

    4. 隐藏调试标志:在AndroidManifest.xml中,`android:debuggable`属性默认为false,但在开发阶段通常设为true。发布应用时,确保这个标志为false,可以避免因忘记关闭调试模式而暴露应用。 5. 检查系统日志:有些...

Global site tag (gtag.js) - Google Analytics