From 8bd864c89588385d28e877b6cbd620c8a8b4e626 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 16:57:13 -0400 Subject: [PATCH 01/12] chore: Upgrade AGP plugin --- .idea/deploymentTargetSelector.xml | 10 ++++++++++ .idea/migrations.xml | 10 ++++++++++ build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 4 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 .idea/deploymentTargetSelector.xml create mode 100644 .idea/migrations.xml diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml new file mode 100644 index 0000000..b268ef3 --- /dev/null +++ b/.idea/deploymentTargetSelector.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/migrations.xml b/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index 18a93c4..62391f6 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:8.1.2' + classpath 'com.android.tools.build:gradle:8.6.0' // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0dd11d7..b753a83 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip From 7db88df146aedfe8d2ddbfd5ddb20a84388868cd Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 17:10:52 -0400 Subject: [PATCH 02/12] chore: Update targetSDK and dependencies --- app/build.gradle | 12 ++++++------ libs/SetupWizardLibrary | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 0f9c5d7..4a62e80 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -38,12 +38,12 @@ def getVersionName = { -> } android { - compileSdk 34 - buildToolsVersion = '34.0.0' + compileSdk 35 + buildToolsVersion = '35.0.0' defaultConfig { applicationId "net.typeblog.shelter" minSdkVersion 24 - targetSdkVersion 34 + targetSdkVersion 35 versionCode getVersionCode() versionName getVersionName() testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" @@ -76,11 +76,11 @@ android { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'androidx.legacy:legacy-support-core-ui:1.0.0' - implementation 'androidx.fragment:fragment:1.6.1' - implementation 'androidx.appcompat:appcompat:1.7.0-alpha03' + implementation 'androidx.fragment:fragment:1.8.4' + implementation 'androidx.appcompat:appcompat:1.7.0' implementation 'androidx.preference:preference:1.2.1' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation 'com.google.android.material:material:1.10.0' + implementation 'com.google.android.material:material:1.12.0' implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0' implementation 'mobi.upod:time-duration-picker:1.1.3' debugImplementation project(path: ':setup-wizard-lib', configuration: 'gingerbreadCompatDebugRuntimeElements') diff --git a/libs/SetupWizardLibrary b/libs/SetupWizardLibrary index 0fe8340..ae5ee4b 160000 --- a/libs/SetupWizardLibrary +++ b/libs/SetupWizardLibrary @@ -1 +1 @@ -Subproject commit 0fe8340267b8824d98bf0a923a77662efbed171a +Subproject commit ae5ee4b4a0fb380c99e05f53b753cc86b212f1dd From c06e64ffe8c3aa97ad3c55684a63469233074f33 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 17:14:45 -0400 Subject: [PATCH 03/12] [WIP] Disable time picker temporarily We need to rework this to use the MDC version --- app/build.gradle | 1 - .../net/typeblog/shelter/ui/SettingsFragment.java | 14 +++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 4a62e80..f7ae368 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -82,7 +82,6 @@ dependencies { implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'com.google.android.material:material:1.12.0' implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0' - implementation 'mobi.upod:time-duration-picker:1.1.3' debugImplementation project(path: ':setup-wizard-lib', configuration: 'gingerbreadCompatDebugRuntimeElements') releaseImplementation project(path: ':setup-wizard-lib', configuration: 'gingerbreadCompatReleaseRuntimeElements') testImplementation 'junit:junit:4.13.2' diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java index 85498b8..e557e85 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java @@ -20,10 +20,6 @@ import net.typeblog.shelter.services.IShelterService; import net.typeblog.shelter.util.SettingsManager; import net.typeblog.shelter.util.Utility; -import mobi.upod.timedurationpicker.TimeDurationPicker; -import mobi.upod.timedurationpicker.TimeDurationPickerDialogFragment; -import mobi.upod.timedurationpicker.TimeDurationUtil; - public class SettingsFragment extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener { private static final String SETTINGS_VERSION = "settings_version"; private static final String SETTINGS_SOURCE_CODE = "settings_source_code"; @@ -120,9 +116,9 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer } private void updateAutoFreezeDelay() { - mPrefAutoFreezeDelay.setSummary(TimeDurationUtil.formatMinutesSeconds( + /*mPrefAutoFreezeDelay.setSummary(TimeDurationUtil.formatMinutesSeconds( ((long) mManager.getAutoFreezeDelay()) * 1000 - )); + ));*/ } private boolean openSummaryUrl(Preference pref) { @@ -133,7 +129,7 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer } private boolean openAutoFreezeDelayPicker(Preference pref) { - new AutoFreezeDelayPickerFragment().show(getActivity().getFragmentManager(), "dialog"); + //new AutoFreezeDelayPickerFragment().show(getActivity().getFragmentManager(), "dialog"); return true; } @@ -235,7 +231,7 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer } } - public static class AutoFreezeDelayPickerFragment extends TimeDurationPickerDialogFragment { + /*public static class AutoFreezeDelayPickerFragment extends TimeDurationPickerDialogFragment { @Override protected long getInitialDuration() { return ((long) SettingsManager.getInstance().getAutoFreezeDelay()) * 1000; @@ -252,5 +248,5 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer if (seconds >= Integer.MAX_VALUE) return; SettingsManager.getInstance().setAutoFreezeDelay((int) seconds); } - } + }*/ } From 1c4101ba2f7d85087873d3d4f4b60802c46d8f52 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 17:37:53 -0400 Subject: [PATCH 04/12] ui: Handle system bar insets in SetupWizardActivity --- .../shelter/ui/SetupWizardActivity.java | 24 +++++++++++++++++++ .../main/res/layout/activity_setup_wizard.xml | 22 +++++++++++++---- 2 files changed, 42 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/net/typeblog/shelter/ui/SetupWizardActivity.java b/app/src/main/java/net/typeblog/shelter/ui/SetupWizardActivity.java index 8785570..64512fa 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SetupWizardActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SetupWizardActivity.java @@ -1,11 +1,15 @@ package net.typeblog.shelter.ui; +import androidx.activity.EdgeToEdge; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContract; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.core.content.ContextCompat; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; import androidx.fragment.app.Fragment; import android.app.admin.DevicePolicyManager; @@ -44,6 +48,7 @@ public class SetupWizardActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { + EdgeToEdge.enable(this); super.onCreate(savedInstanceState); // The user could click on the "finish provisioning" notification while having removed // this activity from the recents stack, in which case the notification will start a new @@ -219,6 +224,25 @@ public class SetupWizardActivity extends AppCompatActivity { mWizard.setLayoutBackground(ContextCompat.getDrawable(inflater.getContext(), R.color.colorAccent)); return view; } + + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + ViewCompat.setOnApplyWindowInsetsListener(mWizard, (v, windowInsets) -> { + Insets insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()); + + mWizard.setDecorPaddingTop(insets.top); + + NavigationBar nav = mWizard.getNavigationBar(); + ViewGroup.LayoutParams params = nav.getLayoutParams(); + params.height += insets.bottom; + + nav.setLayoutParams(params); + + nav.setPadding(nav.getPaddingLeft(), nav.getPaddingTop(), nav.getPaddingRight(), insets.bottom); + return WindowInsetsCompat.CONSUMED; + }); + } } protected static abstract class TextWizardFragment extends BaseWizardFragment { diff --git a/app/src/main/res/layout/activity_setup_wizard.xml b/app/src/main/res/layout/activity_setup_wizard.xml index 5c6ab51..44d8c48 100644 --- a/app/src/main/res/layout/activity_setup_wizard.xml +++ b/app/src/main/res/layout/activity_setup_wizard.xml @@ -1,8 +1,22 @@ - \ No newline at end of file + xmlns:app="http://schemas.android.com/apk/res-auto"> + + + + \ No newline at end of file From 9e0f2306a8312f335ae730bafcdafae80d7ec7df Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 17:47:58 -0400 Subject: [PATCH 05/12] ui: Handle system bar insets using AppBarLayout --- app/src/main/res/layout/activity_main.xml | 1 + app/src/main/res/layout/activity_settings.xml | 2 ++ 2 files changed, 3 insertions(+) diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 9ef7b47..0f3e417 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -8,6 +8,7 @@ From da45e570cad7287b1c271583af014eb9a8aa627c Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 20:17:04 -0400 Subject: [PATCH 06/12] ui: Use a DropDownPreference for auto freeze delay and limit maximum to 5 minutes while we are at it --- .../typeblog/shelter/ui/SettingsFragment.java | 43 ++++++------------- app/src/main/res/values/strings.xml | 3 ++ app/src/main/res/xml/preferences_settings.xml | 2 +- 3 files changed, 18 insertions(+), 30 deletions(-) diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java index e557e85..c531759 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java @@ -12,6 +12,7 @@ import android.provider.Settings; import androidx.appcompat.app.AlertDialog; import androidx.preference.CheckBoxPreference; +import androidx.preference.DropDownPreference; import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; @@ -20,6 +21,8 @@ import net.typeblog.shelter.services.IShelterService; import net.typeblog.shelter.util.SettingsManager; import net.typeblog.shelter.util.Utility; +import java.util.Arrays; + public class SettingsFragment extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener { private static final String SETTINGS_VERSION = "settings_version"; private static final String SETTINGS_SOURCE_CODE = "settings_source_code"; @@ -33,6 +36,8 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer private static final String SETTINGS_SKIP_FOREGROUND = "settings_dont_freeze_foreground"; private static final String SETTINGS_PAYMENT_STUB = "settings_payment_stub"; + private static final int[] AUTO_FREEZE_DELAY_SECONDS = new int[]{0, 60, 2 * 60, 5 * 60}; + private SettingsManager mManager = SettingsManager.getInstance(); private IShelterService mServiceWork = null; @@ -42,7 +47,7 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer private CheckBoxPreference mPrefSkipForeground = null; private CheckBoxPreference mPrefPaymentStub = null; - private Preference mPrefAutoFreezeDelay = null; + private DropDownPreference mPrefAutoFreezeDelay = null; @Override public void onCreatePreferences(Bundle bundle, String s) { @@ -85,7 +90,9 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer mPrefAutoFreezeService.setChecked(mManager.getAutoFreezeServiceEnabled()); mPrefAutoFreezeService.setOnPreferenceChangeListener(this); mPrefAutoFreezeDelay = findPreference(SETTINGS_AUTO_FREEZE_DELAY); - mPrefAutoFreezeDelay.setOnPreferenceClickListener(this::openAutoFreezeDelayPicker); + mPrefAutoFreezeDelay.setOnPreferenceChangeListener(this); + mPrefAutoFreezeDelay.setEntries(Arrays.stream(AUTO_FREEZE_DELAY_SECONDS).mapToObj((it) -> getString(R.string.format_minutes, it / 60)).toArray(String[]::new)); + mPrefAutoFreezeDelay.setEntryValues(Arrays.stream(AUTO_FREEZE_DELAY_SECONDS).mapToObj(String::valueOf).toArray(String[]::new)); updateAutoFreezeDelay(); mPrefSkipForeground = (CheckBoxPreference) findPreference(SETTINGS_SKIP_FOREGROUND); mPrefSkipForeground.setChecked(mManager.getSkipForegroundEnabled()); @@ -116,9 +123,7 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer } private void updateAutoFreezeDelay() { - /*mPrefAutoFreezeDelay.setSummary(TimeDurationUtil.formatMinutesSeconds( - ((long) mManager.getAutoFreezeDelay()) * 1000 - ));*/ + mPrefAutoFreezeDelay.setSummary(getString(R.string.format_minutes, mManager.getAutoFreezeDelay() / 60)); } private boolean openSummaryUrl(Preference pref) { @@ -128,11 +133,6 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer return true; } - private boolean openAutoFreezeDelayPicker(Preference pref) { - //new AutoFreezeDelayPickerFragment().show(getActivity().getFragmentManager(), "dialog"); - return true; - } - @Override public boolean onPreferenceChange(Preference preference, Object newState) { if (preference == mPrefCrossProfileFileChooser) { @@ -184,6 +184,10 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer } else if (preference == mPrefAutoFreezeService) { mManager.setAutoFreezeServiceEnabled((boolean) newState); return true; + } else if (preference == mPrefAutoFreezeDelay) { + mManager.setAutoFreezeDelay(Integer.parseInt((String) newState)); + updateAutoFreezeDelay(); + return true; } else if (preference == mPrefSkipForeground) { boolean enabled = (boolean) newState; if (!enabled) { @@ -230,23 +234,4 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer return true; } } - - /*public static class AutoFreezeDelayPickerFragment extends TimeDurationPickerDialogFragment { - @Override - protected long getInitialDuration() { - return ((long) SettingsManager.getInstance().getAutoFreezeDelay()) * 1000; - } - - @Override - protected int setTimeUnits() { - return TimeDurationPicker.MM_SS; - } - - @Override - public void onDurationSet(TimeDurationPicker view, long duration) { - long seconds = duration / 1000; - if (seconds >= Integer.MAX_VALUE) return; - SettingsManager.getInstance().setAutoFreezeDelay((int) seconds); - } - }*/ } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 573039d..0f364d7 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -114,4 +114,7 @@ Cloning non-system apps to another profile is currently not possible on MIUI. Please clone your system\'s app store (e.g. Play Store) into the other profile and then install apps from there. Continue anyway + + + %d min diff --git a/app/src/main/res/xml/preferences_settings.xml b/app/src/main/res/xml/preferences_settings.xml index 2935234..5a92094 100644 --- a/app/src/main/res/xml/preferences_settings.xml +++ b/app/src/main/res/xml/preferences_settings.xml @@ -30,7 +30,7 @@ android:title="@string/settings_auto_freeze_service" android:summary="@string/settings_auto_freeze_service_desc" /> - From bdfd8c29be0ed03e280fd5abe53005d624bf0948 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 20:22:39 -0400 Subject: [PATCH 07/12] ui: Handle bottom insets in SettingsFragment --- .../typeblog/shelter/ui/SettingsFragment.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java index c531759..8cbbce0 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsFragment.java @@ -9,8 +9,14 @@ import android.os.Build; import android.os.Bundle; import android.os.RemoteException; import android.provider.Settings; +import android.view.View; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.appcompat.app.AlertDialog; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; import androidx.preference.CheckBoxPreference; import androidx.preference.DropDownPreference; import androidx.preference.Preference; @@ -49,6 +55,16 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Prefer private DropDownPreference mPrefAutoFreezeDelay = null; + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + ViewCompat.setOnApplyWindowInsetsListener(view.findViewById(androidx.preference.R.id.recycler_view), (v, windowInsets) -> { + Insets insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()); + v.setPaddingRelative(0, 0, 0, insets.bottom); + return WindowInsetsCompat.CONSUMED; + }); + } + @Override public void onCreatePreferences(Bundle bundle, String s) { addPreferencesFromResource(R.xml.preferences_settings); From 7adae7f070a702c40185523623fc3da2520cbdb3 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 20:23:18 -0400 Subject: [PATCH 08/12] ui: Enable EdgeToEdge globally --- app/src/main/java/net/typeblog/shelter/ui/MainActivity.java | 2 ++ app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java b/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java index 15d8049..0c6d4d1 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/MainActivity.java @@ -14,6 +14,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.widget.Toast; +import androidx.activity.EdgeToEdge; import androidx.activity.result.ActivityResult; import androidx.activity.result.ActivityResultLauncher; import androidx.activity.result.contract.ActivityResultContracts; @@ -74,6 +75,7 @@ public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { + EdgeToEdge.enable(this); super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setSupportActionBar(findViewById(R.id.main_toolbar)); diff --git a/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java b/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java index 435a38d..b0ce5a5 100644 --- a/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java +++ b/app/src/main/java/net/typeblog/shelter/ui/SettingsActivity.java @@ -2,6 +2,7 @@ package net.typeblog.shelter.ui; import android.os.Bundle; +import androidx.activity.EdgeToEdge; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; @@ -10,6 +11,7 @@ import net.typeblog.shelter.R; public class SettingsActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { + EdgeToEdge.enable(this); super.onCreate(savedInstanceState); setContentView(R.layout.activity_settings); setSupportActionBar(findViewById(R.id.settings_toolbar)); From a4189c914893f0c6025bb07875eab2cbfff822e5 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sat, 5 Oct 2024 20:29:47 -0400 Subject: [PATCH 09/12] ui: Use accent 0 as background --- app/src/main/res/values-v31/colors.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values-v31/colors.xml b/app/src/main/res/values-v31/colors.xml index 73ebb01..ea8e98d 100644 --- a/app/src/main/res/values-v31/colors.xml +++ b/app/src/main/res/values-v31/colors.xml @@ -1,6 +1,6 @@ - @android:color/system_accent1_10 + @android:color/system_accent1_0 @android:color/system_accent1_500 @android:color/system_accent3_500 @android:color/system_accent1_100 From d61d741ebe0aefa0cbb271ab9caefc8ddcbb8b09 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Tue, 8 Oct 2024 21:00:39 -0400 Subject: [PATCH 10/12] Add monochrome launcher icons --- .../ic_launcher_egg_foreground_monochrome.xml | 35 ++++++++++ .../res/mipmap-anydpi-v31/ic_launcher_egg.xml | 13 ++++ .../ic_launcher_egg_round.xml | 13 ++++ art/egg_f_monochrome.svg | 69 +++++++++++++++++++ 4 files changed, 130 insertions(+) create mode 100644 app/src/main/res/drawable/ic_launcher_egg_foreground_monochrome.xml create mode 100644 app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg.xml create mode 100644 app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg_round.xml create mode 100644 art/egg_f_monochrome.svg diff --git a/app/src/main/res/drawable/ic_launcher_egg_foreground_monochrome.xml b/app/src/main/res/drawable/ic_launcher_egg_foreground_monochrome.xml new file mode 100644 index 0000000..2271135 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_egg_foreground_monochrome.xml @@ -0,0 +1,35 @@ + + + + + + + + + diff --git a/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg.xml b/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg.xml new file mode 100644 index 0000000..172e313 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg.xml @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg_round.xml b/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg_round.xml new file mode 100644 index 0000000..172e313 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v31/ic_launcher_egg_round.xml @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/art/egg_f_monochrome.svg b/art/egg_f_monochrome.svg new file mode 100644 index 0000000..a6e25e6 --- /dev/null +++ b/art/egg_f_monochrome.svg @@ -0,0 +1,69 @@ + + + + + + + egg_f + + + + + + + + From 3f33f87167dafc80bb5e501808e5a71479816c51 Mon Sep 17 00:00:00 2001 From: NXTGENCAT Date: Sun, 20 Oct 2024 11:51:33 +0000 Subject: [PATCH 11/12] Translated using Weblate (Telugu) Currently translated at 96.0% (96 of 100 strings) Translation: Shelter/Shelter Translate-URL: http://weblate.typeblog.net/projects/shelter/shelter/te/ --- app/src/main/res/values-te/strings.xml | 215 ++++++++++++++----------- 1 file changed, 120 insertions(+), 95 deletions(-) diff --git a/app/src/main/res/values-te/strings.xml b/app/src/main/res/values-te/strings.xml index a9e9937..d04230e 100644 --- a/app/src/main/res/values-te/strings.xml +++ b/app/src/main/res/values-te/strings.xml @@ -4,99 +4,124 @@ కొనసాగించు యాప్ ఐసోలేషన్ సర్వీస్ షెల్టర్ దాని ఐసోలేషన్ విధులను నిర్వహించడానికి డివైస్ అడ్మిన్ గా మారాలి. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + యాప్ %sని ప్రారంభించలేరు, ఎందుకంటే దానికి GUI లేదు. + మీ స్క్రీన్‌ను లాక్ చేయడం సమయంలో ముందంజ యాప్‌లను (కనిపించే కార్యకలాపం ఉన్న) ఫ్రిజ్ చేయకండి. ఇది సంగీత ప్లేయర్‌ల వంటి యాప్‌లకు ఉపయోగకరంగా ఉండవచ్చు, కానీ తర్వాత \"బ్యాచ్ ఫ్రిజ్ షార్ట్‌కట్\" ద్వారా వాటిని చేతితో ఫ్రిజ్ చేయాలి. + ఫైల్ షట్ల్ + ఇన్‌స్టాల్ చేయబడుతోంది... + అనుమతి నిరాకరించబడింది లేదా మద్దతు పొందని పరికరం + అనువాదం + దయచేసి వేచి ఉండండి… + [ఫ్రోజెన్] %s + మేము ఇప్పుడు మీ కోసం షెల్టర్‌ని సెటప్ చేయడానికి సిద్ధంగా ఉన్నాము. మీ పరికరం Android 7 లేదా అంతకంటే తక్కువగా నడుస్తోంటే, మొదట మీ పరికరం \"Do Not Disturb\" మోడ్‌లో లేదని నిర్ధారించుకోండి, ఎందుకంటే మీరు సెటప్ ప్రక్రియను పూర్తి చేయడానికి తర్వాత ఒక నోటిఫికేషన్‌పై క్లిక్ చేయాలి. +\n +\nమీరు సిద్ధంగా ఉన్నప్పుడు, సెటప్ ప్రక్రియ ప్రారంభించడానికి \"తదుపరి\"పై క్లిక్ చేయండి. + కార్య ప్రొఫైల్‌లోని సంప్రదింపులకు ప్రధాన ప్రొఫైల్ నుండి యాక్సెస్‌ను తిరస్కరించండి. + చెల్లింపు సేవ స్టబ్ (ఉపయోగించవద్దు) + \"షెల్టర్\" అనేది ఇతర యాప్‌లను వేరుప్రొఫైల్‌లో నడపడంలో మీకు సహాయం చేసే యాప్. ఇది ఆండ్రాయిడ్‌లోని వర్క్ ప్రొఫైల్ ఫీచర్‌ను ఉపయోగించడం ద్వారా పని చేస్తుంది. +\n +\n\"తదుపరి\"ను క్లిక్ చేయండి, మేము మీకు షెల్టర్ గురించి మరిన్ని వివరాలు అందించాము మరియు సెటప్ ప్రక్రియలో మిమ్మల్ని మార్గనిర్దేశం చేస్తాము. +\n +\nక్రింది పేజీలన్నీ జాగ్రత్తగా చదవాలని మేము సిఫార్సు చేస్తాము. + ఇంటరాక్షన్ + అభినందనలు! షెల్టర్‌ని సెటప్ చేయడం పూర్తి చేయడానికి మీరు ఒక్క క్లిక్ దూరంలో ఉన్నారు. + జాబితాలోని దాచిన యాప్‌లను మానిప్యులేట్ చేయడం వల్ల క్రాష్‌లు మరియు వివిధ రకాల అనూహ్య ప్రవర్తనలు కలిగించవచ్చు. అయితే, ఫాల్టీ విక్రేత-కస్టమైజ్డ్ ROMలు వర్క్ ప్రొఫైల్‌లో అన్ని అవసరమైన సిస్టమ్ యాప్లను డిఫాల్ట్‌గా ఎనేబుల్ చేయని సమయంలో ఈ ఫీచర్ ఉపయోగకరంగా ఉండవచ్చు. మీరు కొనసాగితే, మీరు మీ స్వంతంగా ఉంటారు. + సంప్రదింపుల అన్వేషణను అడ్డుకోండి + ఇది ఎనేబుల్ చేసినప్పుడు, మీరు షెల్టర్‌లో ఫైల్‌లను బ్రౌజ్ / వీక్షించడానికి / ఎంచుకోవడానికి / కాపీ చేయడానికి ప్రధాన ప్రొఫైల్ నుండి మరియు పునాదిగా, డాక్యుమెంట్స్ UI (మీ లాంచర్‌లో ఫైల్‌లు లేదా డాక్యుమెంట్స్ అని పిలవబడుతుంది) లేదా డాక్యుమెంట్స్ UI మద్దతు ఉన్న అనువర్తనాలను మాత్రమే ఉపయోగించి చేసుకోగలరు (అవి డాక్యుమెంట్స్ UIలో మీరు ఎంచుకున్న ఫైల్‌లకు తాత్కాలిక యాక్సెస్ పొందుతాయి), అయితే ఫైల్ సిస్టమ్ ఆర్థికంగా ఇన్సొలేషన్‌ను ఉంచుతుంది. + షెల్టర్ సెటప్ పూర్తి. ఇప్పుడు షెల్టర్‌ను పునఃప్రారంభించటం జరుగుతోంది. షెల్టర్ ఆటోమేటిక్‌గా ప్రారంభమైతే, మీ లాంచర్ నుండి మళ్లీ ప్రారంభించవచ్చు. + ప్రధాన ప్రొఫైల్‌లో ఒక జట్టుపై NFC చెల్లింపు సేవను ఎనేబుల్ చేయండి, తద్వారా సెట్టింగ్‌లలో - NFC క్రింద ఉన్న నిర్లక్ష్య చెల్లింపుల ఎంపిక ఎనేబుల్ అవుతుంది, ఇది మీకు వర్క్ ప్రొఫైల్‌లో చెల్లింపు అనువర్తనాన్ని ఎంచుకోవడానికి అనుమతిస్తుంది. ఇది ప్రధాన ప్రొఫైల్‌లో అందుబాటులో లేదు అంటే వర్క్ ప్రొఫైల్‌లో చెల్లింపు అనువర్తనాన్ని ఎంచుకోవడం అసాధ్యమైన ఆండ్రాయిడ్ బగ్‌ను చుట్టుకుంటుంది. + బ్యాచ్ ఫ్రీజ్ + షెల్టర్ ముఖ్యమైనది + అనువర్తనం \"%s\" విజయవంతంగా ఫ్రిజ్ చేయబడింది + షెల్టర్‌కు ఫైల్ షటిల్ సరిగ్గా పనిచేయడానికి ఇతర యాప్‌లపై డ్రా చేయడం అవసరం. \"ఓకే\" బటన్‌ను నొక్కిన తర్వాత డైలాగ్‌లో చూపించిన రెండు (వ్యక్తిగత / వర్క్) షెల్టర్ యాప్‌లకు ఈ అనుమతిని ఎనేబుల్ చేయండి. ఈ అనుమతి ఫైల్ షటిల్ సేవలను బ్యాక్‌గ్రౌండ్‌లో ప్రారంభించడానికి ఉపయోగించబడుతుంది. + + మీరు ఇప్పుడు షెల్టర్ నుండి ఒక నోటిఫికేషన్‌ను చూడాలి. దయచేసి ఆ నోటిఫికేషన్‌ను నొక్కండి సెటప్ ప్రక్రియను ముగించడానికి. +\n +\nమీరు నోటిఫికేషన్‌ను చూడకపోతే, మీ పరికరం \"డో నాట్ డిస్టర్బ్\" మోడ్‌లో లేదు అని నిర్ధారించుకోండి మరియు నోటిఫికేషన్ సెంటర్‌ను కిందకి పుల్లండి. +\n +\nషెల్టర్‌ను రీసెట్ చేసి మళ్లీ ప్రారంభించడానికి, సెటింగ్స్‌లో షెల్టర్ యొక్క డేటాను క్లియర్ చేయవచ్చు. + బ్యాచ్ ఫ్రీజ్ సత్వరం సృష్టించండి + షెల్టర్ (వర్క్ ప్రొఫైల్)కి క్లోన్ చేయండి + ప్రధాన ప్రొఫైల్‌లో విజెట్‌లను అనుమతించండి + \"ఆటో ఫ్రిజ్\" జాబితాలోని అన్ని యాప్‌లు విజయవంతంగా ఫ్రిజ్ చేయబడ్డాయి. + ఇప్పుడు ఫ్రీజ్ చేయండి + బగ్ నివేదిక / ఇష్యూ ట్రాకర్ + అన్‌ఇన్‌స్టాల్ చేయండి + + అనుకూలత + ఆటో-ఫ్రీజ్ పెండింగ్‌లో ఉంది + క్రాస్-ప్రొఫైల్ ఇంటరాక్షన్‌ను అనుమతించండి + గురించి + మేము మీ కోసం షెల్టర్‌ను సెటప్ చేయలేకపోయామని మీకు తెలియజేయడానికి మాకు దురదృష్టం ఉంది. +\n +\nమీ పరికరంలో ఇప్పటికే ఒక వర్క్ ప్రొఫైల్ ఉంటే, అది షెల్టర్ యొక్క గత ఇన్స్టాలేషన్ లేదా మరొక అనువర్తనంలోనూ, షెల్టర్ ముందుకు సాగడానికి ముందు దాన్ని సెటింగ్‌లలో -> ఖాతా ద్వారా తొలగించాలి. +\n +\nలేకపోతే, మీరు సెటప్‌ను చేతితో రద్దు చేయకపోతే, సెటప్ విఫలమైన కారణం సాధారణంగా చాలా మార్పులు చేసిన సిస్టమ్ లేదా షెల్టర్ మరియు ఇతర వర్క్ ప్రొఫైల్ మేనేజర్ల మధ్య సంకర్షణగా ఉంటుంది. దురదృష్టవశాత్తు, దీనిపై మేము చేసేMuch చేయడం లేదు. +\n +\nమీరైతే \"తదుపరి\"పై క్లిక్ చేసి బయటకు వెళ్ళండి. + MIUIలో మరో ప్రొఫైలుకు నాన్-సిస్టమ్ యాప్‌లను క్లోన్ చేయడం ప్రస్తుతం సాధ్యం కాదు. దయచేసి మీ సిస్టమ్ యొక్క యాప్ స్టోర్ (ఉదాహరణకు, ప్లే స్టోర్)ని ఇతర ప్రొఫైలుకు క్లోన్ చేసి, అక్కడ నుండి యాప్‌లను ఇన్‌స్టాల్ చేయండి. + + షెల్టర్ సేవ + బ్యాచ్ ఆపరేషన్ + అన్‌ఫ్రీజ్ చేసి ప్రారంభించండి + సేవలు + ఆటో ఫ్రిజ్ సేవ + వర్క్ ప్రొఫైల్‌ను అందుబాటులోకి తీసుకోలేకపోతున్నాము. షెల్టర్‌ను పునఃప్రారంభించి మళ్లీ ప్రయత్నించండి. + షెల్టర్ తదుపరి స్క్రీన్ లాక్ ఈవెంట్‌లో \"అన్‌ఫ్రీజ్ & లాంచ్\" నుండి ప్రారంభించబడిన యాప్‌లను ఆటో-ఫ్రీజ్ చేస్తుంది. + అనువర్తనం \"%s\" విజయవంతంగా అన్‌ఇన్‌స్టాల్ చేయబడింది + అన్‌ఫ్రిజ్ + షెల్టర్ కంట్రోల్ లో లేని ప్రొఫైల్‌కు సిస్టమ్ యాప్‌లను క్లోన్ చేయలేరు. + సెటప్ విఫలమైంది + వర్క్ ప్రొఫైల్ కనుగొనబడలేదు. ప్రొఫైల్‌ను మళ్లీ అందుబాటులోకి తీసుకురావడానికి దయచేసి యాప్‌ను పునఃప్రారంభించండి. + అనువర్తనం \"%s\" విజయవంతంగా అన్‌ఫ్రిజ్ చేయబడింది + వర్షన్ + అన్‌ఫ్రిజ్ మరియు/లేదా ప్రారంభ Shortcut‌ని సృష్టించు + షెల్టర్‌కు ఫైల్ షటిల్ కోసం అన్ని ఫైళ్లకు ప్రాప్యత అవసరం. \"ఓకే\" బటన్‌ను నొక్కిన తర్వాత డైలాగ్‌లో చూపించిన రెండు (వ్యక్తిగత / వర్క్) షెల్టర్ యాప్‌లకు ఈ అనుమతిని ఎనేబుల్ చేయండి. + డాక్యుమెంట్స్ UIని తెరువు + మేము మీ పరికరంలో వర్క్ ప్రొఫైల్‌ను ప్రారంభించడానికి మరియు షెల్టర్‌ను సెటప్ చేయడానికి ప్రయత్నిస్తున్నాము. + ప్రారంభించు + డిఫాల్ట్‌గా, షెల్టర్ ఏ వ్యక్తిగత అనుమతులను అడగదు. అయితే, మీరు సెటప్ ప్రక్రియను కొనసాగించిన తర్వాత, షెల్టర్ వర్క్ ప్రొఫైల్‌ను సెటప్ చేయడానికి ప్రయత్నిస్తుంది, అందువల్ల పేర్కొన్న ప్రొఫైల్‌కు ప్రొఫైల్ మేనేజర్ గా మారుతుంది. +\n +\nదీని ద్వారా షెల్టర్‌కు ఆ ప్రొఫైల్‌లో పరికర పరిపాలకుడి (డివైస్ అడ్మిన్) అనుమతులకు సమానమైన విస్తృత అనుమతుల జాబితా లభిస్తుంది, అయితే అవి ఆ ప్రొఫైల్‌కు మాత్రమే పరిమితమవుతాయి. షెల్టర్ యొక్క మెజారిటీ ఫీచర్ల కోసం ప్రొఫైల్ మేనేజర్‌గా ఉండటం అవసరం. +\n +\nషెల్టర్ యొక్క కొన్ని అధునాతన ఫీచర్లు వర్క్ ప్రొఫైల్ బయట మరిన్ని అనుమతులను అవసరం కావచ్చు. అవసరమైనప్పుడు, మీరు సంబంధిత ఫీచర్‌లను ప్రారంభించినప్పుడు, షెల్టర్ ఆ అనుమతులను వేరుగా అడుగుతుంది. + షెల్టర్ + షెల్టర్‌లో APK ఇన్‌స్టాల్ చేయండి + అనువర్తనం \"%s\" విజయవంతంగా క్లోన్ చేయబడింది + మీరు షెల్టర్‌ను ప్రారంభించే సమయానికి వర్క్ మోడ్‌ను అడ్డించారు అనిపిస్తోంది. మీరు ఇప్పుడు దీన్ని ఎనేబుల్ చేసినట్లయితే, దయచేసి షెల్టర్‌ను మళ్లీ ప్రారంభించండి. + + సోర్స్ కోడ్ + శోధించండి + మీ లాంచర్‌కు షార్ట్‌కట్స్‌ను జోడించలేరు. మరింత సమాచారం కోసం దయచేసి డెవలపర్‌ను సంప్రదించండి. + ఆటో ఫ్రీజ్ + షెల్టర్ ఇప్పుడు నడుస్తోంది… + ఆటో ఫ్రిజ్ ఆలస్యం + షెల్టర్ AOSP లాంటి ఆండ్రాయిడ్ డెరివేటివ్‌లపై అభివృద్ధి చేయబడింది మరియు పరీక్షించబడింది. ఇందులో AOSP (ఆండ్రాయిడ్ ఓపెన్ సోర్స్ ప్రాజెక్ట్), Google Android (Pixelsపై), మరియు LineageOS వంటి AOSP ఆధారిత ఓపెన్ సోర్స్ కస్టమ్ ROMలు ఎక్కువగా ఉన్నాయి. మీ ఫోన్ పై ఉంచిన ఆండ్రాయిడ్ డెరివేటివ్‌లలో ఏదైనా ఉంటే, అభినందనలు! షెల్టర్ మీ పరికరంలో సరిగా పనిచేసే అవకాశం ఉంది. +\n +\nకొంతమంది పరికర తయారీదారులు ఆండ్రాయిడ్ కోడ్ బేస్‌లో చాలా దూకుడైన అనుకూలీకరణలు ప్రవేశపెడతారు, ఇది సంగర్షణలు, అనుకూలత సమస్యలు మరియు అనూహ్య ప్రవర్తనకు కారణమవుతుంది. కొంతమంది కస్టమ్ ROMలు కూడా అనుకూలతను విచ్ఛిన్నం చేసే మార్పులను ప్రవేశపెట్టవచ్చు, కానీ సాధారణంగా ఇవి ఫోన్ తయారీదారుల మార్పులతో పోలిస్తే చాలా అరుదుగా జరుగుతాయి. +\n +\nషెల్టర్ కేవలం సిస్టమ్ అందించే వర్క్ ప్రొఫైల్ ఫీచర్‌కు ఇన్టర్ఫేస్ మాత్రమే. సిస్టమ్ అందించే ఫీచర్ పనిచేయకపోతే లేదా ప్రామాణికం కాకపోతే, షెల్టర్ స్వతహాగా ఆ సమస్యను పరిష్కరించలేము. మీరు ప్రస్తుతం వర్క్ ప్రొఫైల్‌లను విరమించడానికి ప్రసిద్ధి చెందిన విక్రేత-మార్పుచేసిన ఆండ్రాయిడ్ వర్షన్‌ను ఉపయోగిస్తున్నట్లయితే, మీకు హెచ్చరిక ఇచ్చాము. అయినప్పటికీ మీరు కొనసాగవచ్చు, కానీ ఈ పరిస్థితులలో షెల్టర్ సరైన ప్రవర్తనకాని గ్యారంటీ లేదు. + షెల్టర్‌ని సెటప్ చేయడానికి ఇక్కడ క్లిక్ చేయండి + షెల్టర్‌కు ఇది చేయడానికి ఉపయోగం స్థితులు అనుమతి అవసరం. \"ఓకే\" బటన్‌ను నొక్కిన తర్వాత డైలాగ్‌లో చూపిన రెండు షెల్టర్ యాప్‌లకు ఈ అనుమతిని ఎనేబుల్ చేయండి. అది చేయనట్లయితే, ఈ ఫీచర్ సరిగ్గా పనిచేయదు. + + అనుమతుల గురించి ఒక మాట + వర్క్ ప్రొఫైల్‌లో అప్లికేషన్ ఇన్‌స్టాలేషన్ పూర్తి చేయబడింది. + ప్రధాన + మీ లాంచర్‌పై షార్ట్‌కట్ సృష్టించబడింది. + సెట్టింగ్స్ + ముఖ్యమైన యాప్‌లను తొలగించు + చెల్లింపు సేవ స్టబ్ + %s కోసం ఆపరేషన్స్ + షెల్టర్ కంట్రోల్ లో లేని ప్రొఫైల్‌లో సిస్టమ్ యాప్‌లను అన్‌ఇన్‌స్టాల్ చేయలేరు. + ఏదైనా కొనసాగించండి + + ఫ్రిజ్ + వీడ్కోలు + సిద్ధంగా ఉన్నారా? + + స్క్రీన్ లాక్ అయినప్పుడు, \"అన్‌ఫ్రిజ్ & లాంచ్ షార్ట్‌కట్\" నుండి ప్రారంభించిన యాప్‌లను ఆటోమేటిక్‌గా ఫ్రిజ్ చేయండి. + ప్రధాన ప్రొఫైల్‌కి క్లోన్ చేయండి + అన్ని యాప్‌లను చూపించు + + ఫ్రీజ్ చేయండి + %d నిమిషాలు \ No newline at end of file From 831c3753f205c4c8c1cd5bbb1f24e56b9d52eb76 Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Tue, 12 Nov 2024 17:59:32 -0500 Subject: [PATCH 12/12] i18n: Remove empty translations I don't know why Weblate decided to do this --- app/src/main/res/values-ar/strings.xml | 22 ----- app/src/main/res/values-ast/strings.xml | 11 --- app/src/main/res/values-bn/strings.xml | 98 --------------------- app/src/main/res/values-cs/strings.xml | 7 -- app/src/main/res/values-de/strings.xml | 7 -- app/src/main/res/values-el/strings.xml | 11 --- app/src/main/res/values-es/strings.xml | 11 --- app/src/main/res/values-fa/strings.xml | 11 --- app/src/main/res/values-fr/strings.xml | 11 --- app/src/main/res/values-id/strings.xml | 7 -- app/src/main/res/values-it/strings.xml | 11 --- app/src/main/res/values-iw/strings.xml | 11 --- app/src/main/res/values-ja/strings.xml | 11 --- app/src/main/res/values-ko/strings.xml | 7 -- app/src/main/res/values-nl/strings.xml | 46 ---------- app/src/main/res/values-pl/strings.xml | 11 --- app/src/main/res/values-pt-rBR/strings.xml | 11 --- app/src/main/res/values-ro/strings.xml | 11 --- app/src/main/res/values-ru-rRU/strings.xml | 7 -- app/src/main/res/values-sr/strings.xml | 7 -- app/src/main/res/values-sv/strings.xml | 11 --- app/src/main/res/values-ta/strings.xml | 99 ---------------------- app/src/main/res/values-tr/strings.xml | 11 --- app/src/main/res/values-uk/strings.xml | 90 -------------------- app/src/main/res/values-vi/strings.xml | 11 --- app/src/main/res/values-zh-rCN/strings.xml | 11 --- app/src/main/res/values-zh-rTW/strings.xml | 11 --- 27 files changed, 573 deletions(-) diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 30a3539..9a582c5 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -84,26 +84,4 @@ \nانقر \"التالي\"، وسنوفر لك المزيد من المعلومات حول العازل، وسترشدك خلال عملية الإعداد. \n \nنقترح عليك قراءة جميع الصفحات التالية بعناية. - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ast/strings.xml b/app/src/main/res/values-ast/strings.xml index c3a7be9..d2ed64c 100644 --- a/app/src/main/res/values-ast/strings.xml +++ b/app/src/main/res/values-ast/strings.xml @@ -110,15 +110,4 @@ \nEsto concede a Shelter una llista estensa de permisos dientro del perfil, comparable al d\'un xestor del preséu, magar que aislaos nesi perfil. Ser el xestor del perfil ye un requirimientu pa la mayoría de funciones de Shelter. \n \nDalgunes carauterístiques de Shelter puen riquir más permisos fuera del perfil de trabayu. Cuando seya\'l momentu, Shelter va pidir esos permisos per separtao al activar les carauterístiques correspondientes. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-bn/strings.xml b/app/src/main/res/values-bn/strings.xml index 1f204bb..0ee310c 100644 --- a/app/src/main/res/values-bn/strings.xml +++ b/app/src/main/res/values-bn/strings.xml @@ -1,102 +1,4 @@ বিদায় - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 3bf763f..0483f3a 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -117,11 +117,4 @@ Shelter potřebuje oprávnění Statistiky využití pro provedení této akce. Prosím povolte oprávnění pro OBĚ DVĚ aplikace Shelteru zobrazené v dialogu poté, co stisnete \"Ok\". Pokud tak neučiníte, tato funkce nebude fungovat správně. Shelter potřebuje přístup ke všem souborům pro funkci Výměny souborů. Prosím, udělte oprávnění pro OBĚ DVĚ (Osobní / Pracovní) aplikace Shelter zobrazené v dialogu poté, co stisknete \"Ok\". Klonování nesystémových aplikací do jiného profilu není v tuto chvíli v MIUI k dispozici. Prosím, naklonujte systémový obchod s aplikacemi (např. Obchod Play) do druhého profilu a aplikace instalujte z něj. - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index ee1f5cf..6c10fd2 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -127,11 +127,4 @@ Zahlungsdienst Platzhalter (NICHT VERWENDEN) Zahlungsdienst-Platzhalter Richten Sie einen unechten NFC Zahlungsdienst im Hauptprofil ein, so dass die kontaktlosen Zahlungsoptionen unter Einstellungen - NFC aktiviert werden. So kann ein Zahlungsanbieter im Arbeitsprofil eingerichtet und gewählt werden. Damit wird ein Fehler in Android umgangen, der es unmöglich macht, im Arbeitsprofil einen Zahlungsanbieter auszuwählen, wenn kein Zahlungsdienst im Hauptprofil verfügbar ist. - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index a9fdba3..af900c5 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -112,15 +112,4 @@ Shelter [Παγωμένο] %s Το Shelter θα παγώσει αυτόματα εφαρμογές που εκκινούνται με την επιλογή \"Ξεπάγωσε και τρέξε\" την επόμενη φορά που θα κλειδώσει η οθόνη της συσκευής. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index ad24263..7625746 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -112,15 +112,4 @@ Cuando la pantalla esta bloqueada, automáticamente suspende las aplicaciones iniciadas con \"Acceso directo a Reanudar e iniciar\". Omitir aplicaciones de fondo Acerca de - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index 5e44bfa..52f63f5 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -112,15 +112,4 @@ شلتر نیازمند نمایش روی دیگر برنامه‌ها است تا شاتل فایل به درستی عمل کند. لطفا پس از زدن روی \"Ok\" در دیالوگ نمایش داده شده این دسترسی را برای هر دوی برنامه‌های شلتر فعال کنید. این دسترسی امکان راه‌اندازی سرویس‌های شاتل فایل در پس زمینه را میدهد. کپی کردن برنامه‌های سیستمی به پروفایل دیگر در حال حاضر در MIUI امکان‌پذیر نیست. لطفا اپلیکیشن فروشگاه برنامه‌های سیستم خود (مانند Play Store) را به یک پروفایل دیگر کپی کنید سپس برنامه‌ها را از آنجا نصب کنید. ادامه دادن - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 9d4ebd0..7fa9161 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -121,15 +121,4 @@ Nous sommes maintenant prêts à configurer Shelter pour vous. Veuillez d\'abord vous assurer que votre appareil n\'est pas en mode Ne pas déranger, car vous devrez cliquer sur une notification plus tard pour finaliser le processus de configuration. \n \nLorsque vous serez prêt(e), cliquez sur \"Suivant\" pour commencer le processus de configuration. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-id/strings.xml b/app/src/main/res/values-id/strings.xml index 6be8f8b..fc095ac 100644 --- a/app/src/main/res/values-id/strings.xml +++ b/app/src/main/res/values-id/strings.xml @@ -116,11 +116,4 @@ Rintisan Layanan Pembayaran Aktifkan layanan pembayaran NFC palsu di profil utama, sehingga opsi pembayaran nirsentuh di bawah Pengaturan - NFC diaktifkan untuk memungkinkan Anda memilih aplikasi pembayaran di dalam profil kerja. Ini mengatasi bug Android yang membuat aplikasi pembayaran di dalam profil kerja tidak dapat dipilih jika tidak ada yang tersedia di profil utama. Izinkan Interaksi Lintas Profil - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 3d9f907..20cf890 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -121,15 +121,4 @@ \nCiò darà a Shelter numerose autorizzazioni all\'interno del profilo, comparabili a quelle di un admin di dispositivo, ma pur sempre confinate nel profilo. Essere l\'amministratore del profilo è necessario perché Shelter funzioni correttamente. \n \nAlcune funzioni avanzate di Shelter potrebbero richiedere più autorizzazioni fuori dal Profilo di Lavoro. Se necessarie, Shelter le richiederà separatamente quando attivi le funzioni corrispondenti. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml index ed39b2a..db71e65 100644 --- a/app/src/main/res/values-iw/strings.xml +++ b/app/src/main/res/values-iw/strings.xml @@ -112,15 +112,4 @@ Shelter זקוק להרשאת סטטיסטיקות שימוש כדי לעשות זאת. אנא הפעל את ההרשאה עבור אפליקציות מקלט שתיים המוצגות בתיבת הדו-שיח לאחר לחיצה על \"אישור\". אם לא תעשה זאת, תכונה זו לא תפעל כראוי. Shelter זקוק לגישה אל כל הקבצים עבור סייר הקבצים. אנא הפעל את ההרשאה עבור יישומי מקלט שניים (אישי / עבודה) המוצגים בתיבת הדו-שיח לאחר לחיצה על \"אישור\". Shelter צריך לצייר מעל אפליקציות אחרות כדי ש-File Shuttle יפעל כהלכה. אנא הפעל את ההרשאה עבור יישומי מקלט שניים (אישי / עבודה) המוצגים בתיבת הדו-שיח לאחר לחיצה על \"אישור\". הרשאה זו משמשת להפעלת שירותי File Shuttle ברקע. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 68218f9..88f6735 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -123,15 +123,4 @@ \nそうでなければ、あなたが途中でセットアップをキャンセルしたわけではない場合、失敗の原因は、システムが大きく変更されているか、Shelterと他の仕事用プロファイルマネージャーとの間で競合が発生していることがほとんどです。残念ながら、これに対してできることはあまりありません。 \n \nNext \"をタップして終了します。 - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 601dc13..2f2f517 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -116,11 +116,4 @@ 개인 프로필에 모의 NFC 결제 서비스를 추가하여 [설정] - [NFC]의 비접촉 결제 옵션을 활성화합니다. 개인 프로필에 설치된 결제 앱이 없을 경우 직장 프로필에 있는 앱의 비접촉 결제 서비스 사용이 불가능한 Android 상 버그를 우회하기 위한 기능입니다. 프로필 간 상호 동작 허용 모의 결제 서비스 - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 88bf4f1..a0960f1 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -84,50 +84,4 @@ Auto-bevriezen in afwachting Intellingen Verbied de toegang van het hoofdprofiel tot contacten in het werkprofiel. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index bb93c1d..90a16c2 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -121,15 +121,4 @@ \n \nBy zresetować Sheltera i zacząć od nowa możesz wyczyścić dane Sheltera w Ustawieniach. Gotowy/a? - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 7183e86..b8553dd 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -123,15 +123,4 @@ \nSe você não vê a notificação, certifique-se de que seu dispositivo não está no modo \"Não Perturbe\" e tente recuperar ela da área de notificações deslizando de cima para baixo. \n \nPara reiniciar o Shelter e começar de novo, você pode limpar os dados em Configurações do app. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index 5b46708..2580b95 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -123,15 +123,4 @@ \nÎn caz contrar, dacă nu ați anulat manual configurarea, atunci motivul eșecului este cel mai frecvent din cauza unui sistem puternic modificat sau a unui conflict între Shelter și alți manageri de profil de lucru. Din păcate, nu am putea face mare lucru în acest sens. \n \nFaceți clic pe „Next” pentru a ieși. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ru-rRU/strings.xml b/app/src/main/res/values-ru-rRU/strings.xml index a9afb29..c63a5b0 100644 --- a/app/src/main/res/values-ru-rRU/strings.xml +++ b/app/src/main/res/values-ru-rRU/strings.xml @@ -127,11 +127,4 @@ Разрешить работу между профилями Чтобы получить возможность выбрать платёжное приложение внутри рабочего профиля в Настройки - NFC, включите фальшивый платёжный сервис NFC в основном профиле. Это временное решение ошибки Android, из-за которой невозможно выбрать платёжное приложение внутри рабочего профиля, если в основном профиле таких нет. Заглушка платёжных сервисов - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index 52ba070..d0ec32b 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -116,11 +116,4 @@ \nНеке напредне функције Шелтера ће можда захтевати више дозвола ван радног профила. Када је потребно, Шелтер ће тражити те дозволе засебно када омогућите одговарајуће функције. Када је омогућено, моћи ћете да разгледате / прегледате / бирате / копирате датотеке у Шелтеру са главног профила и обрнуто, САМО преко УИ докумената (названих Датотеке или Документи на вашем покретачу) или апликација са подршком УИ докумената (оне добијају само привремени приступ датотекама које одаберете у УИ докумената), док се даље одржава изолација система датотека. Омогућите лажну НФЦ услугу плаћања у главном профилу, тако да опција бесконтактног плаћања у оквиру Подешавања - НФЦ постане омогућена да Вам дозволи да изаберете апликацију за плаћање унутар радног профила. Ово функционише око Андроид грешке која онемогућава одабир апликације за плаћање унутар радног профила ако ниједна није доступна у главном профилу. - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index bccc3b2..bf4fb2b 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -112,15 +112,4 @@ [Frusen] %s Klona till Shelter (arbetsprofil) Shelter måste Rita över andra appar för att File Shuttle ska fungera korrekt. Vänligen aktivera behörigheten för BÅDA TVÅ Shelter-appar som visas i dialogrutan efter att du tryckt på \"OK\". Denna behörighet används för att kunna starta File Shuttle-tjänster i bakgrunden. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml index 675c5c4..e4db719 100644 --- a/app/src/main/res/values-ta/strings.xml +++ b/app/src/main/res/values-ta/strings.xml @@ -3,103 +3,4 @@ நீங்கள் இப்பொழுது ஷெல்டர் ஆப் செட் பண்ண போகிறீர்கள் \n \nஇந்த ஆப் உங்கள் போனில் உள்ள வொர்க் ப்ரோஃபைல் வசதியை பயன்படுத்தி மத்த ஆப்களை ஐசலேட் பண்ணும் - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index a3b90b4..0e870fe 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -112,15 +112,4 @@ Dosya Köprüsü özelliğini kullanmak için Shelter\'ın Tüm Dosyalara erişmesi gerekiyor. Lütfen \"Tamam\" seçeneğine tıkladıktan sonra İKİ SHELTER UYGULAMASINA DA (Kişisel / İş) bu izni verin. Dosya Köprüsü özelliğinin düzgün bir şekilde çalışabilmesi için Shelter\'ın Diğer Uygulamalar Üzerinde Göster iznine ihtiyacı var. Lütfen \"Tamam\" seçeneğine tıkladıktan sonra İKİ SHELTER UYGULAMASINA DA (Kişisel / İş) bu izni verin. Söz konusu izin, Dosya Köprüsü hizmetlerini arkaplanda başlatmak için kullanılır. Bu özelliği kullanmak için Shelter\'ın Kullanım Erişimi iznine ihtiyacı var. Lütfen \"Tamam\" seçeneğine tıkladıktan sonra İKİ SHELTER UYGULAMASINA DA (Kişisel / İş) bu izni verin, aksi takdirde söz konusu özellik düzgün bir şekilde çalışmayabilir. - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 8972939..0a12b46 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -13,94 +13,4 @@ \nМи рекомендуємо вам уважно прочитати всі наступні сторінки. Ми намагаємося ініціалізувати Work Profile та налаштувати Shelter на вашому пристрої. Shelter - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 2ae7406..6bf32d3 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -112,15 +112,4 @@ Shelter cần Hiện trên các ứng dụng khác để Chia sẻ tệp hoạt động đúng. Vui lòng bật quyền đó cho CẢ HAI ứng dụng Shelter (Cá nhân / Công việc) được hiện trong hộp thoại sau khi bạn nhấn \"Ok\". Quyền này được sử dụng để khởi động các dịch vụ Chia sẻ tệp trong nền. Việc nhân bản các ứng dụng không phải hệ thống vào một hồ sơ khác hiện chưa làm được trên MIUI. Vui lòng nhân bản cửa hàng ứng dụng của hệ thống (vd: CH Play) vào hồ sơ khác đó và sau đó là cài đặt các ứng dụng từ đó. Vẫn tiếp tục - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 0e3a60b..11e7a3e 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -122,15 +122,4 @@ \n如果您没有看到通知,请确保您的设备未处于“请勿打扰”模式并尝试下拉通知中心。 \n \n要重置 Shelter 并重新开始,您可以在设置中清除 Shelter 的数据。 - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index b1295b9..f7cb99b 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -123,15 +123,4 @@ \n \n單擊下一步退出。 需要採取的行動 - - - - - - - - - - - \ No newline at end of file