From 1320b95f399959ba0cf171e9e218811e11b9c85b Mon Sep 17 00:00:00 2001 From: doubleangels Date: Fri, 24 Jan 2025 03:29:10 -0700 Subject: [PATCH 1/2] Fix small logging bug and turn Sentry default to off --- app/build.gradle | 4 ++-- .../com/doubleangels/nextdnsmanagement/SettingsActivity.java | 2 +- app/src/main/res/xml/root_preferences.xml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index e73752c..80fa776 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,8 +9,8 @@ android { applicationId "com.doubleangels.nextdnsmanagement" minSdkVersion 32 targetSdk 35 - versionCode 242 - versionName '5.4.8' + versionCode 243 + versionName '5.4.9' resourceConfigurations += ["en", "zh", "nl", "fi", "fr", "de", "in", "it", "ja", "pl", "pt", "es", "sv", "tr"] } diff --git a/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java b/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java index 000174c..a389fc1 100644 --- a/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java +++ b/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java @@ -157,7 +157,7 @@ private void setupButtonForIntent(String buttonKey) { private void setupDarkModeChangeListener(ListPreference setting) { setting.setOnPreferenceChangeListener((preference, newValue) -> { - new SentryManager(requireContext()).captureMessage("Dark mode set to" + newValue.toString() + "."); + new SentryManager(requireContext()).captureMessage("Dark mode set to " + newValue.toString() + "."); SharedPreferencesManager.putString("dark_mode", newValue.toString()); ProcessPhoenix.triggerRebirth(requireContext()); return true; diff --git a/app/src/main/res/xml/root_preferences.xml b/app/src/main/res/xml/root_preferences.xml index 84af712..cbd820e 100644 --- a/app/src/main/res/xml/root_preferences.xml +++ b/app/src/main/res/xml/root_preferences.xml @@ -20,7 +20,7 @@ + app:defaultValue="false" /> Date: Fri, 24 Jan 2025 04:05:58 -0700 Subject: [PATCH 2/2] Fix broken dark mode --- app/build.gradle | 3 +-- app/proguard-rules.pro | 4 ---- .../doubleangels/nextdnsmanagement/SettingsActivity.java | 5 ++--- .../sharedpreferences/SharedPreferencesManager.java | 7 +++++-- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 80fa776..f8d7af3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -19,7 +19,7 @@ android { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - debuggable true + debuggable false } debugSentryOn { } @@ -57,7 +57,6 @@ dependencies { implementation 'androidx.preference:preference:1.2.1' implementation 'androidx.webkit:webkit:1.12.1' implementation 'com.google.android.material:material:1.12.0' - implementation 'com.jakewharton:process-phoenix:3.0.0' implementation 'com.squareup.retrofit2:converter-gson:2.11.0' implementation 'de.hdodenhof:circleimageview:3.1.0' implementation 'io.sentry:sentry-android:8.0.0' diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index a5610ce..a7691ab 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -24,10 +24,6 @@ -dontwarn androidx.appcompat.** -dontwarn androidx.preference.** -# Process Phoenix (Jake Wharton) --keep class com.jakewharton.processphoenix.** { *; } --dontwarn com.jakewharton.processphoenix.** - # Retrofit (Gson Converter) -keep class com.squareup.retrofit2.** { *; } -dontwarn com.squareup.retrofit2.** diff --git a/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java b/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java index a389fc1..0d0dbe8 100644 --- a/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java +++ b/app/src/main/java/com/doubleangels/nextdnsmanagement/SettingsActivity.java @@ -21,7 +21,6 @@ import com.doubleangels.nextdnsmanagement.sentry.SentryInitializer; import com.doubleangels.nextdnsmanagement.sentry.SentryManager; import com.doubleangels.nextdnsmanagement.sharedpreferences.SharedPreferencesManager; -import com.jakewharton.processphoenix.ProcessPhoenix; import java.util.Locale; @@ -35,6 +34,8 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_settings); sentryManager = new SentryManager(this); SharedPreferencesManager.init(this); + sentryManager.captureMessage("SharedPreferences 'dark_mode' value: " + SharedPreferencesManager.getString("dark_mode", "match")); + sentryManager.captureMessage("SharedPreferences 'sentry_enable' value: " + SharedPreferencesManager.getBoolean("sentry_enable", false)); try { if (sentryManager.isEnabled()) { SentryInitializer.initialize(this); @@ -159,7 +160,6 @@ private void setupDarkModeChangeListener(ListPreference setting) { setting.setOnPreferenceChangeListener((preference, newValue) -> { new SentryManager(requireContext()).captureMessage("Dark mode set to " + newValue.toString() + "."); SharedPreferencesManager.putString("dark_mode", newValue.toString()); - ProcessPhoenix.triggerRebirth(requireContext()); return true; }); } @@ -173,7 +173,6 @@ private void setupSentryChangeListener(SwitchPreference switchPreference) { setPreferenceVisibility("whitelist_domains", isEnabled); setPreferenceVisibility("whitelist_domain_1_button", isEnabled); setPreferenceVisibility("whitelist_domain_2_button", isEnabled); - ProcessPhoenix.triggerRebirth(requireContext()); return true; }); } diff --git a/app/src/main/java/com/doubleangels/nextdnsmanagement/sharedpreferences/SharedPreferencesManager.java b/app/src/main/java/com/doubleangels/nextdnsmanagement/sharedpreferences/SharedPreferencesManager.java index f96800d..052327a 100644 --- a/app/src/main/java/com/doubleangels/nextdnsmanagement/sharedpreferences/SharedPreferencesManager.java +++ b/app/src/main/java/com/doubleangels/nextdnsmanagement/sharedpreferences/SharedPreferencesManager.java @@ -1,5 +1,6 @@ package com.doubleangels.nextdnsmanagement.sharedpreferences; +import android.annotation.SuppressLint; import android.content.Context; import android.content.SharedPreferences; @@ -17,9 +18,10 @@ public static synchronized void init(Context context) { } } + @SuppressLint("ApplySharedPref") public static void putString(String key, String value) { checkInitialization(); - sharedPreferences.edit().putString(key, value).apply(); + sharedPreferences.edit().putString(key, value).commit(); } public static String getString(String key, String defaultValue) { @@ -27,9 +29,10 @@ public static String getString(String key, String defaultValue) { return sharedPreferences.getString(key, defaultValue); } + @SuppressLint("ApplySharedPref") public static void putBoolean(String key, boolean value) { checkInitialization(); - sharedPreferences.edit().putBoolean(key, value).apply(); + sharedPreferences.edit().putBoolean(key, value).commit(); } public static boolean getBoolean(String key, boolean defaultValue) {