UpdatesPreference: Setup auto-updates

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
Aayush Gupta
2023-12-18 11:08:53 +05:30
parent 97b145e2e5
commit 59309783b1
41 changed files with 108 additions and 111 deletions

View File

@@ -8,6 +8,7 @@ import android.content.Intent
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationCompat.FOREGROUND_SERVICE_IMMEDIATE
import androidx.core.content.pm.PackageInfoCompat
import androidx.hilt.work.HiltWorker
import androidx.work.Constraints
import androidx.work.CoroutineWorker
import androidx.work.ExistingPeriodicWorkPolicy.KEEP
@@ -17,6 +18,7 @@ import androidx.work.PeriodicWorkRequestBuilder
import androidx.work.WorkManager
import androidx.work.WorkerParameters
import com.aurora.Constants
import com.aurora.extensions.isMAndAbove
import com.aurora.gplayapi.data.models.App
import com.aurora.gplayapi.data.models.AuthData
import com.aurora.gplayapi.helpers.AppDetailsHelper
@@ -26,50 +28,58 @@ import com.aurora.store.R
import com.aurora.store.data.network.HttpClient
import com.aurora.store.data.providers.AuthProvider
import com.aurora.store.data.providers.BlacklistProvider
import com.aurora.store.util.DownloadWorkerUtil
import com.aurora.store.util.Log
import com.aurora.store.util.PackageUtil
import com.aurora.store.util.Preferences
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_AUTO
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_CHECK_INTERVAL
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
import java.util.concurrent.TimeUnit.HOURS
import java.util.concurrent.TimeUnit.MINUTES
class UpdateWorker(private val appContext: Context, workerParams: WorkerParameters) :
CoroutineWorker(appContext, workerParams) {
@HiltWorker
class UpdateWorker @AssistedInject constructor(
val downloadWorkerUtil: DownloadWorkerUtil,
@Assisted private val appContext: Context,
@Assisted workerParams: WorkerParameters
) : CoroutineWorker(appContext, workerParams) {
companion object {
private const val WORK_NAME_CHECK = "WORK_NAME_CHECK"
private const val UPDATE_WORKER = "UPDATE_WORKER"
fun cancelAutomatedCheck(context: Context) {
Log.i("Cancelling periodic app updates check!")
WorkManager.getInstance(context)
.cancelUniqueWork(WORK_NAME_CHECK)
Log.i("Cancelling periodic app updates!")
WorkManager.getInstance(context).cancelUniqueWork(UPDATE_WORKER)
}
fun scheduleAutomatedCheck(context: Context) {
Log.i("Scheduling periodic app updates check!")
Log.i("Scheduling periodic app updates!")
val updateCheckInterval = Preferences.getInteger(
context,
Preferences.PREFERENCE_UPDATES_CHECK_INTERVAL,
PREFERENCE_UPDATES_CHECK_INTERVAL,
3
).toLong()
val constraints = Constraints.Builder()
.setRequiredNetworkType(NetworkType.UNMETERED)
.setRequiresDeviceIdle(true)
.setRequiresBatteryNotLow(true)
.build()
if (isMAndAbove()) constraints.setRequiresDeviceIdle(true)
val workRequest = PeriodicWorkRequestBuilder<UpdateWorker>(
repeatInterval = updateCheckInterval,
repeatIntervalTimeUnit = HOURS,
flexTimeInterval = 30,
flexTimeIntervalUnit = MINUTES
).setConstraints(constraints).build()
).setConstraints(constraints.build()).build()
val workManager = WorkManager.getInstance(context)
workManager.enqueueUniquePeriodicWork(WORK_NAME_CHECK, KEEP, workRequest)
workManager.enqueueUniquePeriodicWork(UPDATE_WORKER, KEEP, workRequest)
}
}
@@ -94,6 +104,14 @@ class UpdateWorker(private val appContext: Context, workerParams: WorkerParamete
}
override suspend fun doWork(): Result {
val autoUpdatesMode = Preferences.getInteger(appContext, PREFERENCE_UPDATES_AUTO, 3)
// Exit if auto-updates is turned off in settings
if (autoUpdatesMode == 0) {
Log.i("Auto-updates is disabled, bailing out!")
return Result.failure()
}
withContext(Dispatchers.IO) {
if (!isValid(authData)) {
@@ -136,10 +154,15 @@ class UpdateWorker(private val appContext: Context, workerParams: WorkerParamete
}
if (updatesList.isNotEmpty()) {
if (autoUpdatesMode == 2) {
Log.i("Found updates, notifying!")
val notifyManager = appContext.getSystemService(Context.NOTIFICATION_SERVICE)
as NotificationManager
notifyManager.notify(notificationID, getUpdateNotification(updatesList))
} else {
Log.i("Found updates, updating!")
updatesList.forEach { downloadWorkerUtil.enqueueApp(it) }
}
return@withContext Result.success()
}

View File

@@ -62,6 +62,7 @@ object Preferences {
const val PREFERENCE_VENDING_VERSION = "PREFERENCE_VENDING_VERSION"
const val PREFERENCE_UPDATES_EXTENDED = "PREFERENCE_UPDATES_EXTENDED"
const val PREFERENCE_UPDATES_AUTO = "PREFERENCE_UPDATES_AUTO"
const val PREFERENCE_UPDATES_CHECK = "PREFERENCE_UPDATES_CHECK"
const val PREFERENCE_UPDATES_CHECK_INTERVAL = "PREFERENCE_UPDATES_CHECK_INTERVAL"

View File

@@ -56,7 +56,7 @@ import com.aurora.store.util.Preferences.PREFERENCE_SELF_UPDATE
import com.aurora.store.util.Preferences.PREFERENCE_SIMILAR
import com.aurora.store.util.Preferences.PREFERENCE_THEME_ACCENT
import com.aurora.store.util.Preferences.PREFERENCE_THEME_TYPE
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_CHECK
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_AUTO
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_CHECK_INTERVAL
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_EXTENDED
import com.aurora.store.util.Preferences.PREFERENCE_VENDING_VERSION
@@ -190,7 +190,7 @@ class OnboardingFragment : Fragment(R.layout.fragment_onboarding) {
/*Updates*/
save(PREFERENCE_UPDATES_EXTENDED, false)
save(PREFERENCE_UPDATES_CHECK, true)
save(PREFERENCE_UPDATES_AUTO, 2)
save(PREFERENCE_UPDATES_CHECK_INTERVAL, 3)
save(
PREFERENCE_SELF_UPDATE,

View File

@@ -23,15 +23,21 @@ import android.os.Bundle
import android.view.View
import androidx.appcompat.widget.Toolbar
import androidx.navigation.fragment.findNavController
import androidx.preference.ListPreference
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.SeekBarPreference
import androidx.preference.SwitchPreferenceCompat
import com.aurora.store.BuildConfig
import com.aurora.store.R
import com.aurora.store.data.work.UpdateWorker
import com.aurora.store.util.CertUtil
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_CHECK
import com.aurora.store.util.Preferences
import com.aurora.store.util.Preferences.PREFERENCE_SELF_UPDATE
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_AUTO
import com.aurora.store.util.Preferences.PREFERENCE_UPDATES_CHECK_INTERVAL
import com.aurora.store.util.save
import com.aurora.store.view.custom.preference.ListPreferenceMaterialDialogFragmentCompat
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
@@ -40,6 +46,9 @@ class UpdatesPreference : PreferenceFragmentCompat() {
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
setPreferencesFromResource(R.xml.preferences_updates, rootKey)
findPreference<SeekBarPreference>(PREFERENCE_UPDATES_CHECK_INTERVAL)?.isEnabled =
Preferences.getInteger(requireContext(), PREFERENCE_UPDATES_AUTO, 3) != 0
findPreference<SwitchPreferenceCompat>(PREFERENCE_SELF_UPDATE)?.let {
if (CertUtil.isFDroidApp(requireContext(), BuildConfig.APPLICATION_ID)) {
it.isVisible = false
@@ -51,17 +60,32 @@ class UpdatesPreference : PreferenceFragmentCompat() {
}
}
findPreference<SwitchPreferenceCompat>(PREFERENCE_UPDATES_CHECK)
findPreference<ListPreference>(PREFERENCE_UPDATES_AUTO)
?.setOnPreferenceChangeListener { _, newValue ->
if (newValue.toString().toBoolean()) {
UpdateWorker.scheduleAutomatedCheck(requireContext())
} else {
UpdateWorker.cancelAutomatedCheck(requireContext())
when (newValue.toString().toInt()) {
0 -> UpdateWorker.cancelAutomatedCheck(requireContext())
else -> UpdateWorker.scheduleAutomatedCheck(requireContext())
}
findPreference<SeekBarPreference>(PREFERENCE_UPDATES_CHECK_INTERVAL)?.isEnabled =
newValue.toString().toInt() != 0
true
}
}
override fun onDisplayPreferenceDialog(preference: Preference) {
if (preference is ListPreference) {
val dialogFragment =
ListPreferenceMaterialDialogFragmentCompat.newInstance(preference.getKey())
dialogFragment.setTargetFragment(this, 0)
dialogFragment.show(
parentFragmentManager,
ListPreferenceMaterialDialogFragmentCompat.PREFERENCE_DIALOG_FRAGMENT_TAG
)
} else {
super.onDisplayPreferenceDialog(preference)
}
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
view.findViewById<Toolbar>(R.id.toolbar)?.apply {

View File

@@ -321,8 +321,6 @@
<string name="notification_updates_available_desc_1">يتوفر أصدار جديد من <xliff:g id="app_one_name">%1$s</xliff:g> متاح</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> والمزيد <xliff:g id="apps_count">%4$d</xliff:g></string>
<string name="checking_for_updates">التحقق من وجود تحديثات</string>
<string name="pref_updates_check">التحقق من التحديثات تلقائيا</string>
<string name="pref_updates_check_desc">إجراء فحص آلي \" لإشعار بالتحديثات الجديدة \" بصورة دورية</string>
<string name="notification_channel_updates">إشعارات التحديثات</string>
<string name="notification_updates_available_1">تحديث <xliff:g id="apps_count"> %1$d </xliff:g> متوفر</string>
<string name="notification_updates_available">تحديثات <xliff:g id="apps_count"> %1$d </xliff:g> متوفرة</string>

View File

@@ -183,8 +183,6 @@
<string name="downloading_dep">Изтегляне на допълнителни файлове за <xliff:g id="app">%1$s</xliff:g></string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> и <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="checking_for_updates">Проверяване за актуализации</string>
<string name="pref_updates_check">Автоматична проверка на актуализациите</string>
<string name="pref_updates_check_desc">Периодично проверявайте и уведомявайте за нови актуализации на приложения</string>
<string name="installer_am_unavailable">Инсталирайте App Manager или сменете инсталатора.</string>
<string name="onboarding_installer_select">Изберете подходящ инсталатор</string>
<string name="action_pause">Пауза</string>

View File

@@ -321,8 +321,6 @@
<string name="notification_channel_updates">Oznámení o aktualizacích</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> dostupná aktualizace</string>
<string name="checking_for_updates">Kontrola aktualizací</string>
<string name="pref_updates_check">Automatická kontrola aktualizací</string>
<string name="pref_updates_check_desc">Automatická kontrola a pravidelné upozorňování na nové aktualizace aplikací</string>
<string name="notification_updates_available_desc_1">Je dostupná nová verze aplikace <xliff:g id="app_one_name">%1$s</xliff:g></string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> a <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> a <xliff:g id="app_three_name">%3$s</xliff:g></string>

View File

@@ -329,8 +329,6 @@
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> und <xliff:g id="apps_count">%4$d</xliff:g> weitere</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> vorhandene Updates</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> und <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="pref_updates_check">Automatische Update-Überprüfung</string>
<string name="pref_updates_check_desc">Regelmäßige automatische Prüfung und Benachrichtigung zu neuen App-Updates</string>
<string name="access_denied_using_vpn">Zugriff verweigert! Verwendest du ein VPN oder Tor\?</string>
<string name="login_rate_limited">Hoppla, deine Anfragehäufigkeit ist begrenzt</string>
<string name="failed_to_fetch_report">Datenschutzbericht konnte nicht abgerufen werden</string>

View File

@@ -322,8 +322,6 @@
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> y <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> y <xliff:g id="apps_count">%4$d</xliff:g> más</string>
<string name="checking_for_updates">Comprobando las actualizaciones</string>
<string name="pref_updates_check">Comprobación automática de actualizaciones</string>
<string name="pref_updates_check_desc">Comprobación automática y notificación periódica de nuevas actualizaciones de la aplicación</string>
<string name="notification_channel_updates">Notificaciones de actualizaciones</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> actualizaciones disponibles</string>
<string name="notification_updates_available_desc_1">Una nueva versión de <xliff:g id="app_one_name">%1$s</xliff:g> está disponible</string>

View File

@@ -327,9 +327,7 @@
<string name="checking_for_updates">بررسی برای به روز رسانی</string>
<string name="notification_updates_available_1">به‌روزرسانی <xliff:g id="apps_count">%1$d</xliff:g> در دسترس است</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>، <xliff:g id="app_two_name">%2$s</xliff:g> و <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="pref_updates_check">بررسی به روز رسانی خودکار</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>، <xliff:g id="app_two_name">%2$s</xliff:g>، <xliff:g id="app_three_name">%3$s</xliff:g> و <xliff:g id="apps_count">%4$d</xliff:g> بیشتر</string>
<string name="pref_updates_check_desc">بررسی خودکار و اطلاع رسانی برای به روز رسانی های جدید برنامه به صورت دوره ای</string>
<string name="app_links_desc">به فروشگاه آرورا اجازه دهید پیوندهای پشتیبانی شده را باز کند</string>
<string name="title_search_suggestion">پیشنهاد جستجو</string>
<string name="title_search_results">نتایج جستجو</string>

View File

@@ -323,9 +323,7 @@
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> ja <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> päivitys saatavilla</string>
<string name="checking_for_updates">Päivitysten tarkistaminen</string>
<string name="pref_updates_check">Automaattinen päivitysten tarkistus</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> ja <xliff:g id="apps_count">%4$d</xliff:g> lisää</string>
<string name="pref_updates_check_desc">Tarkista ja ilmoita uusista sovelluspäivityksistä automaattisesti säännöllisesti</string>
<string name="pref_install_mode_shizuku">Shizukun asennusohjelma</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> päivitystä saatavilla</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> ja <xliff:g id="app_three_name">%3$s</xliff:g></string>

View File

@@ -321,13 +321,11 @@
<string name="notification_updates_available_desc_1">Une nouvelle version de <xliff:g id="app_one_name">%1$s</xliff:g> est disponible</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> et <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="checking_for_updates">Vérification des mises à jour</string>
<string name="pref_updates_check">Vérification automatisée des mises à jour</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> et <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> mises à jour disponibles</string>
<string name="installer_shizuku_unavailable">Shizuku nest pas installé ou configuré correctement.</string>
<string name="pref_install_mode_shizuku">Installateur Shizuku</string>
<string name="notification_channel_updates">Notifications de mise à jour</string>
<string name="pref_updates_check_desc">Vérifier et notifier automatiquement les nouvelles mises à jour de lapplication à intervalles réguliers</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> mise à jour disponible</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> et <xliff:g id="apps_count">%4$d</xliff:g> plus</string>
<string name="title_search_suggestion">Suggestion de recherche</string>

View File

@@ -324,7 +324,6 @@
<string name="title_search_results">Resultados da busca</string>
<string name="notification_updates_available_desc_1">Unha nova versión de <xliff:g id="app_one_name">%1$s</xliff:g> está dispoñíbel</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> e <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="pref_updates_check_desc">Verificar e notificar novas versións das aplicacións periodicamente</string>
<string name="failed_to_fetch_report">Non foi posíbel obter o informe de privacidade</string>
<string name="access_denied_using_vpn">Acceso denegado! Está a usar unha VPN ou Tor\?</string>
<string name="bad_request">Erro interno! Por favor, volva intentalo máis tarde</string>
@@ -332,7 +331,6 @@
<string name="server_unreachable">Servidor inaccesíbel</string>
<string name="installer_shizuku_unavailable">Shuzuku non está instalado ou configurado correctamente.</string>
<string name="pref_install_mode_shizuku">Instalador Shizuku</string>
<string name="pref_updates_check">Verificación automática de actualizacións</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> actualizacións dispoñíbeis</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> e <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> actualización dispoñíbel</string>

View File

@@ -358,14 +358,12 @@
<string name="pref_filter_search_summary">פילטרים בחיפוש מתאספים בכל חיפוש. כבה כדי לשמור את הפילטרים בחיפוש</string>
<string name="onboarding_permission_notifications_desc">שלח התראות לגבי מצב ההתקנה</string>
<string name="action_uninstall_confirmation">‏האם אתה רוצה להסיר את היישום הזה?</string>
<string name="pref_updates_check_desc">אוטומטית בדוק והודיע על עדכון חדש ליישום תקופתית</string>
<string name="android_market_desc">החנות של אנדרואיד היתה חנות אונליין שמציעה אפליקציות שעוצבו למכשירי אנדרואיד, עד 2017.</string>
<string name="about_xda_summary">הצג את העמוד של Aurora Store בפורום XDA לשוחח ולהציע הצעות.</string>
<string name="about_bhim">BHIM - UPI</string>
<string name="permissions_denied">ההרשאות הנדרשות נדחו. אנא אשר אותן בשביל המשך הפעולה</string>
<string name="access_denied_using_vpn">גישה נדחתה! אתה משתמש ב-VPN או Tor?</string>
<string name="pref_abandon_session_desc">הסר התקנות מושהות או נטושות</string>
<string name="pref_updates_check">חיפוש עדכונים אוטומטית</string>
<string name="pref_downloader_wifi_title">הורד רק דרך WiFi</string>
<string name="app_language">שפת האפליקציה</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> ו <xliff:g id="app_two_name">%2$s</xliff:g></string>

View File

@@ -328,8 +328,6 @@
<string name="notification_channel_updates">अपडेटस की सूचना</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> अपडेटस उपलब्ध हैं</string>
<string name="notification_updates_available_desc_1"><xliff:g id="app_one_name">%1$s</xliff:g> का नया संस्करण उपलब्ध है</string>
<string name="pref_updates_check">स्वचालित अपडेटस जाँच</string>
<string name="pref_updates_check_desc">नए ऐप अपडेट के लिए समय-समय पर स्वचालित रूप से जाँच करें और सूचित करें</string>
<string name="bad_request">आंतरिक त्रुटि! कृपया कुछ समय बाद पुनः प्रयास करें</string>
<string name="title_search_suggestion">खोज सुझाव</string>
<string name="title_search_results">खोज परिणाम</string>

View File

@@ -310,12 +310,10 @@
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> és <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> és <xliff:g id="apps_count">%4$d</xliff:g> mégtöbb</string>
<string name="checking_for_updates">Frissítések keresése</string>
<string name="pref_updates_check">Automatikus frissítések ellenőrzése</string>
<string name="failed_to_fetch_report">Nem sikerült lekérni az adatvédelmi jelentést</string>
<string name="access_denied_using_vpn">Hozzáférés megtagadva! VPN-t vagy Tor-t használ\?</string>
<string name="bad_request">Belső hiba! Kérjük, próbálja meg később</string>
<string name="login_rate_limited">Hoppá, limitálva vagy</string>
<string name="pref_updates_check_desc">Elérhető alkalmazás frissítések automatikus ellenőrzése és értesítése periodikusan</string>
<string name="expand">Bővebben</string>
<string name="search_hint">Alkalmazások és játékok keresése</string>
<string name="spoof_property"><xliff:g id="manufacturer">%1$s</xliff:g> • API <xliff:g id="api">%2$s</xliff:g></string>

View File

@@ -147,7 +147,6 @@
<string name="pref_updates_check_frequency">Frequentia de actualisationes automatic</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> e <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> actualisationes disponibile</string>
<string name="pref_updates_check">Verification automatic de applicationes</string>
<string name="app_language">Lingua del application</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> e <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="tab_trending">Tendentias</string>

View File

@@ -320,7 +320,6 @@
<string name="action_import">Impor</string>
<string name="downloading_dep">Mengunduh berkas tambahan untuk <xliff:g id="app">%1$s</xliff:g></string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> pembaruan tersedia</string>
<string name="pref_updates_check_desc">Secara otomatis memeriksa &amp; memberi tahu pembaruan aplikasi baru secara berkala</string>
<string name="installer_shizuku_unavailable">Shizuku tidak terpasang atau belum diatur dengan benar.</string>
<string name="toast_import_success">Konfigurasi perangkat diimpor</string>
<string name="toast_import_failed">Tidak dapat mengimpor konfigurasi perangkat</string>
@@ -329,7 +328,6 @@
<string name="checking_for_updates">Mengecek pembaruan</string>
<string name="notification_updates_available_desc_1">Versi terbaru <xliff:g id="app_one_name">%1$s</xliff:g> sudah tersedia</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> dan <xliff:g id="apps_count">%4$d</xliff:g> lainnya</string>
<string name="pref_updates_check">Cek pembaruan otomatis</string>
<string name="title_search_suggestion">Saran pencarian</string>
<string name="title_search_results">Hasil pencarian</string>
<string name="access_denied_using_vpn">Akses ditolak! Apakah Anda menggunakan VPN atau Tor\?</string>

View File

@@ -320,8 +320,6 @@
<string name="session_login">Prima effettua laccesso</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> aggiornamenti disponibili</string>
<string name="checking_for_updates">Controllo degli aggiornamenti</string>
<string name="pref_updates_check">Controllo automatico degli aggiornamenti</string>
<string name="pref_updates_check_desc">Controlla automaticamente e notifica periodicamente i nuovi aggiornamenti delle applicazioni</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> e <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="pref_install_mode_shizuku">Installatore Shizuku</string>
<string name="installer_shizuku_unavailable">Shizuku non è installato o impostato correttamente.</string>

View File

@@ -325,8 +325,6 @@
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g>個の更新があります</string>
<string name="notification_updates_available_desc_1">新しいバージョンがあります: <xliff:g id="app_one_name">%1$s</xliff:g></string>
<string name="checking_for_updates">更新を確認しています</string>
<string name="pref_updates_check">自動更新チェック</string>
<string name="pref_updates_check_desc">アプリの更新を自動で確認して通知する</string>
<string name="toast_import_success">デバイス設定をインポートしました</string>
<string name="toast_import_failed">デバイス設定をインポートできませんでした</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g></string>

View File

@@ -305,7 +305,6 @@
<string name="onboarding_permission_notifications_desc">Siųsti pranešimus apie įdiegimo būseną</string>
<string name="action_uninstall_confirmation">Ar norite pašalinti šią programėlę\?</string>
<string name="access_denied_using_vpn">Prieiga negalima! Ar jūs naudojate VPN arba Tor\?</string>
<string name="pref_updates_check">Automatinis atnaujinimų tikrinimas</string>
<string name="app_language">Programėlės kalba</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> ir <xliff:g id="app_two_name">%2$s</xliff:g></string>
</resources>

View File

@@ -300,8 +300,6 @@
<string name="checking_for_updates">Pārbauda, vai ir pieejami atjauninājumi</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>,<xliff:g id="app_two_name">%2$s</xliff:g> un <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> un vēl <xliff:g id="apps_count">%4$d</xliff:g></string>
<string name="pref_updates_check">Automātiska atjauninājumu pārbaudīšana</string>
<string name="pref_updates_check_desc">Automātiski un regulāri pārbauda un paziņo par jauniem lietotņu atjauninājumiem</string>
<string name="onboarding_permission_esm">Ārējās krātuves pārvaldnieks</string>
<string name="onboarding_permission_esa_desc">Lai saglabātu lejupielādes (APK un OBB), jāizgūst un jāievieto ierīces konfigurācijas no ārējās krātuves.</string>
<string name="onboarding_permission_notifications">Paziņojumi</string>

View File

@@ -305,7 +305,6 @@
<string name="updates_available">updates beschikbaar</string>
<string name="update_available">update beschikbaar</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> update beschikbaar</string>
<string name="pref_updates_check_desc">Automatisch regelmatig controleren &amp; melden voor nieuwe app-updates</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> en <xliff:g id="apps_count">%4$d</xliff:g> more</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> en <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="spoof_property"><xliff:g id="manufacturer">%1$s</xliff:g> • API <xliff:g id="api">%2$s</xliff:g></string>
@@ -329,7 +328,6 @@
<string name="notification_updates_available_desc_1">Een nieuwere versie van <xliff:g id="app_one_name">%1$s</xliff:g> is beschikbaar</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> en <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="checking_for_updates">Controleren op updates</string>
<string name="pref_updates_check">Automatische controle voor updates</string>
<string name="check_connectivity">Controleer internetconnectiviteit</string>
<string name="app_language">App Taal</string>
<string name="app_link_enabled">App-link ingeschakeld!</string>

View File

@@ -322,10 +322,8 @@
<string name="ui_accent_10">ਸੰਤਰੀ</string>
<string name="ui_accent_11">ਹਲਕਾ ਨੀਲਾ</string>
<string name="ui_accent_12">ਵੈਂਗਣੀ ਨੀਲਾ</string>
<string name="pref_updates_check_desc">ਸਮੇਂ-ਸਮੇਂ \'ਤੇ ਨਵੇਂ ਐਪ ਅੱਪਡੇਟ ਲਈ ਆਟੋਮੈਟਿਕ ਜਾਂਚ ਕਰੋ ਅਤੇ ਸੂਚਿਤ ਕਰੋ</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> ਅਤੇ <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="checking_for_updates">ਅੱਪਡੇਟਸ ਲਈ ਜਾਂਚ ਕਰ ਰਿਹਾ</string>
<string name="pref_updates_check">ਸਵੈਚਾਲਿਤ ਅੱਪਡੇਟ ਜਾਂਚ</string>
<string name="download_eta_hrs">%1$dh %2$dm %3$ds ਬਾਕੀ</string>
<string name="download_eta_min">%1$dm %2$ds ਬਾਕੀ</string>
<string name="download_eta_sec">%1$ds ਬਾਕੀ</string>

View File

@@ -326,8 +326,6 @@
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> oraz <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> oraz <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="checking_for_updates">Sprawdzanie dostępności aktualizacji</string>
<string name="pref_updates_check">Automatyczne sprawdzanie aktualizacji</string>
<string name="pref_updates_check_desc">Automatycznie sprawdzaj i okresowo powiadamiaj o nowych aktualizacjach aplikacji</string>
<string name="pref_install_mode_shizuku">Instalator Shizuku</string>
<string name="installer_shizuku_unavailable">Shizuku nie jest prawidłowo zainstalowany lub skonfigurowany.</string>
<string name="title_search_suggestion">Podpowiedzi wyszukiwania</string>

View File

@@ -289,7 +289,6 @@
<string name="session_init">Preparando as coisas…</string>
<string name="download_paused">Pausado • <xliff:g id="completed_downloads">%1$d</xliff:g> / <xliff:g id="all_downloads">%2$d</xliff:g></string>
<string name="action_import">Importar</string>
<string name="pref_updates_check">Verificação automática de atualizações</string>
<string name="checking_for_updates">Verificando atualizações</string>
<string name="download_eta_hrs">%1$dh %2$dm %3$ds restando</string>
<string name="download_eta_min">%1$dm %2$ds restando</string>
@@ -301,7 +300,6 @@
<string name="session_scrapped">Última sessão descartada</string>
<string name="updates_available">atualizações disponíveis</string>
<string name="permissions_denied">As permissões necessárias foram negadas. Por favor as conceda para continuar a ação</string>
<string name="pref_updates_check_desc">Automaticamente checar e notificar novas atualizações de apps periodicamente</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> atualizações disponíveis</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> e <xliff:g id="apps_count">%4$d</xliff:g> mais</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> e <xliff:g id="app_two_name">%2$s</xliff:g></string>

View File

@@ -328,8 +328,6 @@
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> atualizações disponíveis</string>
<string name="notification_updates_available_desc_1">Está disponível uma nova versão para<xliff:g id="app_one_name">%1$s</xliff:g></string>
<string name="checking_for_updates">A procurar atualizações</string>
<string name="pref_updates_check">Verificação automática de atualizações</string>
<string name="pref_updates_check_desc">Procurar e notificar se existirem novas versões das aplicações</string>
<string name="app_links_desc">Permitir abertura de ligações através de Aurora</string>
<string name="failed_to_fetch_report">Não foi possível obter o relatório de privacidade</string>
<string name="access_denied_using_vpn">Acesso recusado. Está a usar uma VPN ou Tor\?</string>

View File

@@ -318,8 +318,6 @@
<string name="toast_import_success">Configurarea dispozitivului importată</string>
<string name="toast_import_failed">Nu s-a putut importa configurarea dispozitivului</string>
<string name="checking_for_updates">Se verifică actualizările</string>
<string name="pref_updates_check_desc">Verifică automat și notifică periodic despre actualizările noi ale aplicațiilor</string>
<string name="pref_updates_check">Verificare automată a actualizărilor</string>
<string name="pref_install_mode_shizuku">Instalator Shizuku</string>
<string name="notification_channel_updates">Notificări despre actualizări</string>
<string name="notification_updates_available_desc_1">Este disponibilă o nouă versiune pentru <xliff:g id="app_one_name">%1$s</xliff:g></string>

View File

@@ -325,8 +325,6 @@
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> обновления доступно</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> и <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> и <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="pref_updates_check">Автоматическая проверка обновлений</string>
<string name="pref_updates_check_desc">Периодическая автопроверка и уведомление об обновлениях приложений</string>
<string name="installer_shizuku_unavailable">Shizuku не установлено или не настроено правильно.</string>
<string name="pref_install_mode_shizuku">Установщик Shizuku</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> и еще <xliff:g id="apps_count">%4$d</xliff:g> приложений</string>

View File

@@ -319,8 +319,6 @@
<string name="downloading_dep"><xliff:g id="app">%1$s</xliff:g> සඳහා අතිරේක ගොනු බාගැනෙමින්</string>
<string name="onboarding_permission_notifications_desc">ස්ථාපන තත්‍වය පිළිබඳව දැනුම්දීම් එවන්න</string>
<string name="notification_updates_available_desc_1"><xliff:g id="app_one_name">%1$s</xliff:g> හි නව අනුවාදයක් තිබේ</string>
<string name="pref_updates_check">ස්වයංක්‍රීය යාවත්කාල පරීක්‍ෂාව</string>
<string name="pref_updates_check_desc">වරින් වර නව යෙදුම් යාවත්කාල පරීක්‍ෂා කර දැනුම් දෙයි</string>
<string name="checking_for_updates">යාවත්කාල බලමින්</string>
<string name="notification_updates_available">යාවත්කාල <xliff:g id="apps_count">%1$d</xliff:g> ක් තිබේ</string>
<string name="installer_shizuku_unavailable">ෂිසුකු හරියාකාරව සකසා හෝ ස්ථාපනය කර නැත.</string>

View File

@@ -301,8 +301,6 @@
<string name="notification_updates_available_desc_1">Nova različica <xliff:g id="app_one_name">%1$s</xliff:g> je na voljo</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> in <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="checking_for_updates">Preverjanje posodobitev</string>
<string name="pref_updates_check">Samodejno preverjanje posodobitev</string>
<string name="pref_updates_check_desc">Samodejno preverjanje in redno obveščanje o novih posodobitvah aplikacije</string>
<string name="failed_to_fetch_report">Poročila o zasebnosti ni bilo mogoče pridobiti</string>
<string name="access_denied_using_vpn">Dostop zavrnjen! Ali uporabljate VPN ali Tor\?</string>
<string name="server_unreachable">Strežnik nedosegljiv</string>

View File

@@ -301,8 +301,6 @@
\n<xliff:g id="app_three_name">
\n%3$s</xliff:g></string>
<string name="checking_for_updates">Провера ажурирања</string>
<string name="pref_updates_check">Аутоматска провера ажурирања</string>
<string name="pref_updates_check_desc">Аутоматско повремено проверавање и обавештавање о новим ажурирањима апликације</string>
<string name="download_eta_hrs">Преостало: %1$d %2$d %3$d</string>
<string name="download_eta_min">Преостало: %1$d %2$d</string>
<string name="installer_am_unavailable">Инсталирајте App Manager или промените програм за инсталацију.</string>

View File

@@ -335,9 +335,7 @@
<string name="title_search_results">Sökresultat</string>
<string name="download_progress">Hämtar • <xliff:g id="completed_downloads">%1$d</xliff:g> / <xliff:g id="all_downloads">%2$d</xliff:g><xliff:g id="speed">%3$s</xliff:g></string>
<string name="onboarding_permission_notifications_desc">Skicka aviseringar gällande installationens status</string>
<string name="pref_updates_check_desc">Sök automatiskt och avisera periodiskt för nya appar</string>
<string name="access_denied_using_vpn">Åtkomsten nekades! Använder du VPN eller Tor\?</string>
<string name="pref_updates_check">Automatisk sökning efter uppdateringar</string>
<string name="app_language">Appens språk</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> och <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> uppdatering tillgänglig</string>

View File

@@ -319,8 +319,6 @@
<string name="downloading_dep"><xliff:g id="app">%1$s</xliff:g> için ek dosyalar indiriliyor</string>
<string name="action_import">İçe Aktar</string>
<string name="checking_for_updates">Güncellemeler denetleniyor</string>
<string name="pref_updates_check">Kendiliğinden güncelleme denetimi</string>
<string name="pref_updates_check_desc">Yeni uygulama güncellemelerini düzenli aralıklarla kendiliğinden denetle ve bildir</string>
<string name="notification_channel_updates">Güncelleme bildirimleri</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> güncelleme var</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> güncelleme var</string>

View File

@@ -321,13 +321,11 @@
<string name="notification_updates_available_1">Доступне <xliff:g id="apps_count">%1$d</xliff:g> оновлення</string>
<string name="notification_updates_available_desc_1">Доступна нова версія <xliff:g id="app_one_name">%1$s</xliff:g></string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g> та <xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="pref_updates_check">Автоматична перевірка оновлень</string>
<string name="notification_channel_updates">Сповіщення про оновлення</string>
<string name="notification_updates_available">Доступно <xliff:g id="apps_count">%1$d</xliff:g> оновлень</string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> та <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> та ще <xliff:g id="apps_count">%4$d</xliff:g></string>
<string name="checking_for_updates">Перевірка наявності оновлень</string>
<string name="pref_updates_check_desc">Періодична автоматична перевірка та сповіщення про нові оновлення застосунку</string>
<string name="installer_shizuku_unavailable">Shizuku не встановлено або не налаштовано належним чином.</string>
<string name="pref_install_mode_shizuku">Інсталятор Shizuku</string>
<string name="title_search_suggestion">Пошукова пропозиція</string>

View File

@@ -298,7 +298,6 @@
<string name="notification_channel_updates">Thông báo cập nhật</string>
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="checking_for_updates">Kiểm tra cho các bản cập nhật</string>
<string name="pref_updates_check_desc">Tự động kiểm tra và thông báo cập nhật ứng dụng mới theo định kỳ</string>
<string name="download_eta_min">Còn %1$d phút, %2$ds giây</string>
<string name="download_paused">Đã tạm dừng• <xliff:g id="completed_downloads">%1$d</xliff:g> / <xliff:g id="all_downloads">%2$d</xliff:g></string>
<string name="download_progress">Đang tải xuống• <xliff:g id="completed_downloads">%1$d</xliff:g> / <xliff:g id="all_downloads">%2$d</xliff:g><xliff:g id="speed">%3$s</xliff:g></string>
@@ -329,7 +328,6 @@
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> có bản cập nhật</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> có bản cập nhật</string>
<string name="notification_updates_available_desc_1">Có phiên bản mới cho <xliff:g id="app_one_name">%1$s</xliff:g></string>
<string name="pref_updates_check">Kiểm tra cập nhật tự động</string>
<string name="title_search_suggestion">Gợi ý tìm kiếm</string>
<string name="title_search_results">Kết quả tìm kiếm</string>
<string name="failed_to_fetch_report">Không thể lấy báo cáo riêng tư</string>

View File

@@ -319,8 +319,6 @@
<string name="toast_import_failed">无法导入设备配置文件</string>
<string name="downloading_dep">正在下载 <xliff:g id="app">%1$s</xliff:g> 的额外文件</string>
<string name="checking_for_updates">正在检查更新</string>
<string name="pref_updates_check">自动更新检查</string>
<string name="pref_updates_check_desc">定期自动检查并提醒新的应用更新</string>
<string name="notification_updates_available_1"><xliff:g id="apps_count">%1$d</xliff:g> 个更新可用</string>
<string name="notification_updates_available"><xliff:g id="apps_count">%1$d</xliff:g> 个更新可用</string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g><xliff:g id="app_three_name">%3$s</xliff:g><xliff:g id="apps_count">%4$d</xliff:g> 更多</string>

View File

@@ -295,7 +295,6 @@
<string name="notification_updates_available_desc_2"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g></string>
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g><xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g><xliff:g id="app_two_name">%2$s</xliff:g><xliff:g id="app_three_name">%3$s</xliff:g> 和其他 <xliff:g id="apps_count">%4$d</xliff:g> 個應用程式</string>
<string name="pref_updates_check_desc">定期自動檢查並通知新的應用程式更新</string>
<string name="action_import">匯入</string>
<string name="download_eta_hrs">剩餘 %1$dh %2$dm %3$ds</string>
<string name="download_eta_min">剩餘 %1$dm %2$ds</string>
@@ -321,7 +320,6 @@
<string name="open_in_aurora">在 Aurora 商店中開啟</string>
<string name="notification_channel_updates">更新通知</string>
<string name="checking_for_updates">正在檢查更新</string>
<string name="pref_updates_check">自動檢查更新</string>
<string name="ui_accent_6">紫色</string>
<string name="ui_accent_7">灰色</string>
<string name="ui_accent_8">粉紅色</string>

View File

@@ -119,6 +119,18 @@
<item>@string/pref_install_mode_shizuku</item>
</string-array>
<string-array name="pref_updates_auto_values">
<item>0</item>
<item>1</item>
<item>2</item>
</string-array>
<string-array name="pref_updates_auto">
<item>@string/pref_updates_auto_off</item>
<item>@string/pref_updates_auto_notify</item>
<item>@string/pref_updates_auto_install</item>
</string-array>
<string-array name="pref_installation_method_values">
<item>0</item>
<item>1</item>

View File

@@ -368,8 +368,11 @@
<string name="notification_updates_available_desc_3"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g> and <xliff:g id="app_three_name">%3$s</xliff:g></string>
<string name="notification_updates_available_desc_4"><xliff:g id="app_one_name">%1$s</xliff:g>, <xliff:g id="app_two_name">%2$s</xliff:g>, <xliff:g id="app_three_name">%3$s</xliff:g> and <xliff:g id="apps_count">%4$d</xliff:g> more</string>
<string name="checking_for_updates">Checking for updates</string>
<string name="pref_updates_check">Automated updates check</string>
<string name="pref_updates_check_desc">Automatically check &amp; notify for new app updates periodically</string>
<string name="pref_updates_auto">Auto-update apps</string>
<string name="pref_updates_auto_desc">Configure auto-updates behaviour</string>
<string name="pref_updates_auto_off">Do not auto-update apps</string>
<string name="pref_updates_auto_notify">Check &amp; notify for available updates</string>
<string name="pref_updates_auto_install">Check &amp; install available updates automatically</string>
<string name="pref_updates_check_frequency">Automatic updates frequency</string>
<string name="pref_updates_check_frequency_desc">Configure intervals for auto updates, in hour.</string>
<string name="failed_to_fetch_report">Failed to fetch privacy report</string>

View File

@@ -35,17 +35,17 @@
app:summary="@string/pref_updates_extended_desc"
app:title="@string/pref_updates_extended" />
<SwitchPreferenceCompat
app:defaultValue="true"
app:disableDependentsState="false"
<com.aurora.store.view.custom.preference.AuroraListPreference
app:defaultValue="2"
app:entries="@array/pref_updates_auto"
app:entryValues="@array/pref_updates_auto_values"
app:iconSpaceReserved="false"
app:key="PREFERENCE_UPDATES_CHECK"
app:summary="@string/pref_updates_check_desc"
app:title="@string/pref_updates_check" />
app:key="PREFERENCE_UPDATES_AUTO"
app:summary="@string/pref_updates_auto_desc"
app:title="@string/pref_updates_auto" />
<SeekBarPreference
android:defaultValue="3"
android:dependency="PREFERENCE_UPDATES_CHECK"
android:key="PREFERENCE_UPDATES_CHECK_INTERVAL"
android:max="24"
android:summary="@string/pref_updates_check_frequency_desc"