Merge pull request #1341 from KryptKode/feat/sdk-30-changes

Feat/Update image/copy in WritePermissionDialog
This commit is contained in:
Tibor Kaputa 2022-03-16 23:49:19 +01:00 committed by GitHub
commit 0ed7becb4d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
52 changed files with 109 additions and 23 deletions

View file

@ -60,7 +60,7 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
companion object {
var funAfterSAFPermission: ((success: Boolean) -> Unit)? = null
var funAfterDelete30File: ((success: Boolean) -> Unit)? = null
var funAfterSdk30Action: ((success: Boolean) -> Unit)? = null
var funAfterUpdate30File: ((success: Boolean) -> Unit)? = null
var funRecoverableSecurity: ((success: Boolean) -> Unit)? = null
}
@ -236,11 +236,11 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
val takeFlags = Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_GRANT_WRITE_URI_PERMISSION
applicationContext.contentResolver.takePersistableUriPermission(treeUri, takeFlags)
val funAfter = funAfterDelete30File
funAfterDelete30File = null
val funAfter = funAfterSdk30Action
funAfterSdk30Action = null
funAfter?.invoke(true)
} else {
funAfterDelete30File?.invoke(false)
funAfterSdk30Action?.invoke(false)
}
} else if (requestCode == OPEN_DOCUMENT_TREE_FOR_SDK_30) {
@ -256,11 +256,11 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
val takeFlags = Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_GRANT_WRITE_URI_PERMISSION
applicationContext.contentResolver.takePersistableUriPermission(treeUri, takeFlags)
val funAfter = funAfterDelete30File
funAfterDelete30File = null
val funAfter = funAfterSdk30Action
funAfterSdk30Action = null
funAfter?.invoke(true)
} else {
funAfterDelete30File?.invoke(false)
funAfterSdk30Action?.invoke(false)
}
} else if (requestCode == OPEN_DOCUMENT_TREE_FOR_ANDROID_DATA_OR_OBB) {
@ -343,7 +343,7 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
val outputStream = contentResolver.openOutputStream(resultData.data!!)
exportSettingsTo(outputStream, configItemsToExport)
} else if (requestCode == DELETE_FILE_SDK_30_HANDLER) {
funAfterDelete30File?.invoke(resultCode == Activity.RESULT_OK)
funAfterSdk30Action?.invoke(resultCode == Activity.RESULT_OK)
} else if (requestCode == RECOVERABLE_SECURITY_HANDLER) {
funRecoverableSecurity?.invoke(resultCode == Activity.RESULT_OK)
funRecoverableSecurity = null
@ -450,7 +450,7 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
callback(true)
false
} else if (isShowingSAFDialogSdk30(path)) {
funAfterDelete30File = callback
funAfterSdk30Action = callback
true
} else {
callback(true)
@ -463,7 +463,7 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
callback(true)
false
} else if (isShowingSAFCreateDocumentDialogSdk30(path)) {
funAfterDelete30File = callback
funAfterSdk30Action = callback
true
} else {
callback(true)
@ -512,7 +512,7 @@ abstract class BaseSimpleActivity : AppCompatActivity() {
@SuppressLint("NewApi")
fun deleteSDK30Uris(uris: List<Uri>, callback: (success: Boolean) -> Unit) {
if (isRPlus()) {
funAfterDelete30File = callback
funAfterSdk30Action = callback
try {
val deleteRequest = MediaStore.createDeleteRequest(contentResolver, uris).intentSender
startIntentSenderForResult(deleteRequest, DELETE_FILE_SDK_30_HANDLER, null, 0, 0, 0)

View file

@ -14,13 +14,14 @@ class WritePermissionDialog(activity: Activity, val mode: Mode, val callback: ()
enum class Mode {
OTG,
SD_CARD,
SDK_30
OPEN_DOCUMENT_TREE_SDK_30,
CREATE_DOCUMENT_SDK_30,
}
var dialog: AlertDialog
init {
val layout = if (mode == Mode.OTG || mode == Mode.SDK_30) R.layout.dialog_write_permission_otg else R.layout.dialog_write_permission
val layout = if (mode == Mode.SD_CARD) R.layout.dialog_write_permission else R.layout.dialog_write_permission_otg
val view = activity.layoutInflater.inflate(layout, null)
val glide = Glide.with(activity)
@ -34,7 +35,7 @@ class WritePermissionDialog(activity: Activity, val mode: Mode, val callback: ()
glide.load(R.drawable.img_write_storage).transition(crossFade).into(view.write_permissions_dialog_image)
glide.load(R.drawable.img_write_storage_sd).transition(crossFade).into(view.write_permissions_dialog_image_sd)
}
Mode.SDK_30 -> {
Mode.OPEN_DOCUMENT_TREE_SDK_30 -> {
view.write_permissions_dialog_otg_text.setText(R.string.confirm_storage_access_android_text)
glide.load(R.drawable.img_write_storage_sdk_30).transition(crossFade).into(view.write_permissions_dialog_otg_image)
@ -42,6 +43,10 @@ class WritePermissionDialog(activity: Activity, val mode: Mode, val callback: ()
dialogConfirmed()
}
}
Mode.CREATE_DOCUMENT_SDK_30 -> {
view.write_permissions_dialog_otg_text.setText(R.string.confirm_create_doc_for_new_folder_text)
glide.load(R.drawable.img_write_storage_create_doc_sdk_30).transition(crossFade).into(view.write_permissions_dialog_otg_image)
}
}
dialog = AlertDialog.Builder(activity)

View file

@ -127,7 +127,7 @@ fun BaseSimpleActivity.isShowingSAFDialog(path: String): Boolean {
if (!isDestroyed && !isFinishing) {
WritePermissionDialog(this, Mode.SD_CARD) {
Intent(Intent.ACTION_OPEN_DOCUMENT_TREE).apply {
putExtra("android.content.extra.SHOW_ADVANCED", true)
putExtra(EXTRA_SHOW_ADVANCED, true)
try {
startActivityForResult(this, OPEN_DOCUMENT_TREE_SD)
checkedDocumentPath = path
@ -153,13 +153,13 @@ fun BaseSimpleActivity.isShowingSAFDialog(path: String): Boolean {
}
@SuppressLint("InlinedApi")
fun BaseSimpleActivity.isShowingSAFDialogForDeleteSdk30(path: String): Boolean {
fun BaseSimpleActivity.isShowingSAFDialogSdk30(path: String): Boolean {
return if (isAccessibleWithSAFSdk30(path) && !hasProperStoredFirstParentUri(path)) {
runOnUiThread {
if (!isDestroyed && !isFinishing) {
WritePermissionDialog(this, Mode.SDK_30) {
WritePermissionDialog(this, Mode.OPEN_DOCUMENT_TREE_SDK_30) {
Intent(Intent.ACTION_OPEN_DOCUMENT_TREE).apply {
putExtra("android.content.extra.SHOW_ADVANCED", true)
putExtra(EXTRA_SHOW_ADVANCED, true)
putExtra(DocumentsContract.EXTRA_INITIAL_URI, createFirstParentTreeUriUsingRootTree(path))
try {
startActivityForResult(this, OPEN_DOCUMENT_TREE_FOR_SDK_30)
@ -185,6 +185,42 @@ fun BaseSimpleActivity.isShowingSAFDialogForDeleteSdk30(path: String): Boolean {
}
}
@SuppressLint("InlinedApi")
fun BaseSimpleActivity.isShowingSAFCreateDocumentDialogSdk30(path: String): Boolean {
return if (!hasProperStoredDocumentUriSdk30(path)) {
runOnUiThread {
if (!isDestroyed && !isFinishing) {
WritePermissionDialog(this, Mode.CREATE_DOCUMENT_SDK_30) {
Intent(Intent.ACTION_CREATE_DOCUMENT).apply {
type = DocumentsContract.Document.MIME_TYPE_DIR
putExtra(EXTRA_SHOW_ADVANCED, true)
addCategory(Intent.CATEGORY_OPENABLE)
putExtra(DocumentsContract.EXTRA_INITIAL_URI, buildDocumentUriSdk30(path.getParentPath()))
putExtra(Intent.EXTRA_TITLE, path.getFilenameFromPath())
try {
startActivityForResult(this, CREATE_DOCUMENT_SDK_30)
checkedDocumentPath = path
return@apply
} catch (e: Exception) {
type = "*/*"
}
try {
startActivityForResult(this, CREATE_DOCUMENT_SDK_30)
checkedDocumentPath = path
} catch (e: Exception) {
toast(R.string.unknown_error_occurred)
}
}
}
}
}
true
} else {
false
}
}
fun BaseSimpleActivity.isShowingAndroidSAFDialog(path: String): Boolean {
return if (isRestrictedSAFOnlyRoot(path) && (getAndroidTreeUri(path).isEmpty() || !hasProperStoredAndroidTreeUri(path))) {
runOnUiThread {
@ -192,7 +228,7 @@ fun BaseSimpleActivity.isShowingAndroidSAFDialog(path: String): Boolean {
ConfirmationAdvancedDialog(this, "", R.string.confirm_storage_access_android_text, R.string.ok, R.string.cancel) { success ->
if (success) {
Intent(Intent.ACTION_OPEN_DOCUMENT_TREE).apply {
putExtra("android.content.extra.SHOW_ADVANCED", true)
putExtra(EXTRA_SHOW_ADVANCED, true)
putExtra(DocumentsContract.EXTRA_INITIAL_URI, createAndroidDataOrObbUri(path))
try {
startActivityForResult(this, OPEN_DOCUMENT_TREE_FOR_ANDROID_DATA_OR_OBB)

View file

@ -13,6 +13,7 @@ import java.util.HashMap
import java.util.LinkedHashMap
const val EXTERNAL_STORAGE_PROVIDER_AUTHORITY = "com.android.externalstorage.documents"
const val EXTRA_SHOW_ADVANCED = "android.content.extra.SHOW_ADVANCED"
const val APP_NAME = "app_name"
const val APP_LICENSES = "app_licenses"

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">إذا كنت لا ترى بطاقة الذاكرة (SD) ، فجرب هذا</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">تأكيد التحديد</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Əgər SD kart görünmürsə, bunu yoxlayın</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Seçimi təsdiqlə</string>
<string name="loading">Loading…</string>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirm selection</string>
<string name="loading">Loading…</string>

View file

@ -191,6 +191,7 @@
<string name="confirm_storage_access_text_sd">Si no veieu la targeta SD, proveu això</string>
<string name="confirm_storage_access_android_text">Permeteu que l\'aplicació accedeixi a l\'emmagatzematge seleccionat prement «Utilitza aquesta carpeta» a la part inferior de la pantalla següent.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmeu la selecció</string>
<string name="loading">S\'està carregant…</string>
<plurals name="items">

View file

@ -195,6 +195,7 @@
<string name="confirm_storage_access_text_sd">Pokud SD kartu nevidíte, vyzkoušejte následující</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Potvrdit výběr</string>
<string name="loading">Loading…</string>
<string name="wrong_folder_selected">Wrong folder selected, please select path \'%s\'</string>

View file

@ -195,6 +195,7 @@
<string name="confirm_storage_access_text_sd">Os nad wyt yn gweld y cerdyn SD, rho gynnig ar hyn</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Cadarnhau dewis</string>
<string name="loading">Loading…</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Hvis ikke du kan se SD-kortet kan du prøve dette</string>
<string name="confirm_storage_access_android_text">Tillad appen at få adgang til det valgte lager på det næste skærmbillede ved at trykke på \'Brug denne mappe\' nederst.</string>
<string name="confirm_storage_access_android_text_specific">Tillad adgang til \"%s\" på det næste skærmbillede ved at trykke på \"Brug denne mappe\" nederst på skærmen.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Bekræft valg</string>
<string name="loading">Indlæser…</string>
<string name="wrong_folder_selected">Forkert mappe valgt. Vælg stien \'%s\'</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Wenn die SD-Karte nicht angezeigt wird, versuche das</string>
<string name="confirm_storage_access_android_text">Erlauben Sie der App auf dem nächsten Bildschirm den Zugriff auf den ausgewählten Speicher, indem Sie unten auf „Diesen Ordner verwenden“ klicken.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Auswahl bestätigen</string>
<string name="loading">Wird geladen </string>
<plurals name="items">

View file

@ -193,6 +193,7 @@
<string name="confirm_storage_access_text_sd">Εάν δεν βλέπετε την κάρτα SD, δοκιμάστε αυτό</string>
<string name="confirm_storage_access_android_text">Επιτρέψτε στην εφαρμογή την πρόσβαση στον επιλεγμένο αποθηκευτικό χώρο στην επόμενη οθόνη πατώντας \'Χρήση αυτού του φακέλου\' στο κάτω μέρος.</string>
<string name="confirm_storage_access_android_text_specific">Επιτρέψτε την πρόσβαση σε \'%s\' στην επόμενη οθόνη πατώντας \'Χρήση αυτού του φακέλου\' στο κάτω μέρος.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Επιβεβαίωση επιλογής</string>
<string name="loading">Φόρτωση…</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirm selection</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -195,6 +195,7 @@
<string name="confirm_storage_access_text_sd">Si no ve la tarjeta SD, prueba esto</string>
<string name="confirm_storage_access_android_text">Por favor permita a la aplicacion acceder al almacenamiento seleccionado en la siguiente pantalla presionando \'Usar esta carpeta\' en la parte inferior.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmar la selección</string>
<string name="loading">Loading…</string>

View file

@ -191,6 +191,7 @@
<string name="confirm_storage_access_text_sd">Kui sa SD-kaarti ei näe, siis proovi sellist võimalust</string>
<string name="confirm_storage_access_android_text">Valitud salvestusruumile ligipääsu saamiseks vali järgmise vaate allosas „Kasuta seda kausta“.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Kinnita valik</string>
<string name="loading">Laadin…</string>
<plurals name="items">

View file

@ -194,6 +194,7 @@
<string name="confirm_storage_access_text_sd">SD txartela ez badakusazu, saiatu honekin</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Berretsi hautaketa</string>
<string name="loading">Loading…</string>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirm selection</string>
<string name="loading">Loading…</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Jos et näe muistikorttia, kokeile tätä</string>
<string name="confirm_storage_access_android_text">Anna sovellukselle käyttöoikeus tallennustilan käyttöön painamalla seuraavassa näkymässä \"Käytä tätä hakemistoa\"-painiketta.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Vahvista valinta</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Si vous ne voyez pas la carte SD, essayez ceci</string>
<string name="confirm_storage_access_android_text">Veuillez autoriser l\'application à accéder au stockage sélectionné sur l\'écran suivant en appuyant sur "Utiliser ce dossier" en bas.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmer la sélection</string>
<string name="loading">Chargement…</string>
<plurals name="items">

View file

@ -194,6 +194,7 @@
<string name="confirm_storage_access_text_sd">Se non ves a tarxeta SD, proba isto</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmar a selección</string>
<string name="loading">Loading…</string>

View file

@ -193,6 +193,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirm selection</string>
<string name="loading">Loading…</string>

View file

@ -193,6 +193,7 @@
<string name="confirm_storage_access_text_sd">Ukoliko ne vidite SD karticu, probajte ovo</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Potvrdi odabir</string>
<string name="loading">Loading…</string>

View file

@ -191,6 +191,7 @@
<string name="confirm_storage_access_text_sd">Ha nem látja az SD-kártyát, próbálja meg ezt</string>
<string name="confirm_storage_access_android_text">Engedélyezze a következő képernyőn, hogy az alkalmazás hozzáférjen a kiválasztott tárolóhoz, úgy hogy a „Mappa használata” gombra kattint lent.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Kiválasztás megerősítése</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Jika Anda tidak melihat kartu SD, cobalah ini</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Konfirmasi pilihan</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Se non si ha una scheda SD, provare questo</string>
<string name="confirm_storage_access_android_text">Consenti all\'app di accedere allo storage selezionato nella schermata successiva premendo «Usa questa cartella» in basso.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Conferma selezione</string>
<string name="loading">Caricamento…</string>
<plurals name="items">

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">אם לא מופיע כרטיס ה SD, ניתן לנסות</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">אישור בחירה</string>
<string name="loading">Loading…</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">SDカードの内容が表示されない場合は、こちらをお試しください</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">選択を確認</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -195,6 +195,7 @@
<string name="confirm_storage_access_text_sd">SD 카드가 보이지 않으면 시도해보세요.</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">선택 확인</string>
<string name="loading">Loading…</string>

View file

@ -191,6 +191,7 @@
<string name="confirm_storage_access_text_sd">Jei nematote SD kortelės, pabandykite štai ką</string>
<string name="confirm_storage_access_android_text">Leiskite programėlei gauti prieigą prie pasirinktos saugyklos, kitame ekrane, apačioje paspausdami „Naudoti šį aplanką“.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Patvirtinti žymėjimą</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Hvis du ikke ser SD-kortet, prøv dette</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Bekreft valg</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -185,6 +185,7 @@
<string name="confirm_storage_access_text_sd">Probeer het volgende als de SD-kaart niet wordt getoond</string>
<string name="confirm_storage_access_android_text">Verleen de app toegang tot de gekozen map door in het volgende scherm op \'Deze map gebruiken\' te klikken.</string>
<string name="confirm_storage_access_android_text_specific">Geef toegang tot \'%s\' door onderaan in het volgende scherm op \'Deze map gebruiken\' te drukken.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Keuze bevestigen</string>
<string name="loading">Laden…</string>
<plurals name="items">
@ -929,4 +930,4 @@
<string name="pro_app_refund">Bij het deïnstalleren van de app binnen 2 uur na aanschaf wordt het aankoopbedrag automatisch teruggestort. Wilt u op een later tijdstip een terugbetaling, neem dan contact op via hello@simplemobiletools.com en het wordt geregeld. Zodoende blijft het gemakkelijk om de app uit te proberen :)</string>
<!-- Description of our developer profile on Google Play, it can have max 140 characters -->
<string name="developer_description">Een verzameling eenvoudige open-source Android-apps met widgets, zonder advertenties en onnodige machtigingen.</string>
</resources>
</resources>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Jeśli nie widzisz karty pamięci, spróbuj tego:</string>
<string name="confirm_storage_access_android_text">Zezwól na dostęp do wybranej pamięci na następnym ekranie, naciskając „Użyj tego folderu” na dole.</string>
<string name="confirm_storage_access_android_text_specific">Zezwól na dostęp do „%s” na następnym ekranie, naciskając „Użyj tego folderu” na dole.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Potwierdź wybór</string>
<string name="loading">Ładowanie…</string>
<plurals name="items">
@ -957,4 +958,4 @@
<string name="pro_app_refund">Pamiętaj, że jeśli odinstalujesz którąkolwiek z płatnych aplikacji w ciągu 2 godzin, automatycznie otrzymasz zwrot pieniędzy. Jeśli chcesz zwrotu pieniędzy w dowolnym momencie później, wystarczy skontaktować się z nami na hello@simplemobiletools.com, a otrzymasz go. To sprawia, że aplikacje są łatwe do wypróbowania :)</string>
<!-- Description of our developer profile on Google Play, it can have max 140 characters -->
<string name="developer_description">Zestaw prostych, otwartoźródłowych aplikacji na Androida z konfigurowalnymi widżetami, bez reklam i zbędnych uprawnień.</string>
</resources>
</resources>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Se você não encontrar o cartão SD, tente isto</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmar seleção</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Se não conseguir ver o cartão SD, tente isto</string>
<string name="confirm_storage_access_android_text">Por favor conceda o acesso ao armazenamento seleccionado no ecrã seguinte ao premir \'Usar esta pasta\' abaixo.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmar seleção</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Dacă nu vedeţi cardul sd încercaţi următoarele</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirmă selecţia</string>
<string name="loading">Loading…</string>

View file

@ -190,6 +190,7 @@
<string name="confirm_storage_access_text_sd">Если SD-карта не видна, попробуйте это</string>
<string name="confirm_storage_access_android_text">Разрешите приложению доступ к выбранному хранилищу на следующем экране, нажав \"Использовать эту папку\" в нижней части.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Подтвердить выделение</string>
<string name="loading">Загрузка…</string>
<plurals name="items">

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Ak nevidíte SD kartu, skúste toto</string>
<string name="confirm_storage_access_android_text">Prosím povoľte prístup ku zvolenému úložisku na nasledujúcej obrazovke stlačením spodného tlačidla \"Použiť tento priečinok\".</string>
<string name="confirm_storage_access_android_text_specific">Prosím povoľte prístup ku \'%s\' na nasledujúcej obrazovke stlačením spodného tlačidla \"Použiť tento priečinok\".</string>
<string name="confirm_create_doc_for_new_folder_text">Pre vytvorenie nového priečinka prosím stlačte \'Uložiť\' na spodku nasledujúcej obrazovky.</string>
<string name="confirm_selection">Potvrdiť výber</string>
<string name="loading">Načítavanie…</string>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Če ne vidite kartice SD, poskusite to</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Potrdi izbor</string>
<string name="loading">Loading…</string>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Ако не видите СД картицу, пробајте ово</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Потврдите одабир</string>
<string name="loading">Loading…</string>

View file

@ -195,6 +195,7 @@
<string name="confirm_storage_access_text_sd">Om du inte ser SD-kortet, prova detta</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Bekräfta val</string>
<string name="loading">Loading…</string>

View file

@ -185,6 +185,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">தேர்வை உறுதிசெய்</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">SD kartı görmüyorsanız, bunu deneyin</string>
<string name="confirm_storage_access_android_text">Lütfen alttaki \'Bu klasörü kullan\' seçeneğine basarak uygulamanın seçilen depolama alanına erişmesine izin verin.</string>
<string name="confirm_storage_access_android_text_specific">Lütfen alttaki \'Bu klasörü kullan\' seçeneğine basarak bir sonraki ekranda \'%s\' erişimine izin verin.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Seçimi onayla</string>
<string name="loading">Yükleniyor…</string>
<plurals name="items">
@ -930,4 +931,4 @@
<string name="pro_app_refund">Ücretli herhangi bir uygulamayı 2 saat içinde kaldırırsanız, otomatik olarak iade edileceğini unutmayın. İstediğiniz zaman geri ödeme almak isterseniz, hello@simplemobiletools.com adresinden bizimle iletişime geçmeniz yeterli olacaktır. Bu denemeyi kolaylaştırır :)</string>
<!-- Description of our developer profile on Google Play, it can have max 140 characters -->
<string name="developer_description">Özelleştirilebilir widget\'lara sahip, reklamlar ve gereksiz izinler içermeyen bir grup basit, açık kaynaklı Android uygulaması.</string>
</resources>
</resources>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">Якщо ви не бачите SD-карту, спробуйте це</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Підтвердіть вибір</string>
<string name="loading">Loading…</string>
<plurals name="items">

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">Nếu bạn không thấy thẻ SD, hãy thử điều này</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Xác nhận lựa chọn</string>
<string name="loading">Loading…</string>

View file

@ -184,6 +184,7 @@
<string name="confirm_storage_access_text_sd">如果您未找到 SD 卡目录,请尝试</string>
<string name="confirm_storage_access_android_text">请在下一个屏幕上按下底部的“使用此文件夹”,允许应用程序访问所选的存储空间。</string>
<string name="confirm_storage_access_android_text_specific">请在下个屏幕上允许访问 \'%s\',方法是按下底部的“使用此文件夹”。</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">确认选择</string>
<string name="loading">加载中…</string>
<plurals name="items">
@ -881,4 +882,4 @@
<string name="pro_app_refund">别忘了如果您在2小时内卸载任何付费应用将会自动退款。如果您想在之后退款只需通过 hello@simplemobiletools.com 联系我们即可。这样您就可以放心试用了 :)</string>
<!-- Description of our developer profile on Google Play, it can have max 140 characters -->
<string name="developer_description">一组简易且开源的 Android 应用程序,可自定义小部件,并且没有广告和不必要的权限。</string>
</resources>
</resources>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">"如果看不到SD卡試試這個"</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">確認選擇</string>
<string name="loading">Loading…</string>

View file

@ -196,6 +196,7 @@
<string name="confirm_storage_access_text_sd">If you don\'t see the SD card, try this</string>
<string name="confirm_storage_access_android_text">Please allow the app accessing the selected storage on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_storage_access_android_text_specific">Please allow accessing \'%s\' on the next screen by pressing \'Use this folder\' at the bottom.</string>
<string name="confirm_create_doc_for_new_folder_text">Please press \'Save\' at the bottom of the next screen to create the new folder.</string>
<string name="confirm_selection">Confirm selection</string>
<string name="loading">Loading…</string>