- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
引用Getting "debuggable" value of androidManifest from code? ,有两种检查构建是否可调试的选项:
1.) BuildConfig.DEBUG 标志
if (BuildConfig.DEBUG)`
2.) ApplicationInfo.FLAG_DEBUGGABLE
if (0 != (getContext().getApplicationInfo().flags &
ApplicationInfo.FLAG_DEBUGGABLE))
他们两个是相同的还是不同的?什么时候使用什么?
最佳答案
它们并不相同。
可能有很多buildType
,但是debug
和release
是必须的。如果当前选择的构建类型是 debug
,BuildConfig.DEBUG
将为 true
,否则将为 false
(参见排除项下面的案例)。
ApplicationInfo.FLAG_DEBUGGABLE
对应于以下内容:
buildTypes {
debug {
debuggable true
}
...
}
现在,ApplicationInfo.FLAG_DEBUGGABLE
将为 true
。
因此,您可以得出结论,您可以执行以下操作:
buildTypes {
debug {
debuggable false
}
...
}
有趣的是,尽管您处于debug
构建类型,BuildConfig.DEBUG
将变为false
。
关于java - BuildConfig.DEBUG 与 ApplicationInfo.FLAG_DEBUGGABLE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45637524/
我想显示安装在用户设备上的应用程序列表,这些应用程序目前在其 list 文件上具有互联网权限我正在使用以下代码获取所有这些应用程序: PackageManager packageManager =
我有以下代码: 在 list 中: 在代码中: ApplicationInfo ai = getPackageManager().getApplicationInfo( getPac
如果我有一个特定应用程序的 ApplicationInfo 实例,我该如何创建启动该应用程序的 Intent? 我试过了 Intent intent = new Intent(ApplicationI
我尝试在更新之前跟踪系统应用程序并使用: public static boolean isSystemApplication(Context ctx, IContent content) {
我编写了一个 android 服务,用于计算安装在手机上的应用程序列表并获取应用程序名称。 代码大致是这样的: List appListInfo = pm.getInstalledPackages(0
我想知道我是否可以通过系统应用程序获得 root 权限来执行命令。 在这段代码中: getApplicationInfo().uid 在文档中我可以读到uid 是已分配给此应用程序的内核用户 ID;目
我使用以下代码来区分用户安装的应用程序和系统应用程序: final PackageManager pm = getPackageManager(); List packages = pm.getIns
我有几个关于 ApplicationInfo 和 PackageInfo 类的一般性问题。他们在这里: 谁能描述一下 ApplicationInfo 和包信息? 它们如何相互关联? 在哪些情况下使用
我正在尝试获取我的应用程序拥有的权限列表以及设备上安装的应用程序列表。我熟悉android中的ApplicationInfo和PackageInfo,但找不到适用于ios swift的任何内容 最佳答
引用Getting "debuggable" value of androidManifest from code? ,有两种检查构建是否可调试的选项: 1.) BuildConfig.DEBUG 标
对于手机上安装的所有应用程序,我需要访问: 姓名 图标 可以安装应用程序的 google play url 我查看了 ApplicationInfo,但它似乎没有向我提供此信息。我听说过 Packag
根据标题,我正在寻找一种仅显示具有启动器 Intent 的应用程序的解决方案。这是我检索应用列表的代码: public static List getInstalledApplication(Cont
PackageManager pm = this.getPackageManager(); ActivityManager am = (ActivityManager) this.getSystemS
所以,我试图运行我的应用程序,它应该在第一次运行后显示通知。但是,它给了我这样的错误: java.lang.NullPointerException: Attempt to invoke virtua
我正在尝试将我的应用程序从单片 APK 迁移到应用程序包格式。我需要为 exec() 调用设置 LD_LIBRARY_PATH 环境变量,因此我需要本地库的位置。对于原始 APK,我会调用 getAp
我正在尝试将我的应用程序从单片 APK 迁移到应用程序包格式。我需要为 exec() 调用设置 LD_LIBRARY_PATH 环境变量,因此我需要本地库的位置。对于原始 APK,我会调用 getAp
所以,我试图运行我的应用程序,它应该在第一次运行后显示通知。但是,它给了我这样的错误: java.lang.NullPointerException: Attempt to invoke virtua
在使用 Mockito 运行 Espresso 测试时,我目前遇到的问题是 “尝试从字段 'int android.content.pm.ApplicationInfo.targetSdkVersio
我是一名优秀的程序员,十分优秀!