diff options
author | Stefan Niedermann <info@niedermann.it> | 2022-01-18 12:15:38 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2022-01-18 12:15:38 +0300 |
commit | 65a30b45a2826ab0f9f2b93465d119b8ad3db430 (patch) | |
tree | ac80891cc948b58fa73d29bb202854b82f11bea2 /app/src/main/java | |
parent | 13b7bc03e5f717340d0537f67cf35fd858a02c88 (diff) |
Enable strict mode logging in DEBUG mode
Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java')
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/DeckApplication.java | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/DeckApplication.java b/app/src/main/java/it/niedermann/nextcloud/deck/DeckApplication.java index 0b26e97f5..a1772a26e 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/DeckApplication.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/DeckApplication.java @@ -6,6 +6,7 @@ import static androidx.lifecycle.Transformations.distinctUntilChanged; import android.app.Application; import android.content.Context; import android.content.res.Configuration; +import android.os.StrictMode; import androidx.annotation.ColorInt; import androidx.annotation.NonNull; @@ -30,6 +31,10 @@ public class DeckApplication extends Application { @Override public void onCreate() { + if (BuildConfig.DEBUG) { + enableStrictModeLogging(); + } + PREF_KEY_THEME = getString(R.string.pref_key_dark_theme); PREF_KEY_DEBUGGING = getString(R.string.pref_key_debugging); setAppTheme(getAppTheme(this)); @@ -55,13 +60,27 @@ public class DeckApplication extends Application { // Debugging // --------- - public static boolean isPersistentLoggingEnabled(@NonNull Context context) { + private static boolean isPersistentLoggingEnabled(@NonNull Context context) { final var sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); final boolean enabled = sharedPreferences.getBoolean(PREF_KEY_DEBUGGING, false); DeckLog.log("--- Read:", PREF_KEY_DEBUGGING, "→", enabled); return enabled; } + private static void enableStrictModeLogging() { + StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() + .detectAll() + // SSO library: setCurrentSingleSignOnAccount works synchronously + // Deck app: Handling of current account / board / stack works synchronously + .permitDiskReads() + .penaltyLog() + .build()); + StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() + .detectAll() + .penaltyLog() + .build()); + } + // ----------------- // Day / Night theme // ----------------- |