1、当有些功能不希望在release模式实现时,但是debug模式又需要的时候,就可以对当前版本模式进行判断。如是debug模式则日志输出级别设置为Level.DEBUG,release模式设置为Level.INFO,或者debug模式才上传crash日志等。
1.1 判断当前应用是否是debug状态
/**
* 判断当前应用是否是debug状态
*/
public static boolean isApkInDebug(Context context) {
try {
ApplicationInfo info = context.getApplicationInfo();
return (info.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;
} catch (Exception e) {
return false;
}
}
1.2 检测其他应用
/**
*检测其他应用是否处于debug模式。
*/
public static boolean isApkDebugable(Context context,String packageName) {
try {
PackageInfo pkginfo = context.getPackageManager().getPackageInfo(
packageName, 1);
if (pkginfo != null ) {
ApplicationInfo info= pkginfo.applicationInfo;
return (info.flags&ApplicationInfo.FLAG_DEBUGGABLE)!=0;
}
} catch (Exception e) {
}
return false;
}
2、如果想手动修改项目当前的模式,可以在AndroidManifest.xml中的application标签设置<application debuggable="true",设置为true表示当前是debug模式,设置为false表示不是debug模式。