From 815140595ba486fee4a098203225defdfed37df6 Mon Sep 17 00:00:00 2001 From: AbdurazaaqMohammed Date: Sat, 25 Jan 2025 15:01:28 -0400 Subject: [PATCH] 2.1.7 Fix app crashing if device language is not English --- app/build.gradle.kts | 4 ++-- .../AntiSplit/main/MainActivity.java | 17 ++++++++++++----- .../abdurazaaqmohammed/utils/LanguageUtil.java | 1 + 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1534660..1a4952d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -10,8 +10,8 @@ android { applicationId = "com.abdurazaaqmohammed.AntiSplit" minSdk = 19 targetSdk = 35 - versionCode = 44 - versionName = "2.1.6" + versionCode = 45 + versionName = "2.1.7" multiDexEnabled = true } diff --git a/app/src/main/java/com/abdurazaaqmohammed/AntiSplit/main/MainActivity.java b/app/src/main/java/com/abdurazaaqmohammed/AntiSplit/main/MainActivity.java index e52742a..46a0b38 100644 --- a/app/src/main/java/com/abdurazaaqmohammed/AntiSplit/main/MainActivity.java +++ b/app/src/main/java/com/abdurazaaqmohammed/AntiSplit/main/MainActivity.java @@ -115,12 +115,16 @@ public class MainActivity extends AppCompatActivity { private String suffix; private boolean systemTheme; + public void setRss(Resources rss) { + this.rss = rss; + } + private Resources rss; - private Handler handler; public Resources getRss() { return rss; } + private Handler handler; public Handler getHandler() { return handler; @@ -140,16 +144,19 @@ protected void onCreate(Bundle savedInstanceState) { WindowCompat.setDecorFitsSystemWindows(getWindow(), false); SharedPreferences settings = getSharedPreferences("set", Context.MODE_PRIVATE); - lang = settings.getString("lang", "en"); + + setContentView(R.layout.activity_main); + + String deviceLang = Locale.getDefault().getLanguage(); + boolean supportedLang = deviceLang.equals("ar") || deviceLang.equals("es") || deviceLang.equals("fr") || deviceLang.equals("in") || deviceLang.equals("it") || deviceLang.equals("pt-rBR") || deviceLang.equals("ru") || deviceLang.equals("tr") || deviceLang.equals("uk") || deviceLang.equals("vi"); + lang = settings.getString("lang", supportedLang ? deviceLang : "en"); if(lang.equals(Locale.getDefault().getLanguage())) rss = getResources(); - else LanguageUtil.updateMain(rss = LocaleHelper.setLocale(this, lang).getResources(), this); + else LanguageUtil.updateMain(LocaleHelper.setLocale(this, lang).getResources(), this); boolean dark = (rss.getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES; setTheme(theme = settings.getInt("theme", dark ? com.google.android.material.R.style.Theme_Material3_Dark_NoActionBar : com.google.android.material.R.style.Theme_Material3_Light_NoActionBar)); - setContentView(R.layout.activity_main); - if(theme == R.style.Theme_MyApp_Black) findViewById(R.id.main).setBackgroundColor(Color.BLACK); deviceSpecsUtil = new DeviceSpecsUtil(this); diff --git a/app/src/main/java/com/abdurazaaqmohammed/utils/LanguageUtil.java b/app/src/main/java/com/abdurazaaqmohammed/utils/LanguageUtil.java index 1e62578..1a134a8 100644 --- a/app/src/main/java/com/abdurazaaqmohammed/utils/LanguageUtil.java +++ b/app/src/main/java/com/abdurazaaqmohammed/utils/LanguageUtil.java @@ -15,6 +15,7 @@ public static void updateLang(Resources res, ScrollView settingsDialog, MainActi } public static void updateMain(Resources res, MainActivity context) { + context.setRss(res); context.findViewById(R.id.decodeButton).setText(res.getString(R.string.merge)); context.findViewById(R.id.fromAppsButton).setText(res.getString(R.string.select_from_installed_apps)); context.findViewById(R.id.settingsButton).setContentDescription(res.getString(R.string.settings));