是否可以防止调试器附加到 Android 上?

Posted

技术标签:

【中文标题】是否可以防止调试器附加到 Android 上?【英文标题】:Is it possible to prevent the debugger from attaching on Android? 【发布时间】:2016-03-23 06:33:49 【问题描述】:

我正在对 android 进行一些逆向工程保护,并且我想阻止调试应用程序。我知道如何检测何时附加了调试器,但有没有办法阻止它首先附加?

编辑:为了澄清和回应 droidpl 的回答,我的意思不仅仅是在清单中设置 debuggable=false 以防.apk 被重新打包。

【问题讨论】:

【参考方案1】:

是的,您可以修改构建过程以使您的应用不可调试。在您的应用程序的build.gradle 中,在您希望避免它可调试的构建类型中,设置属性debuggable false

现在,如果您尝试将调试器附加到您的进程,它将不会出现在正在运行的可用进程中。

【讨论】:

以上是关于是否可以防止调试器附加到 Android 上?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 eclipse CDT 中将调试会话附加到正在运行的程序

从 Mac 上的 Rider 附加到 Azure Functions 的调试器

是否可以将 gdb 附加到崩溃的进程(又名“即时”调试)

Android Studio 附加到进程未找到本机符号

我可以在方法条目上暂停 Java 运行时以便有时间通过​​调试器或探查器附加吗?

Android调试器不断断开连接