Target Android 11

pull/1127/head
Alex Baker 4 years ago
parent 63c914b493
commit be68fb774b

@ -8,7 +8,9 @@ class PermissivePermissionChecker(@ApplicationContext context: Context) : Permis
override fun canAccessAccounts() = true
override fun canAccessLocation() = true
override fun canAccessForegroundLocation() = true
override fun canAccessBackgroundLocation() = true
override fun canAccessMic() = true
}

@ -28,7 +28,7 @@ class GeofenceApi @Inject constructor(
@SuppressLint("MissingPermission")
suspend fun update(place: Place?) {
if (place == null || !permissionChecker.canAccessLocation()) {
if (place == null || !permissionChecker.canAccessBackgroundLocation()) {
return
}
val client = LocationServices.getGeofencingClient(context)

@ -85,6 +85,12 @@
<!-- ============================================== Exported Permissions = -->
<queries>
<intent>
<action android:name="android.speech.action.RECOGNIZE_SPEECH"/>
</intent>
</queries>
<permission-tree
android:icon="@drawable/ic_check_white_24dp"
android:label="@string/app_name"

@ -9,6 +9,8 @@ package com.todoroo.andlib.utility;
import android.app.Activity;
import android.content.Context;
import android.os.Build;
import android.os.Build.VERSION;
import android.os.Build.VERSION_CODES;
import android.os.Looper;
import android.text.InputType;
import android.util.DisplayMetrics;
@ -154,6 +156,10 @@ public class AndroidUtilities {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q;
}
public static boolean atLeastR() {
return VERSION.SDK_INT >= VERSION_CODES.R;
}
public static void assertMainThread() {
if (BuildConfig.DEBUG && !isMainThread()) {
throw new IllegalStateException("Should be called from main thread");

@ -69,9 +69,8 @@ public class GeofenceDialog extends DialogFragment {
LayoutInflater layoutInflater = LayoutInflater.from(context);
View view = layoutInflater.inflate(R.layout.location_details, null);
ButterKnife.bind(this, view);
boolean hasLocationPermission = permissionChecker.canAccessLocation();
arrivalView.setChecked(hasLocationPermission && geofence.isArrival());
departureView.setChecked(hasLocationPermission && geofence.isDeparture());
arrivalView.setChecked(geofence.isArrival());
departureView.setChecked(geofence.isDeparture());
slider.setLabelFormatter(
value -> getString(R.string.location_radius_meters, locale.formatNumber(value)));
slider.setValueTo(MAX_RADIUS);
@ -119,7 +118,7 @@ public class GeofenceDialog extends DialogFragment {
public void onResume() {
super.onResume();
if (!permissionChecker.canAccessLocation()) {
if (!permissionChecker.canAccessBackgroundLocation()) {
dismiss();
}
}

@ -25,6 +25,6 @@ fun Fragment.safeStartActivityForResult(intent: Intent, rc: Int) {
private fun toast(context: Context?) {
context?.let {
Toast.makeText(it, R.string.no_application_found, Toast.LENGTH_LONG).show()
Toast.makeText(it, R.string.no_app_found, Toast.LENGTH_LONG).show()
}
}

@ -0,0 +1,101 @@
package org.tasks.location
import android.app.Activity.RESULT_OK
import android.app.Dialog
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.provider.Settings
import android.view.View
import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import com.todoroo.andlib.utility.AndroidUtilities.atLeastR
import dagger.hilt.android.AndroidEntryPoint
import org.tasks.BuildConfig
import org.tasks.PermissionUtil.verifyPermissions
import org.tasks.R
import org.tasks.databinding.DialogLocationPermissionsBinding
import org.tasks.dialogs.DialogBuilder
import org.tasks.preferences.FragmentPermissionRequestor
import org.tasks.preferences.PermissionChecker
import org.tasks.preferences.PermissionRequestor.REQUEST_BACKGROUND_LOCATION
import timber.log.Timber
import javax.inject.Inject
@AndroidEntryPoint
class LocationPermissionDialog : DialogFragment() {
@Inject lateinit var dialogBuilder: DialogBuilder
@Inject lateinit var permissionChecker: PermissionChecker
@Inject lateinit var permissionRequestor: FragmentPermissionRequestor
lateinit var binding: DialogLocationPermissionsBinding
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
binding = DialogLocationPermissionsBinding.inflate(layoutInflater)
if (atLeastR()) {
binding.foregroundLocation.visibility = View.VISIBLE
}
binding.foregroundLocation.setOnCheckedChangeListener { _, isChecked ->
if (isChecked) {
permissionRequestor.requestForegroundLocation()
}
}
binding.backgroundLocation.setOnCheckedChangeListener { _, isChecked ->
if (isChecked) {
permissionRequestor.requestBackgroundLocation()
}
}
return dialogBuilder.newDialog(R.string.missing_permissions)
.setView(binding.root)
.setNegativeButton(android.R.string.cancel) { _, _ ->
dismiss()
}
.setNeutralButton(R.string.TLA_menu_settings) { _, _ ->
startActivity(Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS).apply {
addCategory(Intent.CATEGORY_DEFAULT)
data = Uri.parse("package:${BuildConfig.APPLICATION_ID}")
})
}
.show()
}
override fun onResume() {
super.onResume()
if (atLeastR()) {
binding.foregroundLocation.isChecked = permissionChecker.canAccessForegroundLocation()
binding.foregroundLocation.isClickable = !binding.foregroundLocation.isChecked
binding.backgroundLocation.isEnabled = binding.foregroundLocation.isChecked
}
binding.backgroundLocation.isChecked = permissionChecker.canAccessBackgroundLocation()
}
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
Timber.d("onRequestPermissionResult(requestCode = $requestCode, permissions = [${permissions.joinToString()}], grantResults = [${grantResults.joinToString()}])")
when(requestCode) {
REQUEST_BACKGROUND_LOCATION -> {
if (verifyPermissions(grantResults)) {
targetFragment?.onActivityResult(targetRequestCode, RESULT_OK, null)
dismiss()
}
}
else -> super.onRequestPermissionsResult(requestCode, permissions, grantResults)
}
}
companion object {
fun newLocationPermissionDialog(
targetFragment: Fragment,
rc: Int
): LocationPermissionDialog {
val dialog = LocationPermissionDialog()
dialog.setTargetFragment(targetFragment, rc)
return dialog
}
}
}

@ -184,12 +184,12 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
override fun onMapReady(mapFragment: MapFragment) {
map = mapFragment
updateMarkers()
if (permissionChecker.canAccessLocation()) {
if (permissionChecker.canAccessForegroundLocation()) {
mapFragment.showMyLocation()
}
if (mapPosition != null) {
map.movePosition(mapPosition, false)
} else if (permissionRequestor.requestFineLocation()) {
} else if (permissionChecker.canAccessForegroundLocation()) {
moveToCurrentLocation(false)
}
}
@ -215,14 +215,14 @@ class LocationPickerActivity : InjectingAppCompatActivity(), Toolbar.OnMenuItemC
@OnClick(R.id.current_location)
fun onClick() {
if (permissionRequestor.requestFineLocation()) {
if (permissionRequestor.requestForegroundLocation()) {
moveToCurrentLocation(true)
}
}
override fun onRequestPermissionsResult(
requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
if (requestCode == PermissionRequestor.REQUEST_LOCATION) {
if (requestCode == PermissionRequestor.REQUEST_FOREGROUND_LOCATION) {
if (verifyPermissions(grantResults)) {
map.showMyLocation()
moveToCurrentLocation(true)

@ -27,10 +27,14 @@ public class PermissionChecker {
return atLeastOreo() || checkPermissions(permission.GET_ACCOUNTS);
}
public boolean canAccessLocation() {
public boolean canAccessForegroundLocation() {
return checkPermissions(permission.ACCESS_FINE_LOCATION);
}
public boolean canAccessBackgroundLocation() {
return atLeastQ()
? checkPermissions(permission.ACCESS_FINE_LOCATION, permission.ACCESS_BACKGROUND_LOCATION)
: checkPermissions(permission.ACCESS_FINE_LOCATION);
? canAccessForegroundLocation() && checkPermissions(permission.ACCESS_BACKGROUND_LOCATION)
: canAccessForegroundLocation();
}
public boolean canAccessMic() {

@ -1,6 +1,7 @@
package org.tasks.preferences;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastQ;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastR;
import android.Manifest.permission;
@ -9,7 +10,8 @@ public abstract class PermissionRequestor {
public static final int REQUEST_CALENDAR = 51;
public static final int REQUEST_MIC = 52;
public static final int REQUEST_GOOGLE_ACCOUNTS = 53;
public static final int REQUEST_LOCATION = 54;
public static final int REQUEST_BACKGROUND_LOCATION = 54;
public static final int REQUEST_FOREGROUND_LOCATION = 55;
private final PermissionChecker permissionChecker;
@ -43,15 +45,28 @@ public abstract class PermissionRequestor {
return false;
}
public boolean requestFineLocation() {
if (permissionChecker.canAccessLocation()) {
public boolean requestForegroundLocation() {
if (permissionChecker.canAccessForegroundLocation()) {
return true;
}
if (atLeastQ()) {
requestPermissions(REQUEST_FOREGROUND_LOCATION, permission.ACCESS_FINE_LOCATION);
return false;
}
public boolean requestBackgroundLocation() {
if (permissionChecker.canAccessBackgroundLocation()) {
return true;
}
if (atLeastR()) {
if (requestForegroundLocation()) {
requestPermissions(REQUEST_BACKGROUND_LOCATION, permission.ACCESS_BACKGROUND_LOCATION);
}
} else if (atLeastQ()) {
requestPermissions(
REQUEST_LOCATION, permission.ACCESS_FINE_LOCATION, permission.ACCESS_BACKGROUND_LOCATION);
REQUEST_BACKGROUND_LOCATION,
permission.ACCESS_FINE_LOCATION, permission.ACCESS_BACKGROUND_LOCATION);
} else {
requestPermissions(REQUEST_LOCATION, permission.ACCESS_FINE_LOCATION);
requestPermissions(REQUEST_BACKGROUND_LOCATION, permission.ACCESS_FINE_LOCATION);
}
return false;
}

@ -3,7 +3,6 @@ package org.tasks.ui
import android.app.Activity
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.os.Parcelable
import android.text.SpannableString
import android.text.Spanned
@ -15,7 +14,6 @@ import androidx.core.util.Pair
import butterknife.BindView
import butterknife.OnClick
import dagger.hilt.android.AndroidEntryPoint
import org.tasks.PermissionUtil.verifyPermissions
import org.tasks.R
import org.tasks.Strings.isNullOrEmpty
import org.tasks.data.Geofence
@ -23,8 +21,12 @@ import org.tasks.data.Location
import org.tasks.data.Place
import org.tasks.dialogs.DialogBuilder
import org.tasks.dialogs.GeofenceDialog
import org.tasks.location.LocationPermissionDialog.Companion.newLocationPermissionDialog
import org.tasks.location.LocationPickerActivity
import org.tasks.preferences.*
import org.tasks.preferences.Device
import org.tasks.preferences.FragmentPermissionRequestor
import org.tasks.preferences.PermissionChecker
import org.tasks.preferences.Preferences
import java.util.*
import javax.inject.Inject
@ -65,7 +67,7 @@ class LocationControlSet : TaskEditControlFragment() {
} else {
geofenceOptions.visibility = if (device.supportsGeofences()) View.VISIBLE else View.GONE
geofenceOptions.setImageResource(
if (permissionChecker.canAccessLocation()
if (permissionChecker.canAccessBackgroundLocation()
&& (location.isArrival || location.isDeparture)) R.drawable.ic_outline_notifications_24px else R.drawable.ic_outline_notifications_off_24px)
val name = location.displayName
val address = location.displayAddress
@ -122,25 +124,11 @@ class LocationControlSet : TaskEditControlFragment() {
@OnClick(R.id.geofence_options)
fun geofenceOptions() {
if (permissionRequestor.requestFineLocation()) {
if (permissionChecker.canAccessBackgroundLocation()) {
showGeofenceOptions()
}
}
override fun onRequestPermissionsResult(
requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
if (requestCode == PermissionRequestor.REQUEST_LOCATION) {
if (verifyPermissions(grantResults)) {
showGeofenceOptions()
} else {
dialogBuilder
.newDialog(R.string.missing_permissions)
.setMessage(R.string.location_permission_required_geofence)
.setPositiveButton(android.R.string.ok, null)
.show()
}
} else {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
newLocationPermissionDialog(this, REQUEST_LOCATION_PERMISSIONS)
.show(parentFragmentManager, FRAG_TAG_REQUEST_LOCATION)
}
}
@ -171,7 +159,11 @@ class LocationControlSet : TaskEditControlFragment() {
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
if (requestCode == REQUEST_LOCATION_REMINDER) {
if (requestCode == REQUEST_LOCATION_PERMISSIONS) {
if (permissionChecker.canAccessBackgroundLocation()) {
showGeofenceOptions()
}
} else if (requestCode == REQUEST_LOCATION_REMINDER) {
if (resultCode == Activity.RESULT_OK) {
val place: Place = data!!.getParcelableExtra(LocationPickerActivity.EXTRA_PLACE)!!
val location = viewModel.selectedLocation
@ -201,6 +193,8 @@ class LocationControlSet : TaskEditControlFragment() {
const val TAG = R.string.TEA_ctrl_locations_pref
private const val REQUEST_LOCATION_REMINDER = 12153
private const val REQUEST_GEOFENCE_DETAILS = 12154
private const val REQUEST_LOCATION_PERMISSIONS = 12155
private const val FRAG_TAG_LOCATION_DIALOG = "location_dialog"
private const val FRAG_TAG_REQUEST_LOCATION = "request_location"
}
}

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/keyline_first">
<TextView
style="@style/TextAppearance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/background_location_permission_required" />
<androidx.appcompat.widget.SwitchCompat
style="@style/TextAppearance"
android:id="@+id/foreground_location"
android:paddingTop="@dimen/keyline_first"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:text="@string/foreground_location" />
<androidx.appcompat.widget.SwitchCompat
style="@style/TextAppearance"
android:id="@+id/background_location"
android:paddingTop="@dimen/keyline_first"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/background_location" />
</LinearLayout>
</ScrollView>

@ -338,7 +338,6 @@
<string name="show_hidden">Покажи скрити</string>
<string name="show_completed">Покажи завършени</string>
<string name="reverse">Обратно</string>
<string name="no_application_found">Не е намерено приложение за отваряне на прикачения файл</string>
<string name="add_attachment">Добавяне на прикачен файл</string>
<string name="take_a_picture">Заснемане</string>
<string name="pick_from_gallery">Изберете от галерия</string>
@ -458,7 +457,6 @@
<string name="or_choose_a_location">Или избери местоположение</string>
<string name="map_search_provider">Намери доставчик</string>
<string name="missing_permissions">Липсващи разрешения</string>
<string name="location_permission_required_geofence">За напомняния за местоположение са необходими разрешения за местоположението</string>
<string name="location_permission_required_location">Необходими са разрешения за местоположение, за да откриете текущото ви местоположение</string>
<string name="open_map">Отворете картата</string>
<string name="choose_new_location">Изберете ново местоположение</string>

@ -214,7 +214,6 @@
<string name="show_hidden">Zobrazit skryté</string>
<string name="show_completed">Zobrazit dokončené</string>
<string name="reverse">Obrácené pořadí</string>
<string name="no_application_found">Žádná aplikace k otevření přílohy</string>
<string name="add_attachment">Přidat přílohu</string>
<string name="privacy_policy">Zásady ochrany osobních údajů</string>
<string name="send_anonymous_statistics">Vylepšit Tasks</string>
@ -458,7 +457,6 @@
<string name="button_downgrade">Snížit předplatné</string>
<string name="button_upgrade">Zvýšit předplatné</string>
<string name="button_unsubscribe">Zrušit předplatné</string>
<string name="no_application_found_link">Žádná aplikace k otevření odkazu</string>
<string name="encryption_password_required">Zadejte heslo pro šifrování</string>
<string name="encryption_password">Heslo pro šifrování</string>
<string name="passwords_do_not_match">Hesla se neshodují</string>
@ -489,7 +487,6 @@
<string name="or_choose_a_location">Nebo vyberte místo</string>
<string name="map_search_provider">Poskytovatel vyhledávání</string>
<string name="missing_permissions">Chybí oprávnění</string>
<string name="location_permission_required_geofence">Oprávnění k přístupu k poloze je nutné pro upomínky podle polohy</string>
<string name="location_permission_required_location">Oprávnění k přístupu k poloze je nutné pro zjištění Vaší aktuální polohy</string>
<string name="open_map">Otevřít mapu</string>
<string name="choose_new_location">Vybrat novou polohu</string>

@ -350,8 +350,6 @@
<string name="pick_from_gallery">Vælg fra galleri</string>
<string name="take_a_picture">Tag et billede</string>
<string name="add_attachment">Vedhæft fil</string>
<string name="no_application_found_link">Der er ikke nogen app, som kan åbne linket</string>
<string name="no_application_found">Der er ikke nogen app, som kan åbne den vedhæftede fil</string>
<string name="show_completed">Vis udførte</string>
<string name="show_hidden">Vis skjulte</string>
<string name="filter_settings">Filterindstillinger</string>
@ -412,7 +410,6 @@
<string name="sort_created_group">Oprettet %s</string>
<string name="disable_battery_optimizations">Deaktiver strømsparetilstand</string>
<string name="wearable_notifications_summary">Vis notifikationer på din wearable-enhed</string>
<string name="location_permission_required_geofence">Placeringstilladelse kræves for placeringspåmindelser</string>
<string name="license_summary">Tasks er gratis, open-source software udgivet under GNU General Public License v3.0</string>
<string name="button_upgrade">Opgrader abonnement</string>
<string name="button_downgrade">Nedgrader abonnement</string>

@ -336,7 +336,6 @@
<string name="show_hidden">Ausgeblendete anzeigen</string>
<string name="show_completed">Erledigte anzeigen</string>
<string name="reverse">Rückwärts</string>
<string name="no_application_found">Keine Anwendung konnte den Anhang öffnen</string>
<string name="add_attachment">Anhang hinzufügen</string>
<string name="take_a_picture">Bild aufnehmen</string>
<string name="pick_from_gallery">Aus Galerie wählen</string>
@ -455,7 +454,6 @@
<string name="or_choose_a_location">Oder Ort auswählen</string>
<string name="map_search_provider">Suchanbieter</string>
<string name="missing_permissions">Fehlende Berechtigungen</string>
<string name="location_permission_required_geofence">Standortberechtigung wird für ortsbasierte Erinnerungen benötigt</string>
<string name="location_permission_required_location">Standortberechtigung wird zur Ermittlung des aktuellen Standortes benötigt</string>
<string name="open_map">Karte öffnen</string>
<string name="choose_new_location">Neuen Ort auswählen</string>
@ -498,7 +496,6 @@
<string name="subtasks">Teilaufgaben</string>
<string name="subtasks_multilevel_google_task">Mehrstufige Teilaufgaben werden von Google Tasks nicht unterstützt</string>
<string name="enter_title_hint">Titel eingeben</string>
<string name="no_application_found_link">Keine Anwendung konnte den Link verarbeiten</string>
<string name="encryption_password_required">Verschlüsselungs-Passwort erforderlich</string>
<string name="encryption_password">Verschlüsselungspasswort</string>
<string name="display_name">Anzeigename</string>

@ -338,7 +338,6 @@
<string name="show_hidden">Mostrar oculto</string>
<string name="show_completed">Mostrar completado</string>
<string name="reverse">Invertir</string>
<string name="no_application_found">Ninguna aplicación podría abrir el archivo adjunto</string>
<string name="add_attachment">Adjuntar archivo</string>
<string name="take_a_picture">Tomar fotografía</string>
<string name="pick_from_gallery">Elegir desde la galería</string>
@ -458,7 +457,6 @@
<string name="or_choose_a_location">O elija una ubicación</string>
<string name="map_search_provider">Proveedor de búsquedas</string>
<string name="missing_permissions">Permisos ausentes</string>
<string name="location_permission_required_geofence">Son necesarios permisos de ubicación para los recordatorios de ubicación</string>
<string name="location_permission_required_location">Son necesarios permisos de ubicación para encontrar tu ubicación actual</string>
<string name="open_map">Abrir mapa</string>
<string name="choose_new_location">Escoger nueva ubicación</string>
@ -498,7 +496,6 @@
<string name="subtasks">Subtareas</string>
<string name="subtasks_multilevel_google_task">Subtareas multinivel no compatibles con Google Tasks</string>
<string name="enter_title_hint">Introducir título</string>
<string name="no_application_found_link">Ninguna aplicación podría manejar el enlace</string>
<string name="enter_tag_name">Introduzca el nombre de la etiqueta</string>
<string name="create_new_tag">Crear \"%s\"</string>
<string name="encryption_password_required">Contraseña de encriptado requerida</string>

@ -341,7 +341,6 @@
<string name="show_hidden">Erakutsi ezkutatutakoak</string>
<string name="show_completed">Erakutsi burututakoak</string>
<string name="reverse">Alderantziz</string>
<string name="no_application_found">Ez dago aplikaziorik eranskina irekitzeko</string>
<string name="add_attachment">Gehitu eranskina</string>
<string name="take_a_picture">Atera argazkia</string>
<string name="pick_from_gallery">Hautatu galeriatik</string>
@ -464,7 +463,6 @@
<string name="or_choose_a_location">Edo hautatu kokaleku bat</string>
<string name="map_search_provider">Bilatu hornitzailea</string>
<string name="missing_permissions">Baimenak falta dira</string>
<string name="location_permission_required_geofence">Kokapen baimena behar da kokalekuen araberako oroigarrientzat</string>
<string name="location_permission_required_location">Kokapen baimena behar da zure uneko kokalekua aurkitzeko</string>
<string name="open_map">Ireki mapa</string>
<string name="choose_new_location">Hautatu kokaleku berria</string>
@ -498,7 +496,6 @@
<string name="subtasks">Azpi-zereginak</string>
<string name="subtasks_multilevel_google_task">Google Tasks-ek ez ditu hainbat mailako azpi-zereginak onartzen</string>
<string name="enter_title_hint">Sartu izenburua</string>
<string name="no_application_found_link">Ez dago aplikaziorik esteka kudeatzeko</string>
<string name="enter_tag_name">Idatzi etiketaren izena</string>
<string name="create_new_tag">Sortu \"%s\"</string>
<string name="encryption_password_required">Zifratze pasahitza behar da</string>

@ -321,7 +321,6 @@
<string name="show_hidden">Näytä piilotetut</string>
<string name="show_completed">Näytä valmiit</string>
<string name="reverse">Käänteinen</string>
<string name="no_application_found">Liitteen avaamiseen ei löydy sovellusta</string>
<string name="add_attachment">Lisää liite</string>
<string name="take_a_picture">Ota kuva</string>
<string name="pick_from_gallery">Valitse galleriasta</string>
@ -452,7 +451,6 @@
<string name="choose_new_location">Valitse uusi sijainti</string>
<string name="open_map">Avaa kartta</string>
<string name="location_permission_required_location">Sijaintioikeudet tarvitaan nykysijainnin paikannukseen</string>
<string name="location_permission_required_geofence">Sijaintioikeudet tarvitaan sijaintipohjaisiin muistutuksiin</string>
<string name="missing_permissions">Oikeuksia puuttuu</string>
<string name="map_search_provider">Hauntarjoaja</string>
<string name="or_choose_a_location">Tai valitse muu sijainti</string>
@ -499,7 +497,6 @@
<string name="encryption_password_required">Salauksen salasana vaaditaan</string>
<string name="password_required">Salasana vaaditaan</string>
<string name="username_required">Käyttäjänimi vaaditaan</string>
<string name="no_application_found_link">Linkin käsittelemiseen ei löydy sovellusta</string>
<string name="move">Siirrä</string>
<string name="menu_discard_changes">Hylkää muutokset</string>
<string name="location_radius_meters">%s m</string>

@ -320,7 +320,6 @@
<string name="show_hidden">Afficher les tâches cachées</string>
<string name="show_completed">Afficher les tâches terminées</string>
<string name="reverse">Inverser</string>
<string name="no_application_found">Aucune application ne peut ouvrir la pièce jointe</string>
<string name="add_attachment">Ajouter une pièce jointe</string>
<string name="take_a_picture">Prendre une photo</string>
<string name="pick_from_gallery">Choisir depuis la galerie</string>
@ -440,7 +439,6 @@
<string name="or_choose_a_location">Ou choisir une localisation</string>
<string name="map_search_provider">Moteurs de recherche</string>
<string name="missing_permissions">Permissions manquantes</string>
<string name="location_permission_required_geofence">La permission de la localisation est nécessaire pour les rappels de localisation</string>
<string name="location_permission_required_location">La permission de la localisation est nécessaire pour trouver votre localisation actuelle</string>
<string name="open_map">Ouvrir la carte</string>
<string name="choose_new_location">Choisir une nouvelle localisation</string>
@ -493,7 +491,6 @@
<string name="subtasks">Sous-tâches</string>
<string name="subtasks_multilevel_google_task">Les sous-tâches multi-niveaux ne sont pas prises en charge par Google Tasks</string>
<string name="enter_title_hint">Entrer le titre</string>
<string name="no_application_found_link">Aucune application ne pouvait gérer le lien</string>
<string name="enter_tag_name">Entrez le nom du tag</string>
<string name="create_new_tag">Créer %s</string>
<string name="encryption_password_required">Mot de passe de chiffrement requis</string>

@ -243,7 +243,6 @@
<string name="show_hidden">Mostrar oculto</string>
<string name="show_completed">Mostrar completado</string>
<string name="reverse">Invertir</string>
<string name="no_application_found">No se ha encontrado una aplicación para abrir el archivo adjunto</string>
<string name="add_attachment">Adjuntar archivo</string>
<string name="take_a_picture">Tomar fotografía</string>
<string name="pick_from_gallery">Elegir desde la galería</string>

@ -337,7 +337,6 @@
<string name="show_hidden">Rejtettek megjelenítése</string>
<string name="show_completed">Elvégzettek megjelenítése</string>
<string name="reverse">Visszafelé</string>
<string name="no_application_found">A csatolmány megnyitására alkalmas app nem található</string>
<string name="add_attachment">Csatolmány hozzáadása</string>
<string name="take_a_picture">Kép készítése</string>
<string name="pick_from_gallery">Kiválasztás a galériából</string>
@ -459,7 +458,6 @@
<string name="or_choose_a_location">Vagy másik hely keresése</string>
<string name="map_search_provider">Keresési szolgáltató</string>
<string name="missing_permissions">Hiányzó jogosultságok</string>
<string name="location_permission_required_geofence">A hely emlékeztetőkhöz helymeghatározási jogosultság szükséges</string>
<string name="location_permission_required_location">A jelenlegi pozíció meghatározásához helymeghatározási jogosultság szükséges</string>
<string name="open_map">Térkép megnyitása</string>
<string name="choose_new_location">Új hely kiválasztása</string>
@ -496,7 +494,6 @@
<string name="subtasks">Részfeladatok</string>
<string name="subtasks_multilevel_google_task">A Google Tasks nem támogatja a többszintű részfeladatokat</string>
<string name="enter_title_hint">Cím megadása</string>
<string name="no_application_found_link">A link feldolgozására képes app nem található</string>
<string name="enter_tag_name">Címke neve</string>
<string name="create_new_tag">\"%s\" létrehozása</string>
<string name="encryption_password_required">A titkosításhoz jelszó szükséges</string>

@ -250,8 +250,6 @@
<string name="filter_settings">Pengaturan Filter</string>
<string name="show_hidden">Tampilkan tersembunyi</string>
<string name="show_completed">Tampilkan selesai</string>
<string name="no_application_found">Tidak ada aplikasi yang bisa membuka lampiran</string>
<string name="no_application_found_link">Tidak ada aplikasi yang bisa membuka tautan</string>
<string name="add_attachment">Tambah lampiran</string>
<string name="take_a_picture">Ambil gambar</string>
<string name="pick_from_gallery">Pilih dari galeri</string>
@ -388,7 +386,6 @@
<string name="pick_this_location">Pilih lokasi ini</string>
<string name="or_choose_a_location">Atau cari lokasi</string>
<string name="map_search_provider">Penyedia pencarian</string>
<string name="location_permission_required_geofence">Membutuhkan izin akses lokasi untuk pengingat lokasi</string>
<string name="location_permission_required_location">Membutuhkan izin akses lokasi untuk menentukan lokasi anda saat ini</string>
<string name="open_map">Buka peta</string>
<string name="choose_new_location">Pilih lokasi baru</string>

@ -334,7 +334,6 @@
<string name="show_hidden">Mostra nascoste</string>
<string name="show_completed">Mostra completate</string>
<string name="reverse">Inverso</string>
<string name="no_application_found">Nessuna app configurata per aprire l\'allegato</string>
<string name="add_attachment">Aggiungi allegato</string>
<string name="take_a_picture">Scatta un foto</string>
<string name="pick_from_gallery">Scegli dalla libreria</string>
@ -454,7 +453,6 @@
<string name="or_choose_a_location">O scegli un\'altra posizione</string>
<string name="map_search_provider">Cerca fornitore</string>
<string name="missing_permissions">Permessi mancanti</string>
<string name="location_permission_required_geofence">I promemoria con la posizione richiedono i permessi di localizzazione</string>
<string name="location_permission_required_location">Per trovare la tua posizione sono richiesti i permessi di localizzazione</string>
<string name="open_map">Apri mappa</string>
<string name="choose_new_location">Scegli nuova posizione</string>
@ -533,7 +531,6 @@
<string name="theme_system_default">Predefinito del sistema</string>
<string name="icon">Icona</string>
<string name="passwords_do_not_match">Le password non corrispondono</string>
<string name="no_application_found_link">Non è stata trovata una app per gestire il collegamento</string>
<string name="menu_discard_changes">Ignora le modifiche</string>
<plurals name="subtask_count">
<item quantity="one">%d attività secondaria</item>

@ -371,7 +371,6 @@
<string name="show_hidden">הצגת משימות נסתרות</string>
<string name="show_completed">הצגת משימות שבוצעו</string>
<string name="reverse">אחורה</string>
<string name="no_application_found">אף יישום לא יכול לפתוח קובץ מצורף זה</string>
<string name="add_attachment">הוספ/י קובץ</string>
<string name="take_a_picture">צלם תמונה</string>
<string name="pick_from_gallery">בחירה מהגלריה</string>
@ -493,7 +492,6 @@
<string name="or_choose_a_location">או בחרו מיקום</string>
<string name="map_search_provider">ספק חיפוש</string>
<string name="missing_permissions">חסרות הרשאות</string>
<string name="location_permission_required_geofence">הרשאות מיקום נדרשות עבור תזכורות מבוססות מיקום</string>
<string name="location_permission_required_location">הרשאות מיקום נדרשות על מנת למצוא את מיקומך הנוכחי</string>
<string name="open_map">פתיחת מפה</string>
<string name="choose_new_location">בחירת מיקום חדש</string>
@ -570,7 +568,6 @@
<string name="chip_appearance_text_and_icon">טקסט וסמל</string>
<string name="encryption_password_wrong">סיסמת הצפנה שגויה</string>
<string name="encryption_password_required">דרושה סיסמת הצפנה</string>
<string name="no_application_found_link">אין יישום שיכול לטפל בקישור</string>
<string name="menu_discard_changes">בטל שינויים</string>
<string name="subtasks">תתי משימות</string>
<string name="widget_show_dividers">הצג חוצצים</string>

@ -335,7 +335,6 @@
<string name="show_hidden">非表示を表示</string>
<string name="show_completed">完了を表示</string>
<string name="reverse">逆順</string>
<string name="no_application_found">添付ファイルを開くアプリケーションが見つかりません</string>
<string name="add_attachment">添付ファイルを追加</string>
<string name="take_a_picture">写真を撮影</string>
<string name="pick_from_gallery">ギャラリーから選択</string>
@ -456,7 +455,6 @@
<string name="or_choose_a_location">または場所を選ぶ</string>
<string name="map_search_provider">プロバイダーを検索</string>
<string name="missing_permissions">アクセス許可がありません</string>
<string name="location_permission_required_geofence">場所リマインダーには位置のアクセス許可が必要です</string>
<string name="location_permission_required_location">現在の場所を見つけるには位置のアクセス許可が必要です</string>
<string name="open_map">地図を開く</string>
<string name="choose_new_location">新しい場所を選択</string>

@ -337,7 +337,6 @@
<string name="show_hidden">숨겨진 할일 표시</string>
<string name="show_completed">완료한 할일 표시</string>
<string name="reverse">역순</string>
<string name="no_application_found">첨부파일을 열 수 있는 앱이 없습니다</string>
<string name="add_attachment">첨부파일 추가</string>
<string name="take_a_picture">사진 촬영</string>
<string name="pick_from_gallery">갤러리에서 선택</string>
@ -462,7 +461,6 @@
<string name="or_choose_a_location">위치 고르기</string>
<string name="map_search_provider">검색 제공업체</string>
<string name="missing_permissions">권한 누락</string>
<string name="location_permission_required_geofence">위치 알림을 사용하려면 위치 권한이 필요합니다</string>
<string name="location_permission_required_location">기기의 현재 위치를 확인하려면 위치 권한이 필요합니다</string>
<string name="open_map">지도 열기</string>
<string name="choose_new_location">새 위치 선택</string>
@ -494,7 +492,6 @@
<string name="subtasks">하위할일</string>
<string name="subtasks_multilevel_google_task">Google Tasks는 다단계 하위할일을 지원하지 않습니다</string>
<string name="enter_title_hint">제목 입력</string>
<string name="no_application_found_link">링크를 처리할 앱이 없습니다</string>
<string name="enter_tag_name">태그 이름 입력</string>
<string name="create_new_tag">\"%s\" 생성</string>
<string name="encryption_password_required">암호화 비밀번호 필수</string>

@ -334,7 +334,6 @@
<string name="show_hidden">Rodyti paslėptus</string>
<string name="show_completed">Rodyti užbaigtus</string>
<string name="reverse">Atvirkščiai</string>
<string name="no_application_found">Nerasta programa, kuri galėtų atidaryti prisegtą failą</string>
<string name="add_attachment">Pridėti failą</string>
<string name="take_a_picture">Nufotografuoti</string>
<string name="pick_from_gallery">Pasirinkti iš galerijos</string>
@ -455,7 +454,6 @@
<string name="or_choose_a_location">Arba pasirinkti vietą</string>
<string name="map_search_provider">Paieškos tiekėjas</string>
<string name="missing_permissions">Dingę leidimai</string>
<string name="location_permission_required_geofence">Vietos leidimai reikalingi priminimams pagal vietą</string>
<string name="location_permission_required_location">Vietos leidimai reikalingi surasti jūsų esamą vietą</string>
<string name="open_map">Atidaryti žemėlapį</string>
<string name="choose_new_location">Pasirinkti naują vietą</string>

@ -367,7 +367,6 @@
<string name="copy">Kopier</string>
<string name="move">Flytt</string>
<string name="reverse">Omvend</string>
<string name="no_application_found">Fant ikke noe program til åpning av vedlegg</string>
<string name="add_attachment">Legg til vedlegg</string>
<string name="take_a_picture">Ta et bilde</string>
<string name="pick_from_gallery">Velg fra galleri</string>
@ -464,7 +463,6 @@
<string name="or_choose_a_location">Eller velg et sted</string>
<string name="map_search_provider">Søketilbyder</string>
<string name="missing_permissions">Manglende tilganger</string>
<string name="location_permission_required_geofence">Plasseringstilganger trengs for stedspåminnelser</string>
<string name="location_permission_required_location">Plasseringstilganger trengs for å finne ditt nåværende sted</string>
<string name="open_map">Åpne kart</string>
<string name="choose_new_location">Velg nytt sted</string>
@ -498,7 +496,6 @@
<string name="TEA_add_subtask">Legg til gjøremålssteg</string>
<string name="subtasks">Gjøremålssteg</string>
<string name="subtasks_multilevel_google_task">Gjøremålssteg med flere nivåer støttes ikke av Google Tasks</string>
<string name="no_application_found_link">Mangler program for håndtering av lenke</string>
<string name="enter_tag_name">Skriv inn etikettnavn</string>
<string name="create_new_tag">Opprett «%s»</string>
<string name="encryption_password_required">Krypteringspassord kreves</string>

@ -331,7 +331,6 @@
<string name="show_hidden">Toon verborgen</string>
<string name="show_completed">Toon voltooide</string>
<string name="reverse">Omgekeerde</string>
<string name="no_application_found">Geen applicatie kan de bijlage te openen</string>
<string name="add_attachment">Bijlage toevoegen</string>
<string name="take_a_picture">Maak een foto</string>
<string name="pick_from_gallery">Kies uit de gallerij</string>
@ -448,7 +447,6 @@
<string name="or_choose_a_location">Of kies een locatie</string>
<string name="map_search_provider">Zoek aanbieder</string>
<string name="missing_permissions">Missende rechten</string>
<string name="location_permission_required_geofence">Locatie rechten zijn nodig voor locatie herinneringen</string>
<string name="location_permission_required_location">Locatie rechten zijn nodig om je huidige locatie te vinden</string>
<string name="open_map">Open kaart</string>
<string name="choose_new_location">Kies nieuwe locatie</string>
@ -493,7 +491,6 @@
<string name="subtasks">Deeltaken</string>
<string name="subtasks_multilevel_google_task">Deeltaken met meerdere niveau\'s worden niet ondersteund door Google Taken</string>
<string name="enter_title_hint">Voer titel in</string>
<string name="no_application_found_link">Geen applicatie kan de link te openen</string>
<string name="enter_tag_name">Voer label naam in</string>
<string name="create_new_tag">Maak \"%s\" aan</string>
<string name="encryption_password_required">Coderingswachtwoord vereist</string>

@ -349,7 +349,6 @@
<string name="show_hidden">Pokaż ukryte</string>
<string name="show_completed">Pokaż ukończone</string>
<string name="reverse">Odwrotnie</string>
<string name="no_application_found">Nie znaleziono aplikacji do otwarcia załącznika</string>
<string name="add_attachment">Dodaj załącznik</string>
<string name="take_a_picture">Wybierz obrazek</string>
<string name="pick_from_gallery">Wybierz z galerii</string>
@ -468,7 +467,6 @@
<string name="or_choose_a_location">Lub wybierz lokalizację</string>
<string name="map_search_provider">Silnik wyszukiwania</string>
<string name="missing_permissions">Brakujące uprawnienia</string>
<string name="location_permission_required_geofence">Uprawnienia lokalizacji są wymagane do powiadomień o lokalizacji</string>
<string name="location_permission_required_location">Uprawnienia lokalizacji są wymagane do ustalenia twojej aktualnej lokalizacji</string>
<string name="open_map">Otwórz mapę</string>
<string name="choose_new_location">Wybierz nową lokalizację</string>
@ -509,7 +507,6 @@
<string name="subtasks">Podzadania</string>
<string name="subtasks_multilevel_google_task">Wielopoziomowe podzadania nie są obsługiwane przez Google Tasks</string>
<string name="enter_title_hint">Wprowadź tytuł</string>
<string name="no_application_found_link">Nie znaleziono aplikacji do otwarcia linku</string>
<string name="enter_tag_name">Wprowadź nazwę tagu</string>
<string name="create_new_tag">Stwórz \"%s\"</string>
<string name="encryption_password_required">Wymagane hasło szyfrowania</string>

@ -335,7 +335,6 @@
<string name="show_hidden">Mostrar ocultas</string>
<string name="show_completed">Mostrar concluídas</string>
<string name="reverse">Reverso</string>
<string name="no_application_found">Nenhum aplicativo encontrado para abrir o anexo</string>
<string name="add_attachment">Adicionar anexo</string>
<string name="take_a_picture">Tirar uma foto</string>
<string name="pick_from_gallery">Selecionar da galeria</string>
@ -456,7 +455,6 @@
<string name="or_choose_a_location">Ou escolha uma localização</string>
<string name="map_search_provider">Provedor de pesquisa</string>
<string name="missing_permissions">Permissões faltando</string>
<string name="location_permission_required_geofence">Permissão de Localização é necessária para lembretes de localização</string>
<string name="location_permission_required_location">Permissão de Localização é necessária para encontrar sua localização atual</string>
<string name="open_map">Abrir mapa</string>
<string name="choose_new_location">Escolher nova localização</string>
@ -568,7 +566,6 @@
<string name="passwords_do_not_match">Senhas não conferem</string>
<string name="encryption_password_wrong">Senha de encriptação errada</string>
<string name="encryption_password_required">Senha de encriptação necessária</string>
<string name="no_application_found_link">Nenhum aplicativo consegue abrir o link</string>
<string name="date_shortcut_tomorrow_night">Amanhã à noite</string>
<string name="date_shortcut_tomorrow_evening">Amanhã à tardinha</string>
<string name="location_radius_meters">%s m</string>

@ -318,7 +318,6 @@
<string name="show_hidden">Mostrar ocultas</string>
<string name="show_completed">Mostrar terminadas</string>
<string name="reverse">Reverter</string>
<string name="no_application_found">Nenhuma aplicação encontrada para abrir o anexo</string>
<string name="add_attachment">Adicionar anexo</string>
<string name="take_a_picture">Tirar uma foto</string>
<string name="pick_from_gallery">Escolher da galeria</string>
@ -416,7 +415,6 @@
<string name="choose_new_location">Escolher nova localização</string>
<string name="open_map">Abrir mapa</string>
<string name="location_permission_required_location">Permissão de localização é necessária para encontrar a sua localização atual</string>
<string name="location_permission_required_geofence">Permissão de localização é necessária para lembretes de localização</string>
<string name="missing_permissions">Permissões faltando</string>
<string name="map_search_provider">Provedor de pesquisa</string>
<string name="or_choose_a_location">Ou escolha uma localização</string>
@ -590,7 +588,6 @@
<string name="encryption_password_required">Uma palavra-passe de encriptação necessária</string>
<string name="create_new_tag">Criar \"%s\"</string>
<string name="enter_tag_name">Digite o nome da etiqueta</string>
<string name="no_application_found_link">Nenhuma aplicação consegue abrir a ligação</string>
<string name="enter_title_hint">Digite um título</string>
<string name="subtasks_multilevel_google_task">Sub-tarefas em multiplos níveis não suportados pelo Google Tasks</string>
<string name="subtasks">Sub-tarefas</string>

@ -355,7 +355,6 @@
<string name="show_hidden">Показать скрытые</string>
<string name="show_completed">Показать выполненные</string>
<string name="reverse">Наоборот</string>
<string name="no_application_found">Не найдено приложение для открытия прикреплённого файла</string>
<string name="add_attachment">Прикрепить файл</string>
<string name="take_a_picture">Сделать снимок</string>
<string name="pick_from_gallery">Выбрать изображение из галереи</string>
@ -503,7 +502,6 @@
</plurals>
<string name="TEA_add_subtask">Добавить подзадачу</string>
<string name="subtasks">Подзадачи</string>
<string name="location_permission_required_geofence">Доступ к данным о геолокации нужен для напоминаний, основанных на местоположении</string>
<string name="location_permission_required_location">Доступ к данным о геолокации нужен, чтобы определить Ваше текущее местоположение</string>
<string name="third_party_licenses">Сторонние лицензии</string>
<string name="google_tasks_add_to_top">Новые задачи наверху</string>
@ -514,7 +512,6 @@
<string name="collapse_subtasks">Свернуть подзадачи</string>
<string name="subtasks_multilevel_google_task">Многоуровневые подзадачи не поддерживаются Google Tasks</string>
<string name="enter_title_hint">Введите название</string>
<string name="no_application_found_link">Не найдено приложение для открытия ссылки</string>
<string name="enter_tag_name">Введите имя тега</string>
<string name="create_new_tag">Создать \"%s\"</string>
<string name="encryption_password_required">Требуется пароль шифрования</string>

@ -335,7 +335,6 @@
<string name="show_hidden">Zobraziť skryté</string>
<string name="show_completed">Zobraziť dokončené</string>
<string name="reverse">Opačné</string>
<string name="no_application_found">Na otvorenie tohto súboru nebola nájdená vhodná aplikácia </string>
<string name="add_attachment">Pridať prílohu </string>
<string name="take_a_picture">Spraviť obrázok</string>
<string name="pick_from_gallery">Vybrať z galérie</string>
@ -455,7 +454,6 @@
<string name="or_choose_a_location">Alebo vybrať polohu ručne</string>
<string name="map_search_provider">Vyhľadávanie poskytuje</string>
<string name="missing_permissions">Chýbajúce oprávnenia</string>
<string name="location_permission_required_geofence">Pre upozornenia podľa polohy sú potrebné povolenia</string>
<string name="location_permission_required_location">Pre učenie súčasnej polohy sú potrebné povolenia</string>
<string name="open_map">Otvoriť mapu</string>
<string name="choose_new_location">Zvoliť novú polohu</string>

@ -241,7 +241,6 @@
<string name="show_hidden">Visa dolda</string>
<string name="show_completed">Visa slutförda</string>
<string name="reverse">Omvänt</string>
<string name="no_application_found">Ingen applikation hittades för att öppna bilagan</string>
<string name="add_attachment">Bifoga filer</string>
<string name="take_a_picture">Ta en bild</string>
<string name="pick_from_gallery">Välj från album</string>
@ -459,7 +458,6 @@
<string name="or_choose_a_location">Eller Välj en plats</string>
<string name="map_search_provider">Sökleverantör</string>
<string name="missing_permissions">Saknar behörigheter</string>
<string name="location_permission_required_geofence">Läge behörigheter behövs för plats påminnelser</string>
<string name="location_permission_required_location">Plats behörigheter behövs för att hitta din aktuella plats</string>
<string name="open_map">Öppna karta</string>
<string name="choose_new_location">Välj ny plats</string>

@ -288,7 +288,6 @@
<string name="choose_new_location">புதிய இருப்பிடத்தைத் தேர்வுசெய்க</string>
<string name="open_map">வரைபடத்தைத் திறக்கவும்</string>
<string name="location_permission_required_location">உங்கள் தற்போதைய இருப்பிடத்தைக் கண்டுபிடிக்க இருப்பிட அனுமதிகள் தேவை</string>
<string name="location_permission_required_geofence">இருப்பிட நினைவூட்டல்களுக்கு இருப்பிட அனுமதிகள் தேவை</string>
<string name="missing_permissions">அனுமதிகள் இல்லை</string>
<string name="map_search_provider">தேடல் வழங்குநர்</string>
<string name="or_choose_a_location">அல்லது இருப்பிடத்தைத் தேர்வுசெய்க</string>
@ -428,8 +427,6 @@
<string name="pick_from_gallery">கேலரியில் இருந்து எடுக்கவும்</string>
<string name="take_a_picture">படம் எடுக்கவும்</string>
<string name="add_attachment">இணைப்பை சேர்க்கவும்</string>
<string name="no_application_found_link">எந்த பயன்பாட்டையும் இணைப்பைக் கையாள முடியவில்லை</string>
<string name="no_application_found">எந்த பயன்பாட்டைய இணைப்பையும் திறக்க முடியவில்லை</string>
<string name="reverse">தலைகீழ்</string>
<string name="show_completed">நிகழ்ச்சி முடிந்தது</string>
<string name="show_hidden">மறைக்கப்பட்டதைக் காட்டு</string>

@ -340,7 +340,6 @@
<string name="show_hidden">Gizlenenleri göster</string>
<string name="show_completed">Tamamlananları göster</string>
<string name="reverse">Ters</string>
<string name="no_application_found">Eki açacak uygulama yok</string>
<string name="add_attachment">Ek ekle</string>
<string name="take_a_picture">Bir fotoğraf çek</string>
<string name="pick_from_gallery">Galeriden seç</string>
@ -461,7 +460,6 @@
<string name="or_choose_a_location">Ya da konum seç</string>
<string name="map_search_provider">Arama sağlayıcı</string>
<string name="missing_permissions">Eksik izinler</string>
<string name="location_permission_required_geofence">Konum anımsatıcılar için konum izinleri gereklidir</string>
<string name="location_permission_required_location">Geçerli konumunuzu bulmak için konum izinleri gereklidir</string>
<string name="open_map">Haritayı</string>
<string name="choose_new_location">Yeni konum seç</string>
@ -498,7 +496,6 @@
<string name="subtasks">Alt görevler</string>
<string name="subtasks_multilevel_google_task">Google Tasks, çoklu düzey alt görevleri desteklemez</string>
<string name="enter_title_hint">Başlık girin</string>
<string name="no_application_found_link">Bağlantıyı işleyecek uygulama yok</string>
<string name="enter_tag_name">Etiket adı girin</string>
<string name="create_new_tag">\"%s\" oluştur</string>
<string name="encryption_password_required">Şifreleme parolası gerekli</string>

@ -353,7 +353,6 @@
<string name="show_hidden">Показати приховані</string>
<string name="show_completed">Показати завершені</string>
<string name="reverse">Реверс</string>
<string name="no_application_found">Не знайдено програми для відкриття прикріпленого файлу</string>
<string name="add_attachment">Додати вкладення</string>
<string name="take_a_picture">Зробити фото</string>
<string name="pick_from_gallery">Обрати з галереї</string>
@ -474,7 +473,6 @@
<string name="or_choose_a_location">Або вказати інше місце</string>
<string name="map_search_provider">Знайти провайдера</string>
<string name="missing_permissions">Відсутні дозволи</string>
<string name="location_permission_required_geofence">Для нагадувань за місцем необхідний дозвіл на перегляд місцезнаходження </string>
<string name="location_permission_required_location">Щоб визначити ваше місцезнаходження необхідний дозвіл на перегляд місцезнаходження </string>
<string name="open_map">Відкрити карту</string>
<string name="choose_new_location">Обрати нове місце</string>
@ -503,7 +501,6 @@
<string name="desaturate_colors_summary_off">Кольори не будуть ненасиченими в темних темах</string>
<string name="desaturate_colors_summary_on">Кольори будуть ненасиченими в темних темах</string>
<string name="theme_system_default">За системними налаштуваннями</string>
<string name="no_application_found_link">Не знайдено програми, щоб відкрити посилання</string>
<plurals name="subtask_count">
<item quantity="one">%d підзадача</item>
<item quantity="few">%d підзадачі</item>

@ -320,7 +320,6 @@
<string name="show_hidden">显示隐藏的任务</string>
<string name="show_completed">显示已完成任务</string>
<string name="reverse">反向</string>
<string name="no_application_found">没有能打开附件的应用</string>
<string name="add_attachment">添加附件</string>
<string name="take_a_picture">拍张照片</string>
<string name="pick_from_gallery">从相册选一张</string>
@ -454,7 +453,6 @@
<string name="or_choose_a_location">或选择一个位置</string>
<string name="map_search_provider">搜索引擎供应商</string>
<string name="missing_permissions">缺少权限</string>
<string name="location_permission_required_geofence">位置提醒功能需要位置权限</string>
<string name="location_permission_required_location">需要位置权限来发现您当前位置</string>
<string name="open_map">打开地图</string>
<string name="choose_new_location">选择新位置</string>
@ -489,7 +487,6 @@
<string name="subtasks">子任务</string>
<string name="subtasks_multilevel_google_task">Google Tasks不支持多层子任务</string>
<string name="enter_title_hint">输入标题</string>
<string name="no_application_found_link">没有找到能处理链接的应用</string>
<string name="enter_tag_name">输入标签名称</string>
<string name="create_new_tag">创建\"%s\"</string>
<string name="encryption_password_required">需要加密密码</string>

@ -367,8 +367,7 @@ File %1$s contained %2$s.\n\n
<string name="show_hidden">Show hidden</string>
<string name="show_completed">Show completed</string>
<string name="reverse">Reverse</string>
<string name="no_application_found">No app could open attachment</string>
<string name="no_application_found_link">No app could handle link</string>
<string name="no_app_found">No app could handle this request</string>
<string name="add_attachment">Add attachment</string>
<string name="take_a_picture">Take a picture</string>
<string name="pick_from_gallery">Pick from gallery</string>
@ -520,7 +519,7 @@ File %1$s contained %2$s.\n\n
<string name="or_choose_a_location">Or choose a location</string>
<string name="map_search_provider">Search provider</string>
<string name="missing_permissions">Missing permissions</string>
<string name="location_permission_required_geofence">Location permissions are needed for location reminders</string>
<string name="background_location_permission_required">Location permissions are needed for location-based reminders. If you have previously denied a location permission request then you must manually grant permission through your device settings.</string>
<string name="location_permission_required_location">Location permissions are needed to find your current location</string>
<string name="open_map">Open map</string>
<string name="choose_new_location">Choose new location</string>
@ -644,4 +643,6 @@ File %1$s contained %2$s.\n\n
<string name="last_backup_never">never</string>
<string name="device_settings">Device settings</string>
<string name="account">Account</string>
<string name="foreground_location">Foreground location</string>
<string name="background_location">Background location</string>
</resources>

@ -1,6 +1,6 @@
object Versions {
const val kotlin = "1.4.10"
const val targetSdk = 29
const val targetSdk = 30
const val minSdk = 23
const val butterknife = "10.2.3"
const val work = "2.4.0"

Loading…
Cancel
Save