From 29fa0f3b66292a68b8d60ca88b5b8991f84ab850 Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Wed, 22 Feb 2023 16:56:15 -0800 Subject: [PATCH] Moving IS_DEBUG_DEVICE to a compile time flag for better proguard support Bug: 270386012 Test: Presubmit Change-Id: Ic4a81567f5b9752ab17c725566ce728c3d767bd6 --- src/com/android/launcher3/Utilities.java | 6 +++--- src/com/android/launcher3/config/FeatureFlags.java | 8 ++++++-- src_build_config/com/android/launcher3/BuildConfig.java | 8 +++++++- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/com/android/launcher3/Utilities.java b/src/com/android/launcher3/Utilities.java index 67bc7fc023..7d01f7baf7 100644 --- a/src/com/android/launcher3/Utilities.java +++ b/src/com/android/launcher3/Utilities.java @@ -131,10 +131,10 @@ public final class Utilities { /** * Indicates if the device has a debug build. Should only be used to store additional info or * add extra logging and not for changing the app behavior. + * @deprecated Use {@link BuildConfig#IS_DEBUG_DEVICE} directly */ - public static final boolean IS_DEBUG_DEVICE = - Build.TYPE.toLowerCase(Locale.ROOT).contains("debug") || - Build.TYPE.toLowerCase(Locale.ROOT).equals("eng"); + @Deprecated + public static final boolean IS_DEBUG_DEVICE = BuildConfig.IS_DEBUG_DEVICE; /** * Returns true if theme is dark. diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index 0ec036cd67..84580fbc3f 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -42,18 +42,22 @@ public final class FeatureFlags { } public static boolean showFlagTogglerUi(Context context) { - return Utilities.IS_DEBUG_DEVICE && Utilities.isDevelopersOptionsEnabled(context); + return BuildConfig.IS_DEBUG_DEVICE && Utilities.isDevelopersOptionsEnabled(context); } /** * True when the build has come from Android Studio and is being used for local debugging. + * @deprecated Use {@link BuildConfig#IS_STUDIO_BUILD} directly */ - public static final boolean IS_STUDIO_BUILD = BuildConfig.DEBUG; + @Deprecated + public static final boolean IS_STUDIO_BUILD = BuildConfig.IS_STUDIO_BUILD; /** * Enable moving the QSB on the 0th screen of the workspace. This is not a configuration feature * and should be modified at a project level. + * @deprecated Use {@link BuildConfig#QSB_ON_FIRST_SCREEN} directly */ + @Deprecated public static final boolean QSB_ON_FIRST_SCREEN = BuildConfig.QSB_ON_FIRST_SCREEN; /** diff --git a/src_build_config/com/android/launcher3/BuildConfig.java b/src_build_config/com/android/launcher3/BuildConfig.java index 9a81d3f54c..1f2e0e5387 100644 --- a/src_build_config/com/android/launcher3/BuildConfig.java +++ b/src_build_config/com/android/launcher3/BuildConfig.java @@ -18,10 +18,16 @@ package com.android.launcher3; public final class BuildConfig { public static final String APPLICATION_ID = "com.android.launcher3"; - public static final boolean DEBUG = false; + + public static final boolean IS_STUDIO_BUILD = false; /** * Flag to state if the QSB is on the first screen and placed on the top, * this can be overwritten in other launchers with a different value, if needed. */ public static final boolean QSB_ON_FIRST_SCREEN = true; + + /** + * Flag to control various developer centric features + */ + public static final boolean IS_DEBUG_DEVICE = false; }