仅在调试模式下显示菜单项?

Gol*_*orn 5 debugging android

在我的应用程序中,我创建了一个测试页面,其中包含一些仅供开发人员使用的代码.此页面/活动只能通过菜单项访问.有没有办法确定Android应用程序是否在调试模式下运行,并且仅在显示菜单项时才显示?

问候,Goldhorn

mar*_*osh 8

要直接检查菜单或其他资源XML中的调试模式,我们可以在下面定义resValuebuild.gradle.

buildTypes {
    release {
        ...
        resValue "bool", "DEBUG", "false"
    }
    debug {
        ...
        resValue "bool", "DEBUG", "true"
    }
}
Run Code Online (Sandbox Code Playgroud)

generated.xml我们将得到:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <!-- Automatically generated file. DO NOT MODIFY -->

    <!-- Values from build type: debug -->
    <bool name="DEBUG">true</bool>

</resources>
Run Code Online (Sandbox Code Playgroud)

现在我们可以使用这个值并在menu.xml:

<item android:visible="@bool/DEBUG" ... />
Run Code Online (Sandbox Code Playgroud)


小智 3

您需要检查AndroidManifest.xml 中是否设置了debuggable="true" 。请参阅这篇文章了解更多信息 - Getting "debuggable" value of androidManifest from code?