Установите флажок IS_DEBUG_MODE
в своем приложении и добавьте в него код ..
Используйте PackageManager
, чтобы получить ApplicationInfo
объект в вашем приложении, и проверьте поле флагов для FLAG_DEBUGGABLE
.
boolean isDebuggable = (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE));
Обновление:
Следующее решение предполагает, что в файле манифеста вы всегда устанавливаете android:debuggable=true
при разработке и android:debuggable=false
для выпуска приложения.
Теперь вы можете проверить значение этого атрибута из своего кода, установив флаг ApplicationInfo.FLAG_DEBUGGABLE
в ApplicationInfo
, полученном из PackageManager
.
Может помочь следующий фрагмент кода:
PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
int flags = packageInfo.applicationInfo.flags;
if ((flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0) {
// development mode
} else {
// release mode
}
Итак, в вашем файле манифеста:
Для времени отладки,
<application android:name=".MyActivity" android:icon="@drawable/myicon"
android:label="@string/app_name" android:debuggable="true">
Для времени выпуска,
<application android:name=".MyActivity" android:icon="@drawable/myicon"
android:label="@string/app_name" android:debuggable="false">