Don't perform background sync when datasaver is on

pull/1305/head
Alex Baker 3 years ago
parent 52f9276436
commit ba81209903

@ -36,7 +36,7 @@ class SyncOpenTasksWork @WorkerInject constructor(
override suspend fun doSync() {
openTasksSynchronizer.sync()
if (inputData.getBoolean(EXTRA_IMMEDIATE, false)) {
if (isImmediate) {
AccountManager
.get(context)
.accounts

@ -1,7 +1,11 @@
package org.tasks.jobs
import android.content.Context
import android.net.ConnectivityManager
import androidx.core.content.ContextCompat.getSystemService
import androidx.core.net.ConnectivityManagerCompat.RESTRICT_BACKGROUND_STATUS_ENABLED
import androidx.work.WorkerParameters
import com.todoroo.andlib.utility.AndroidUtilities.atLeastNougat
import org.tasks.LocalBroadcastManager
import org.tasks.analytics.Firebase
import org.tasks.injection.BaseWorker
@ -19,6 +23,13 @@ abstract class SyncWork constructor(
if (!enabled()) {
return Result.failure()
}
if (atLeastNougat() && isBackground) {
getSystemService(context, ConnectivityManager::class.java)?.apply {
if (restrictBackgroundStatus == RESTRICT_BACKGROUND_STATUS_ENABLED) {
return Result.failure()
}
}
}
synchronized(LOCK) {
if (preferences.getBoolean(syncStatus, false)) {
@ -38,6 +49,12 @@ abstract class SyncWork constructor(
return Result.success()
}
val isImmediate: Boolean
get() = inputData.getBoolean(EXTRA_IMMEDIATE, false)
private val isBackground: Boolean
get() = inputData.getBoolean(EXTRA_BACKGROUND, false)
protected abstract val syncStatus: Int
protected abstract suspend fun enabled(): Boolean
@ -48,5 +65,6 @@ abstract class SyncWork constructor(
private val LOCK = Any()
const val EXTRA_IMMEDIATE = "extra_immediate"
const val EXTRA_BACKGROUND = "extra_background"
}
}

@ -31,9 +31,6 @@ interface WorkManager {
fun updateBackgroundSync()
fun updateBackgroundSync(
forceBackgroundEnabled: Boolean?, forceOnlyOnUnmetered: Boolean?)
fun scheduleRefresh(time: Long)
fun scheduleMidnightRefresh()

@ -25,6 +25,7 @@ import org.tasks.data.CaldavAccount.Companion.TYPE_TASKS
import org.tasks.date.DateTimeUtils.midnight
import org.tasks.date.DateTimeUtils.newDateTime
import org.tasks.jobs.MigrateLocalWork.Companion.EXTRA_ACCOUNT
import org.tasks.jobs.SyncWork.Companion.EXTRA_BACKGROUND
import org.tasks.jobs.SyncWork.Companion.EXTRA_IMMEDIATE
import org.tasks.jobs.WorkManager.Companion.MAX_CLEANUP_LENGTH
import org.tasks.jobs.WorkManager.Companion.REMOTE_CONFIG_INTERVAL_HOURS
@ -82,9 +83,7 @@ class WorkManagerImpl constructor(
override fun migrateLocalTasks(caldavAccount: CaldavAccount) {
val builder = OneTimeWorkRequest.Builder(MigrateLocalWork::class.java)
.setInputData(Data.Builder().putString(EXTRA_ACCOUNT, caldavAccount.uuid).build())
.setConstraints(Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build())
.setConstraints(networkConstraints)
enqueue(workManager.beginUniqueWork(TAG_MIGRATE_LOCAL, APPEND_OR_REPLACE, builder.build()))
}
@ -120,14 +119,7 @@ class WorkManagerImpl constructor(
val builder = OneTimeWorkRequest.Builder(c)
.setInputData(Data.Builder().putBoolean(EXTRA_IMMEDIATE, immediate).build())
if (requireNetwork) {
builder.setConstraints(Constraints.Builder()
.setRequiredNetworkType(
if (!immediate && preferences.getBoolean(R.string.p_background_sync_unmetered_only, false)) {
NetworkType.UNMETERED
} else {
NetworkType.CONNECTED
})
.build())
builder.setConstraints(networkConstraints)
}
if (!immediate) {
builder.setInitialDelay(1, TimeUnit.MINUTES)
@ -151,48 +143,33 @@ class WorkManagerImpl constructor(
enqueue(
OneTimeWorkRequest.Builder(ReverseGeocodeWork::class.java)
.setInputData(Data.Builder().putLong(ReverseGeocodeWork.PLACE_ID, place.id).build())
.setConstraints(
Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build()))
.setConstraints(networkConstraints))
}
override fun updateBackgroundSync() {
updateBackgroundSync(null, null)
}
@SuppressLint("CheckResult")
override fun updateBackgroundSync(
forceBackgroundEnabled: Boolean?, forceOnlyOnUnmetered: Boolean?) {
val enabled = forceBackgroundEnabled
?: preferences.getBoolean(R.string.p_background_sync, true)
val unmetered = forceOnlyOnUnmetered
?: preferences.getBoolean(R.string.p_background_sync_unmetered_only, false)
throttle.run {
scheduleBackgroundSync(
TAG_BACKGROUND_SYNC_GOOGLE_TASKS,
SyncGoogleTasksWork::class.java,
enabled && googleTaskListDao.accountCount() > 0,
unmetered)
googleTaskListDao.accountCount() > 0)
}
throttle.run {
scheduleBackgroundSync(
TAG_BACKGROUND_SYNC_CALDAV,
SyncCaldavWork::class.java,
enabled && caldavDao.getAccounts(TYPE_CALDAV, TYPE_TASKS).isNotEmpty(),
unmetered)
caldavDao.getAccounts(TYPE_CALDAV, TYPE_TASKS).isNotEmpty())
}
throttle.run {
scheduleBackgroundSync(
TAG_BACKGROUND_SYNC_ETESYNC,
SyncEteSyncWork::class.java,
enabled && caldavDao.getAccounts(TYPE_ETESYNC).isNotEmpty(),
unmetered)
caldavDao.getAccounts(TYPE_ETESYNC).isNotEmpty())
}
throttle.run {
scheduleBackgroundSync(
TAG_BACKGROUND_SYNC_ETEBASE,
SyncEtebaseWork::class.java,
enabled && caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty(),
unmetered)
caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty())
}
throttle.run {
scheduleBackgroundSync(
@ -203,12 +180,12 @@ class WorkManagerImpl constructor(
}
}
private fun scheduleBackgroundSync(
tag: String, c: Class<out SyncWork>, enabled: Boolean, unmetered: Boolean? = null) {
Timber.d("scheduleBackgroundSync($tag, $c, enabled = $enabled, unmetered = $unmetered)")
private fun scheduleBackgroundSync(tag: String, c: Class<out SyncWork>, enabled: Boolean) {
Timber.d("scheduleBackgroundSync($tag, $c, enabled = $enabled)")
if (enabled) {
val builder = PeriodicWorkRequest.Builder(c, 1, TimeUnit.HOURS)
unmetered?.let { builder.setConstraints(getNetworkConstraints(it)) }
.setInputData(Data.Builder().putBoolean(EXTRA_BACKGROUND, true).build())
.setConstraints(networkConstraints)
workManager.enqueueUniquePeriodicWork(
tag, ExistingPeriodicWorkPolicy.KEEP, builder.build())
} else {
@ -252,8 +229,7 @@ class WorkManagerImpl constructor(
ExistingPeriodicWorkPolicy.KEEP,
PeriodicWorkRequest.Builder(
RemoteConfigWork::class.java, REMOTE_CONFIG_INTERVAL_HOURS, TimeUnit.HOURS)
.setConstraints(
Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build())
.setConstraints(networkConstraints)
.build())
}
}
@ -272,13 +248,7 @@ class WorkManagerImpl constructor(
}
private val networkConstraints: Constraints
get() = getNetworkConstraints(
preferences.getBoolean(R.string.p_background_sync_unmetered_only, false))
private fun getNetworkConstraints(unmeteredOnly: Boolean) =
Constraints.Builder()
.setRequiredNetworkType(if (unmeteredOnly) NetworkType.UNMETERED else NetworkType.CONNECTED)
.build()
get() = Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build()
override fun cancelNotifications() {
alarmManager.cancel(notificationPendingIntent)

@ -27,7 +27,6 @@ import org.tasks.data.OpenTaskDao.Companion.isEteSync
import org.tasks.etebase.EtebaseAccountSettingsActivity
import org.tasks.etesync.EteSyncAccountSettingsActivity
import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.jobs.WorkManager
import org.tasks.opentasks.OpenTaskAccountSettingsActivity
import org.tasks.preferences.Preferences
import org.tasks.preferences.PreferencesViewModel
@ -38,7 +37,6 @@ import javax.inject.Inject
@AndroidEntryPoint
class Synchronization : InjectingPreferenceFragment() {
@Inject lateinit var workManager: WorkManager
@Inject lateinit var preferences: Preferences
@Inject lateinit var caldavDao: CaldavDao
@Inject lateinit var googleTaskListDao: GoogleTaskListDao
@ -50,21 +48,6 @@ class Synchronization : InjectingPreferenceFragment() {
override fun getPreferenceXml() = R.xml.preferences_synchronization
override suspend fun setupPreferences(savedInstanceState: Bundle?) {
findPreference(R.string.p_background_sync_unmetered_only)
.setOnPreferenceChangeListener { _: Preference?, o: Any? ->
lifecycleScope.launch {
workManager.updateBackgroundSync(null, o as Boolean?)
}
true
}
findPreference(R.string.p_background_sync)
.setOnPreferenceChangeListener { _: Preference?, o: Any? ->
lifecycleScope.launch {
workManager.updateBackgroundSync(o as Boolean?, null)
}
true
}
findPreference(R.string.add_account)
.setOnPreferenceClickListener {
lifecycleScope.launch {
@ -193,9 +176,7 @@ class Synchronization : InjectingPreferenceFragment() {
synchronizationPreferences.removeAll()
val hasGoogleAccounts: Boolean = addGoogleTasksAccounts(synchronizationPreferences)
val hasCaldavAccounts = addCaldavAccounts(synchronizationPreferences)
val syncEnabled = hasGoogleAccounts || hasCaldavAccounts
findPreference(R.string.accounts).isVisible = syncEnabled
findPreference(R.string.sync_SPr_interval_title).isVisible = syncEnabled
findPreference(R.string.accounts).isVisible = hasGoogleAccounts || hasCaldavAccounts
}
}

@ -112,7 +112,6 @@
<string name="yesterday">أمس</string>
<string name="tmrw">غدا</string>
<string name="yest">أمس</string>
<string name="sync_SPr_interval_title">تحيين في الخلفية</string>
<string name="widget_show_checkboxes">إظهار مربعات التعليم</string>
<string name="widget_show_header">إظهار الهايدر</string>
<string name="widget_show_settings">إظهار الإعدادات</string>

@ -268,7 +268,6 @@
<string name="yesterday">Вчера</string>
<string name="tmrw">Утре</string>
<string name="yest">Вчера</string>
<string name="sync_SPr_interval_title">Синхронзиране във фонов режим</string>
<string name="widget_show_checkboxes">Покажи отметки</string>
<string name="widget_show_header">Покажи хедър</string>
<string name="widget_show_settings">Покажи настройки</string>
@ -415,7 +414,6 @@
<string name="help">Помощ</string>
<string name="caldav_home_set_not_found">Home set не е намерен</string>
<string name="network_error">Свързването е неуспешно</string>
<string name="background_sync_unmetered_only">Само при неограничени връзки</string>
<string name="upgrade_to_pro">Обнови към pro</string>
<string name="manage_subscription">Управление на абонамент</string>
<string name="refresh_purchases">Обнови покупки</string>

@ -85,7 +85,6 @@
<string name="today">Avui</string>
<string name="tomorrow">Demà</string>
<string name="yesterday">Ahir</string>
<string name="sync_SPr_interval_title">Sincronitzar en segon pla</string>
<string name="source_code">Codi font</string>
<string name="translations">Contribuir traduccions</string>
<string name="contact_developer">Contacta amb el desenvolupador</string>

@ -167,7 +167,6 @@
<string name="yesterday">Včera</string>
<string name="tmrw">Zítra</string>
<string name="yest">Včera</string>
<string name="sync_SPr_interval_title">Synchronizace na pozadí</string>
<string name="widget_show_checkboxes">Zobrazovat zaškrtávací políčka</string>
<string name="widget_show_header">Zobrazit záhlaví</string>
<string name="widget_show_settings">Zobrazit nastavení</string>
@ -429,7 +428,6 @@
<string name="tasker_list_notification">Zobrazit upozornění</string>
<string name="help">Nápověda</string>
<string name="network_error">Nepodařilo se připojit</string>
<string name="background_sync_unmetered_only">Pouze pokud připojení není účtované podle objemu dat</string>
<string name="upgrade_to_pro">Získat PRO verzi</string>
<string name="manage_subscription">Spravovat předplatné</string>
<string name="refresh_purchases">Obnovit nákupy</string>

@ -73,7 +73,6 @@
<string name="today">I dag</string>
<string name="tomorrow">I morgen</string>
<string name="yesterday">I går</string>
<string name="sync_SPr_interval_title">Baggrundssynkronisering</string>
<string name="source_code">Kildekode</string>
<string name="repeats_single_on_until">Gentages %1$s hver %2$s indtil %3$s</string>
<string name="repeats_single_on">Gentages %1$s hver %2$s</string>
@ -225,7 +224,6 @@
<string name="action_create_new_task">Opret ny opgave</string>
<string name="reinitialize_account">Geninitialisér</string>
<string name="cannot_access_account">Kunne ikke tilgå kontoen</string>
<string name="background_sync_unmetered_only">Kun på ubegrænsede forbindelser</string>
<string name="logout_warning">Log ud af %s\? Al data for denne konto vil blive slettet fra enheden</string>
<string name="logout">Log ud</string>
<string name="this_feature_requires_a_subscription">Denne funktion kræver et abonnement</string>

@ -268,7 +268,6 @@
<string name="yesterday">Gestern</string>
<string name="tmrw">Morgen</string>
<string name="yest">Gestern</string>
<string name="sync_SPr_interval_title">Hintergrund-Synchronisierung</string>
<string name="widget_show_checkboxes">Checkboxen anzeigen</string>
<string name="widget_show_header">Kopfleiste anzeigen</string>
<string name="widget_show_settings">Einstellungen anzeigen</string>
@ -411,7 +410,6 @@
<string name="help">Hilfe</string>
<string name="caldav_home_set_not_found">CalDAV-Home-Set nicht gefunden</string>
<string name="network_error">Verbindung fehlgeschlagen</string>
<string name="background_sync_unmetered_only">Nur bei unbeschränkter Verbindung</string>
<string name="upgrade_to_pro">Pro-Funktionen freischalten</string>
<string name="manage_subscription">Abonnement ändern</string>
<string name="refresh_purchases">Einkäufe aktualisieren</string>

@ -146,6 +146,5 @@
<string name="yesterday">Χθές</string>
<string name="tmrw">Αύριο</string>
<string name="yest">Χθές</string>
<string name="sync_SPr_interval_title">Συγχρονισμός παρασκηνίου</string>
<string name="TLA_menu_donate">Δωρίστε</string>
</resources>

@ -269,7 +269,6 @@
<string name="yesterday">Ayer</string>
<string name="tmrw">Mñna</string>
<string name="yest">Ayer</string>
<string name="sync_SPr_interval_title">Sincronización en segundo plano</string>
<string name="widget_show_checkboxes">Mostrar casillas de verificación</string>
<string name="widget_show_header">Mostrar encabezado</string>
<string name="widget_show_settings">Mostrar configuración</string>
@ -414,7 +413,6 @@
<string name="help">Ayuda</string>
<string name="caldav_home_set_not_found">Origen no encontrado</string>
<string name="network_error">No se pudo conectar</string>
<string name="background_sync_unmetered_only">Sólo en conexiones sin cargos</string>
<string name="upgrade_to_pro">Actualizar a profesional</string>
<string name="manage_subscription">Modificar suscripción</string>
<string name="refresh_purchases">Actualizar los acquisiciones</string>

@ -147,7 +147,6 @@
<string name="yesterday">Eile</string>
<string name="tmrw">Homme</string>
<string name="yest">Eile</string>
<string name="sync_SPr_interval_title">Taustal sünkroonimine</string>
<string name="widget_show_checkboxes">Näita märkekaste</string>
<string name="widget_show_header">Näita päist</string>
<string name="widget_show_settings">Näita seadeid</string>

@ -271,7 +271,6 @@
<string name="yesterday">Atzo</string>
<string name="tmrw">Bihar</string>
<string name="yest">Atzo</string>
<string name="sync_SPr_interval_title">Bigarren planoko sinkronizazioa</string>
<string name="widget_show_checkboxes">Erakutsi markaketa-koadroak</string>
<string name="widget_show_header">Erakutsi goiburua</string>
<string name="widget_show_settings">Erakutsi ezarpenak</string>
@ -420,7 +419,6 @@
<string name="help">Laguntza</string>
<string name="caldav_home_set_not_found">Ez da jatorria aurkitu</string>
<string name="network_error">Ezin izan da konektatu</string>
<string name="background_sync_unmetered_only">Mugagabeko konexioetan besterik ez</string>
<string name="upgrade_to_pro">Aldatu pro bertsiora</string>
<string name="manage_subscription">Aldatu harpidetza</string>
<string name="refresh_purchases">Freskatu erosketak</string>

@ -164,7 +164,6 @@
<string name="yesterday">فردا بعد از ظهر</string>
<string name="tmrw">فردا</string>
<string name="yest">دیروز</string>
<string name="sync_SPr_interval_title">سینک پیش زمینه</string>
<string name="widget_show_checkboxes">نمایش محل تیک</string>
<string name="widget_show_header">نمایش سربرگ</string>
<string name="widget_show_settings">نمایش تنظیمات</string>

@ -260,7 +260,6 @@
<string name="yesterday">Eilen</string>
<string name="tmrw">Huominen</string>
<string name="yest">Eilinen</string>
<string name="sync_SPr_interval_title">Tausta synkronointi</string>
<string name="widget_show_checkboxes">Näytä valintaruudut</string>
<string name="widget_show_header">Näytä otsikot</string>
<string name="widget_show_settings">Näytä asetukset</string>
@ -573,7 +572,6 @@
<string name="location_arrived">Saavuit paikkaan %s</string>
<string name="logout_warning">Kirjaudu ulos %s\? Kaikki tälle tilille tallennetut tiedot poistetaan laitteeltasi</string>
<string name="refresh_purchases">Päivitä ostoksesi</string>
<string name="background_sync_unmetered_only">Vain rajoittamattomalla yhteydellä</string>
<string name="widget_due_date_hidden">Piilotettu</string>
<string name="widget_due_date_below_title">Otsikon alle</string>
<string name="widget_due_date_after_title">Otsikon jälkeen</string>

@ -254,7 +254,6 @@
<string name="yesterday">Hier</string>
<string name="tmrw">Demain</string>
<string name="yest">Hier</string>
<string name="sync_SPr_interval_title">Synchro. en arrière-plan</string>
<string name="widget_show_checkboxes">Montrer les cases à cocher</string>
<string name="widget_show_header">Montrer l\'en-tête</string>
<string name="widget_show_settings">Voir les paramètres</string>
@ -396,7 +395,6 @@
<string name="help">Aide</string>
<string name="caldav_home_set_not_found">Ensemble d\'accueil non trouvé</string>
<string name="network_error">Impossible de se connecter</string>
<string name="background_sync_unmetered_only">Uniquement sur les connexions illimitées</string>
<string name="upgrade_to_pro">Passer en pro</string>
<string name="manage_subscription">Modifier les abonnements</string>
<string name="refresh_purchases">Rafraîchir les achats</string>

@ -182,7 +182,6 @@
<string name="yesterday">Ayer</string>
<string name="tmrw">Mñna</string>
<string name="yest">Ayer</string>
<string name="sync_SPr_interval_title">Sincronización en segundo plano</string>
<string name="widget_show_checkboxes">Mostrar casillas de verificación</string>
<string name="widget_show_header">Mostrar encabezado</string>
<string name="widget_show_settings">Mostrar configuración</string>

@ -268,7 +268,6 @@
<string name="yesterday">Tegnap</string>
<string name="tmrw">Holn</string>
<string name="yest">Tegn</string>
<string name="sync_SPr_interval_title">Szinkronizáció a háttérben</string>
<string name="widget_show_checkboxes">Jelölőnégyzetek megjelenítése</string>
<string name="widget_show_header">Fejléc megjelenítése</string>
<string name="widget_show_settings">Beállítások megjelenítése</string>
@ -415,7 +414,6 @@
<string name="help">Súgó</string>
<string name="caldav_home_set_not_found">Home set nem található</string>
<string name="network_error">Sikertelen kapcsolódás</string>
<string name="background_sync_unmetered_only">Csak forgalmidíj mentes kapcsolatoknál</string>
<string name="upgrade_to_pro">Upgrade pro verzióra</string>
<string name="manage_subscription">Előfizetés módosítása</string>
<string name="refresh_purchases">Vásárlások frissítése</string>

@ -194,7 +194,6 @@
<string name="yesterday">Kemarin</string>
<string name="tmrw">Bsk</string>
<string name="yest">Kmrn</string>
<string name="sync_SPr_interval_title">Sinkronisasi latar belakang</string>
<string name="widget_show_checkboxes">Tampilkan kotak centang</string>
<string name="widget_show_header">Tampilkan tajuk</string>
<string name="widget_show_settings">Tampilkan pengaturan</string>
@ -347,7 +346,6 @@
<string name="tasker_create_task">Buat tugas</string>
<string name="help">Bantuan</string>
<string name="network_error">Koneksi gagal</string>
<string name="background_sync_unmetered_only">Hanya pada koneksi tak terbatas</string>
<string name="upgrade_to_pro">Tingkatkan ke pro</string>
<string name="manage_subscription">Kelola langganan</string>
<string name="refresh_purchases">Segarkan pembelian</string>

@ -270,7 +270,6 @@
<string name="yesterday">Ieri</string>
<string name="tmrw">Domani</string>
<string name="yest">Ieri</string>
<string name="sync_SPr_interval_title">Sincronizza in background</string>
<string name="widget_show_checkboxes">Mostra le caselle di selezione</string>
<string name="widget_show_header">Mostra intestazione</string>
<string name="widget_show_settings">Mostra impostazioni</string>
@ -415,7 +414,6 @@
<string name="help">Aiuto</string>
<string name="caldav_home_set_not_found">Home set non trovato</string>
<string name="network_error">Connessione fallita</string>
<string name="background_sync_unmetered_only">Solo su connessioni non a consumo</string>
<string name="upgrade_to_pro">Aggiorna a pro</string>
<string name="manage_subscription">Modifica abbonamento</string>
<string name="refresh_purchases">Aggiorna acquisti</string>

@ -301,7 +301,6 @@
<string name="yesterday">אתמול</string>
<string name="tmrw">מחר</string>
<string name="yest">אתמול</string>
<string name="sync_SPr_interval_title">סנכרון ברקע</string>
<string name="widget_show_checkboxes">הצג תיבות סימון</string>
<string name="widget_show_header">הצג כותרת</string>
<string name="widget_show_settings">הצג הגדרות</string>
@ -449,7 +448,6 @@
<string name="help">עזרה</string>
<string name="caldav_home_set_not_found">קבוצת הבית לא נמצאה</string>
<string name="network_error">לא ניתן להתחבר</string>
<string name="background_sync_unmetered_only">רק בחיבורים ללא חיוב לפי נפח גלישה</string>
<string name="upgrade_to_pro">שידרוג לגירסת pro</string>
<string name="manage_subscription">ניהול מינוי</string>
<string name="refresh_purchases">עדכן רכישות</string>

@ -266,7 +266,6 @@
<string name="yesterday">昨日</string>
<string name="tmrw">明日</string>
<string name="yest">昨日</string>
<string name="sync_SPr_interval_title">バックグラウンド同期</string>
<string name="widget_show_checkboxes">チェックボックスを表示</string>
<string name="widget_show_header">ヘッダーを表示</string>
<string name="widget_show_settings">設定を表示</string>
@ -412,7 +411,6 @@
<string name="help">ヘルプ</string>
<string name="caldav_home_set_not_found">ホームの設定が見つかりません</string>
<string name="network_error">接続に失敗しました</string>
<string name="background_sync_unmetered_only">定額の接続時のみ</string>
<string name="upgrade_to_pro">プロ版にアップグレード</string>
<string name="manage_subscription">サブスクリプションの管理</string>
<string name="refresh_purchases">購入を更新</string>

@ -268,7 +268,6 @@
<string name="yesterday">어제</string>
<string name="tmrw">내일</string>
<string name="yest">어제</string>
<string name="sync_SPr_interval_title">백그라운드 동기화</string>
<string name="widget_show_checkboxes">체크박스 표시</string>
<string name="widget_show_header">헤더 표시</string>
<string name="widget_show_settings">설정버튼 표시</string>
@ -413,7 +412,6 @@
<string name="help">도움말</string>
<string name="caldav_home_set_not_found">CalDAV 홈 설정 없음</string>
<string name="network_error">연결 실패</string>
<string name="background_sync_unmetered_only">요금이 부과되지 않는 접속인 경우에만</string>
<string name="upgrade_to_pro">프로 서비스로 업그레이드</string>
<string name="refresh_purchases">구매 새로고침</string>
<string name="button_subscribe">신청</string>

@ -265,7 +265,6 @@
<string name="yesterday">Vakar</string>
<string name="tmrw">Ryt</string>
<string name="yest">Vakar</string>
<string name="sync_SPr_interval_title">Foninis sinchronizavimas</string>
<string name="widget_show_checkboxes">Rodyti žymimus kvadratėlius</string>
<string name="widget_show_header">Rodyti antraštę</string>
<string name="widget_show_settings">Rodyti nustatymus</string>
@ -411,7 +410,6 @@
<string name="help">Pagalba</string>
<string name="caldav_home_set_not_found">Kalendorių rinkinio direktorija nerasta</string>
<string name="network_error">Sujungimas nepavyko</string>
<string name="background_sync_unmetered_only">Naudoti tik \"unmetered\" ryšius</string>
<string name="upgrade_to_pro">Atnaujinti į pro versiją</string>
<string name="manage_subscription">Redaguoti prenumeratą</string>
<string name="refresh_purchases">Atnaujinti pirkimus</string>

@ -113,7 +113,6 @@
<string name="today">I dag</string>
<string name="tomorrow">I morgen</string>
<string name="yesterday">I går</string>
<string name="sync_SPr_interval_title">Bakgrunnssynkronisering</string>
<string name="widget_show_checkboxes">Vis avkryssingsbokser</string>
<string name="widget_show_settings">Vis innstillinger</string>
<string name="notifications"> Varsler</string>
@ -420,7 +419,6 @@
<string name="help">Hjelp</string>
<string name="caldav_home_set_not_found">Fant ikke CalDAV-\"home set\"</string>
<string name="network_error">Kunne ikke koble til</string>
<string name="background_sync_unmetered_only">Kun for ubegrensede tilkoblinger</string>
<string name="upgrade_to_pro">Oppgrader til pro</string>
<string name="manage_subscription">Endre abonnement</string>
<string name="refresh_purchases">Gjenoppfrisk kjøp</string>

@ -264,7 +264,6 @@
<string name="yesterday">Gisteren</string>
<string name="tmrw">mrgn</string>
<string name="yest">gisteren</string>
<string name="sync_SPr_interval_title">Achtergrond synchronisatie</string>
<string name="widget_show_checkboxes">Toon vinkboxjes</string>
<string name="widget_show_header">Toon titel</string>
<string name="widget_show_settings">Toon instellingen</string>
@ -404,7 +403,6 @@
<string name="tasker_list_notification">Notificatie lijst</string>
<string name="caldav_home_set_not_found">Home set niet gevonden</string>
<string name="network_error">Kon geen verbinding maken</string>
<string name="background_sync_unmetered_only">Alleen bij onbeperkte verbindingen</string>
<string name="upgrade_to_pro">Opwaarderen naar pro</string>
<string name="manage_subscription">Verander abonnement</string>
<string name="refresh_purchases">Vernieuw aankopen</string>

@ -280,7 +280,6 @@
<string name="yesterday">Wczoraj</string>
<string name="tmrw">jtr</string>
<string name="yest">wcz</string>
<string name="sync_SPr_interval_title">Synchronizacja w tle</string>
<string name="widget_show_checkboxes">Pokaż przyciski wyboru</string>
<string name="widget_show_header">Pokaż nagłówek</string>
<string name="widget_show_settings">Pokaż ustawienia</string>
@ -425,7 +424,6 @@
<string name="tasker_list_notification">Lista powiadomień</string>
<string name="help">Pomoc</string>
<string name="network_error">Błąd połączenia</string>
<string name="background_sync_unmetered_only">Tylko niezliczane połączenia</string>
<string name="upgrade_to_pro">Upgrade do pro</string>
<string name="manage_subscription">Zmodyfikuj subskrypcję</string>
<string name="refresh_purchases">Odśwież zakupy</string>

@ -266,7 +266,6 @@
<string name="yesterday">Ontem</string>
<string name="tmrw">Amanhã</string>
<string name="yest">Ontem</string>
<string name="sync_SPr_interval_title">Sincronização em segundo plano</string>
<string name="widget_show_checkboxes">Mostrar tarefas ocultas</string>
<string name="widget_show_header">Mostrar ocultas</string>
<string name="widget_show_settings">Configurações</string>
@ -412,7 +411,6 @@
<string name="help">Ajuda</string>
<string name="caldav_home_set_not_found">Conjunto inicial não encontrado</string>
<string name="network_error">Não foi possível conectar</string>
<string name="background_sync_unmetered_only">Apenas em conexões ilimitadas</string>
<string name="upgrade_to_pro">Atualizar para Pro</string>
<string name="manage_subscription">Gerenciar subscrição</string>
<string name="refresh_purchases">Atualizar compras</string>

@ -257,7 +257,6 @@
<string name="yesterday">Ontem</string>
<string name="tmrw">Amanhã</string>
<string name="yest">Ontem</string>
<string name="sync_SPr_interval_title">Sincronização em segundo plano</string>
<string name="widget_show_checkboxes">Mostrar caixas de seleção</string>
<string name="widget_show_header">Mostrar cabeçalho</string>
<string name="widget_show_settings">Definições:</string>
@ -428,7 +427,6 @@
<string name="refresh_purchases">Atualizar compras</string>
<string name="manage_subscription">Gerir assinatura</string>
<string name="upgrade_to_pro">Atualizar para pro</string>
<string name="background_sync_unmetered_only">Apenas em conexões ilimitadas</string>
<string name="caldav_home_set_not_found">Conjunto inicial não encontrado</string>
<string name="help">Ajuda</string>
<string name="tasker_list_notification">Listar notificações</string>

@ -285,7 +285,6 @@
<string name="yesterday">Вчера</string>
<string name="tmrw">Завтра</string>
<string name="yest">Вчера</string>
<string name="sync_SPr_interval_title">Фоновая синхронизация</string>
<string name="widget_show_checkboxes">Показать кнопки для галочек</string>
<string name="widget_show_header">Показать заголовок</string>
<string name="widget_show_settings">Показать настройки</string>
@ -432,7 +431,6 @@
<string name="help">Помощь</string>
<string name="caldav_home_set_not_found">Домашний набор не найден</string>
<string name="network_error">Не удалось подключиться</string>
<string name="background_sync_unmetered_only">Только на соединениях без тарификации</string>
<string name="upgrade_to_pro">Обновить до версии Про</string>
<string name="manage_subscription">Изменить подписку</string>
<string name="refresh_purchases">Обновить покупки</string>

@ -266,7 +266,6 @@
<string name="yesterday">Včera</string>
<string name="tmrw">Zajtra</string>
<string name="yest">Včera</string>
<string name="sync_SPr_interval_title">Synchronizácia na pozadí</string>
<string name="widget_show_checkboxes">Ukázať zaškrtávacie políčka </string>
<string name="widget_show_header">Ukázať záhlavia </string>
<string name="widget_show_settings">Ukázať nastavenia</string>
@ -411,7 +410,6 @@
<string name="help">Pomoc</string>
<string name="caldav_home_set_not_found">Nastavenie Domov nenájdené</string>
<string name="network_error">Spojenie zlyhalo</string>
<string name="background_sync_unmetered_only">Iba na bezplatných pripojeniach</string>
<string name="upgrade_to_pro">Rozšíriť na verziu pro</string>
<string name="manage_subscription">Platená verzia</string>
<string name="refresh_purchases">Obnoviť nákupy</string>

@ -151,6 +151,5 @@
<string name="yesterday">Včeraj</string>
<string name="tmrw">Jutr</string>
<string name="yest">Včer</string>
<string name="sync_SPr_interval_title">Usklajevanje v ozadju</string>
<string name="TLA_menu_donate">Donirajte</string>
</resources>

@ -182,7 +182,6 @@
<string name="yesterday">Igår</string>
<string name="tmrw">Imorgon</string>
<string name="yest">Igår</string>
<string name="sync_SPr_interval_title">Bakgrundssynkronisering</string>
<string name="widget_show_checkboxes">Visa kryssrutor</string>
<string name="widget_show_header">Visa rubrik</string>
<string name="widget_show_settings">Visa ikon för inställningar</string>
@ -415,7 +414,6 @@
<string name="help">Hjälp</string>
<string name="caldav_home_set_not_found">Hemuppsättning hittades inte</string>
<string name="network_error">Kunde inte ansluta</string>
<string name="background_sync_unmetered_only">Endast på obegränsade anslutningar</string>
<string name="upgrade_to_pro">Uppgradera till Pro</string>
<string name="manage_subscription">Hantera prenumerations</string>
<string name="refresh_purchases">Uppdatera inköp</string>

@ -304,7 +304,6 @@
<string name="refresh_purchases">வாங்குதல்களைப் புதுப்பிக்கவும்</string>
<string name="manage_subscription">சந்தாவை நிர்வகிக்கவும்</string>
<string name="upgrade_to_pro">சார்புக்கு மேம்படுத்தவும்</string>
<string name="background_sync_unmetered_only">அளவிடப்படாத இணைப்புகளில் மட்டுமே</string>
<string name="network_error">இணைக்க முடியவில்லை</string>
<string name="caldav_home_set_not_found">முகப்பு தொகுப்பு கிடைக்கவில்லை</string>
<string name="help_and_feedback">உதவி &amp; கருத்து</string>
@ -468,7 +467,6 @@
<string name="widget_show_header">தலைப்பைக் காட்டு</string>
<string name="widget_hide_background">பின்னணியை மறைக்க</string>
<string name="widget_show_checkboxes">தேர்வுப்பெட்டிகளைக் காட்டு</string>
<string name="sync_SPr_interval_title">பின்னணி ஒத்திசைவு</string>
<string name="yest">நேற்று</string>
<string name="tmrw">நாளை</string>
<string name="yesterday_lowercase">நேற்று</string>

@ -58,7 +58,6 @@
<string name="add_account">Magdagdag ng account</string>
<string name="user">Gumagamit</string>
<string name="notification_disable_battery_optimizations_description">Mga baterya optimization ay maaaring antalahin ang mga notification</string>
<string name="background_sync_unmetered_only">Sa metered connections laang</string>
<string name="location_remind_departure">Ipaalala sa pagdating</string>
<string name="location_arrived">Dumating sa %s</string>
<string name="location_departed">Umalis %s</string>

@ -271,7 +271,6 @@
<string name="yesterday">Dün</string>
<string name="tmrw">Yarın</string>
<string name="yest">Dün</string>
<string name="sync_SPr_interval_title">Arka planda eşzamanla</string>
<string name="widget_show_checkboxes">Onay kutularını göster</string>
<string name="widget_show_header">Başlığı göster</string>
<string name="widget_show_settings">Ayarları göster</string>
@ -417,7 +416,6 @@
<string name="help">Yardım</string>
<string name="caldav_home_set_not_found">Ev takımı (home set) bulunamadı</string>
<string name="network_error">Bağlanamadı</string>
<string name="background_sync_unmetered_only">Yalnızca ölçülmeyen bağlantılarda</string>
<string name="upgrade_to_pro">Pro\'ya yükselt</string>
<string name="manage_subscription">Aboneliği değiştir</string>
<string name="refresh_purchases">Satın alımları yenile</string>

@ -286,7 +286,6 @@
<string name="yesterday">Вчора</string>
<string name="tmrw">Звтр</string>
<string name="yest">Вчр</string>
<string name="sync_SPr_interval_title">Фонова синхронізація</string>
<string name="widget_show_checkboxes">Показати кнопки для галочок</string>
<string name="widget_show_header">Показати заголовок</string>
<string name="widget_show_settings">Показати налаштування</string>
@ -433,7 +432,6 @@
<string name="help">Допомога</string>
<string name="caldav_home_set_not_found">Домашній список не знайдено</string>
<string name="network_error">Не вдалося з’єднатися</string>
<string name="background_sync_unmetered_only">Лише при з\'єднанні без обліку трафіка</string>
<string name="upgrade_to_pro">Покращити до Преміум</string>
<string name="manage_subscription">Змінити підписку</string>
<string name="refresh_purchases">Оновити покупки</string>

@ -254,7 +254,6 @@
<string name="yesterday">昨天</string>
<string name="tmrw">明天</string>
<string name="yest">昨天</string>
<string name="sync_SPr_interval_title">后台同步</string>
<string name="widget_show_checkboxes">显示复选框</string>
<string name="widget_show_header">显示标题</string>
<string name="widget_show_settings">显示设置</string>
@ -398,7 +397,6 @@
<string name="help">帮助</string>
<string name="caldav_home_set_not_found">未设置CalDAVHome</string>
<string name="network_error">无法连接</string>
<string name="background_sync_unmetered_only">仅于不计费的连接</string>
<string name="upgrade_to_pro">升级至专业版</string>
<string name="refresh_purchases">刷新购买</string>
<string name="button_subscribe">订购</string>

@ -159,7 +159,6 @@
<string name="yesterday">昨天</string>
<string name="tmrw">明天</string>
<string name="yest">昨天</string>
<string name="sync_SPr_interval_title">後台同步</string>
<string name="widget_show_checkboxes">顯示核取方塊</string>
<string name="widget_show_header">顯示標頭</string>
<string name="widget_show_settings">顯示設定</string>

@ -376,7 +376,6 @@
<string name="debug">Debug</string>
<string name="p_start_of_week">start_of_week</string>
<string name="p_background_sync">gtask_background_sync</string>
<string name="p_bundle_notifications">bundle_notifications</string>
<string name="p_strict_mode_vm">strict_mode_vm</string>
<string name="p_strict_mode_thread">strict_mode_thread</string>
@ -385,7 +384,6 @@
<string name="p_debug_pro">debug_pro</string>
<string name="p_crash_main_queries">debug_crash_main_queries</string>
<string name="warned_play_services">warned_play_services</string>
<string name="p_background_sync_unmetered_only">background_sync_unmetered_only</string>
<string name="p_sync_ongoing_google_tasks">sync_ongoing_google_tasks</string>
<string name="p_sync_ongoing_caldav">sync_ongoing_caldav</string>
<string name="p_sync_ongoing_etesync">sync_ongoing_etesync</string>

@ -308,7 +308,6 @@ File %1$s contained %2$s.\n\n
<string name="tomorrow_abbrev_lowercase">tmrw</string>
<string name="yest">Yest</string>
<string name="yesterday_abbrev_lowercase">yest</string>
<string name="sync_SPr_interval_title">Background sync</string>
<string name="widget_show_checkboxes">Show checkboxes</string>
<string name="widget_hide_background">Hide background</string>
<string name="widget_show_header">Show header</string>
@ -492,7 +491,6 @@ File %1$s contained %2$s.\n\n
<string name="help_and_feedback">Help &amp; feedback</string>
<string name="caldav_home_set_not_found">Home set not found</string>
<string name="network_error">Could not connect</string>
<string name="background_sync_unmetered_only">Only on unmetered connections</string>
<string name="upgrade_to_pro">Upgrade to pro</string>
<string name="manage_subscription">Modify subscription</string>
<string name="refresh_purchases">Refresh purchases</string>

@ -13,20 +13,4 @@
android:title="@string/add_account"
app:icon="@drawable/ic_outline_add_24px" />
<PreferenceCategory
android:key="@string/sync_SPr_interval_title"
android:title="@string/sync_SPr_interval_title"
app:isPreferenceVisible="false">
<SwitchPreferenceCompat
android:defaultValue="true"
android:key="@string/p_background_sync"
android:title="@string/enabled" />
<SwitchPreferenceCompat
android:defaultValue="false"
android:dependency="@string/p_background_sync"
android:key="@string/p_background_sync_unmetered_only"
android:title="@string/background_sync_unmetered_only" />
</PreferenceCategory>
</PreferenceScreen>

@ -39,21 +39,6 @@
</PreferenceCategory>
<PreferenceCategory
android:key="@string/sync_SPr_interval_title"
android:title="@string/sync_SPr_interval_title">
<SwitchPreferenceCompat
android:defaultValue="true"
android:key="@string/p_background_sync"
android:title="@string/enabled" />
<SwitchPreferenceCompat
android:defaultValue="false"
android:dependency="@string/p_background_sync"
android:key="@string/p_background_sync_unmetered_only"
android:title="@string/background_sync_unmetered_only" />
</PreferenceCategory>
<PreferenceCategory
android:key="@string/app_passwords"
android:title="@string/app_passwords">

Loading…
Cancel
Save