Merge branch 'release/1.6.4'

This commit is contained in:
Julian Raufelder 2021-11-16 12:21:08 +01:00
commit 0126a4a45e
No known key found for this signature in database
GPG Key ID: 17EE71F6634E381D
25 changed files with 207 additions and 30 deletions

View File

@ -39,7 +39,7 @@ allprojects {
ext {
androidApplicationId = 'org.cryptomator'
androidVersionCode = getVersionCode()
androidVersionName = '1.6.3'
androidVersionName = '1.6.4'
}
repositories {
mavenCentral()

View File

@ -37,7 +37,6 @@ import java.nio.charset.StandardCharsets
import java.util.UUID
import java.util.function.Supplier
import java.util.regex.Pattern
import kotlin.streams.toList
import timber.log.Timber
open class CryptoImplVaultFormat7 : CryptoImplDecorator {
@ -156,7 +155,6 @@ open class CryptoImplVaultFormat7 : CryptoImplDecorator {
}
return ciphertextNodes
.parallelStream()
.map { node ->
ciphertextToCleartextNode(cryptoFolder, dirId, node)
}

View File

@ -126,7 +126,6 @@ internal class CryptoImplVaultFormatPre7(
return cloudContentRepository
.list(lvl2Dir)
.filterIsInstance<CloudFile>()
.parallelStream()
.map { node ->
ciphertextToCleartextNode(cryptoFolder, dirId, node)
}

View File

@ -98,7 +98,7 @@ internal class DropboxImpl(cloud: DropboxCloud, context: Context) {
@Throws(AuthenticationException::class, DbxException::class)
fun list(folder: DropboxFolder): List<DropboxNode> {
val result: MutableList<DropboxNode> = ArrayList()
val result = ArrayList<DropboxNode>()
var listFolderResult: ListFolderResult? = null
do {
listFolderResult = if (listFolderResult == null) {
@ -106,7 +106,7 @@ internal class DropboxImpl(cloud: DropboxCloud, context: Context) {
} else {
client().files().listFolderContinue(listFolderResult.cursor)
}
listFolderResult.entries.parallelStream().forEach {
listFolderResult.entries.forEach {
result.add(from(folder, it))
}
} while (listFolderResult?.hasMore == true)

View File

@ -39,7 +39,6 @@ import java.io.File
import java.io.IOException
import java.io.OutputStream
import java.util.Date
import java.util.stream.Collectors
import okio.BufferedSink
import okio.BufferedSource
import okio.source
@ -115,9 +114,7 @@ internal class PCloudImpl(context: Context, cloud: PCloud) {
.listFolder(path)
.execute()
.children()
.parallelStream()
.map { node -> PCloudNodeFactory.from(folder, node) }
.collect(Collectors.toList())
} catch (ex: ApiError) {
handleApiError(ex, folder.name)
throw FatalBackendException(ex)

View File

@ -1,4 +1 @@
- Fotos können sofort hochgeladen werden, wenn der automatische Fotoupload aktiviert und der Tresor entsperrt ist
- Wenn der Tresor-Order der Stammordner der Cloud ist, kann dieser nun nicht mehr hinzugefügt werden
- Überarbeitung des Zugriffs auf den lokalen Speicher
- Sicherheit von WebDAV-Verbindungen verbessert
- App-Absturz behoben, wenn der für den automatischen Upload angegebene Tresor nicht mehr existiert und der Upload beginnt

View File

@ -1,4 +1 @@
- Upload photos instantly when auto photo upload is enabled and vault is unlocked
- Fixed vault name is empty when it is the root folder of the cloud
- Refactored access to local storage
- Enhanced security of WebDAV connections
- Fixed app crash when vault specified for auto upload doesn't exist anymore and upload starts

View File

@ -1,6 +1,3 @@
<ul>
<li>Upload photos instantly when auto photo upload is enabled and vault is unlocked</li>
<li>Fixed vault name is empty when it is the root folder of the cloud</li>
<li>Refactored access to local storage</li>
<li>Enhanced security of WebDAV connections</li>
<li>Fixed app crash when vault specified for auto upload doesn't exist anymore and upload starts</li>
</ul>

View File

@ -12,6 +12,7 @@ import androidx.multidex.MultiDexApplication
import org.cryptomator.data.cloud.crypto.Cryptors
import org.cryptomator.data.cloud.crypto.CryptorsModule
import org.cryptomator.data.repository.RepositoryModule
import org.cryptomator.domain.Vault
import org.cryptomator.presentation.di.HasComponent
import org.cryptomator.presentation.di.component.ApplicationComponent
import org.cryptomator.presentation.di.component.DaggerApplicationComponent
@ -123,10 +124,12 @@ class CryptomatorApp : MultiDexApplication(), HasComponent<ApplicationComponent>
fun startAutoUpload() {
val sharedPreferencesHandler = SharedPreferencesHandler(applicationContext())
if (checkToStartAutoImageUpload(sharedPreferencesHandler)) {
val vault = applicationComponent.vaultRepository().load(sharedPreferencesHandler.photoUploadVault())
if (vault.isUnlocked) {
val vault: Vault? = applicationComponent.vaultRepository().load(sharedPreferencesHandler.photoUploadVault())
if (vault?.isUnlocked == true) {
val cloud = applicationComponent.cloudRepository().decryptedViewOf(vault)
applicationContext().startService(AutoUploadService.startAutoUploadIntent(applicationContext(), cloud))
} else if (vault == null) {
applicationContext().startService(AutoUploadService.vaultNotFoundUploadIntent(applicationContext()))
}
}
}

View File

@ -96,6 +96,10 @@ class AutoUploadNotification(private val context: Context, private val amountOfP
showErrorWithMessage(context.getString(R.string.notification_auto_upload_failed_general_error))
}
fun showVaultNotFoundNotification() {
showErrorWithMessage(context.getString(R.string.notification_auto_upload_failed_due_to_vault_not_found))
}
private fun showErrorWithMessage(message: String) {
builder.setContentIntent(startTheActivity())
builder //

View File

@ -47,8 +47,9 @@ import static org.cryptomator.domain.usecases.cloud.UploadFile.anUploadFile;
public class AutoUploadService extends Service {
private static final String ACTION_CANCEL_AUTO_UPLOAD = "CANCEL_AUTO_UPLOAD";
private static final String ACTION_START_AUTO_UPLOAD = "START_AUTO_UPLOAD";
private static final String ACTION_CANCEL_AUTO_UPLOAD = "CANCEL_AUTO_UPLOAD";
private static final String ACTION_VAULT_NOT_FOUND = "VAULT_NOT_FOUND";
private static Cloud cloud;
private AutoUploadNotification notification;
@ -69,17 +70,23 @@ public class AutoUploadService extends Service {
}
};
public static Intent startAutoUploadIntent(Context context, Cloud myCloud) {
cloud = myCloud;
Intent startAutoUpload = new Intent(context, AutoUploadService.class);
startAutoUpload.setAction(ACTION_START_AUTO_UPLOAD);
return startAutoUpload;
}
public static Intent cancelAutoUploadIntent(Context context) {
Intent cancelAutoUploadIntent = new Intent(context, AutoUploadService.class);
cancelAutoUploadIntent.setAction(ACTION_CANCEL_AUTO_UPLOAD);
return cancelAutoUploadIntent;
}
public static Intent startAutoUploadIntent(Context context, Cloud myCloud) {
cloud = myCloud;
Intent startAutoUpload = new Intent(context, AutoUploadService.class);
startAutoUpload.setAction(ACTION_START_AUTO_UPLOAD);
return startAutoUpload;
public static Intent vaultNotFoundUploadIntent(Context context) {
Intent cancelAutoUploadIntent = new Intent(context, AutoUploadService.class);
cancelAutoUploadIntent.setAction(ACTION_VAULT_NOT_FOUND);
return cancelAutoUploadIntent;
}
private void startBackgroundImageUpload(Cloud cloud) {
@ -228,6 +235,9 @@ public class AutoUploadService extends Service {
cancelled = true;
hideNotification();
} else if(isVaultNotFound(intent)) {
Timber.tag("AutoUploadService").i("Received show vault not found notification");
notification.showVaultNotFoundNotification();
}
return START_STICKY;
}
@ -242,6 +252,11 @@ public class AutoUploadService extends Service {
&& ACTION_CANCEL_AUTO_UPLOAD.equals(intent.getAction());
}
private boolean isVaultNotFound(Intent intent) {
return intent != null //
&& ACTION_VAULT_NOT_FOUND.equals(intent.getAction());
}
@Override
public void onDestroy() {
Timber.tag("AutoUploadService").i("onDestroyed");

View File

@ -368,6 +368,7 @@
<string name="notification_auto_upload_failed_general_error">Generaller Fehler während dem Hochladen.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Ausgewählter Ordner für das Photo-Hochladen existiert nicht mehr. In der Einstellungen neuen auswählen</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Tresor gesperrt während dem hochladen, zum weiteren Hochladen entsperren</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Der Tresor für den automatischen Upload existiert nicht mehr.</string>
<string name="notification_open_writable_file_title">Datei mit Schreibrechten geöffnet</string>
<string name="notification_open_writable_file_message">Tresor bleibt entsperrt bis die Datei nicht mehr editiert wird</string>
<string name="notification_update_check_finished_latest">Neueste Version installiert</string>

View File

@ -368,6 +368,7 @@
<string name="notification_auto_upload_failed_general_error">Παρουσιάστηκε γενικό σφάλμα κατά τη μεταφόρτωση.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Ο επιλεγμένος φάκελος για μεταφόρτωση δεν είναι πια διαθέσιμος. Μεταβείτε στις ρυθμίσεις και επιλέξτε ένα νέο</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Κρύπτη κλειδωμένη κατά τη μεταφόρτωση, παρακαλώ ανοίξτε ξανά την κρύπτη για να συνεχίσετε</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Η κρύπτη που ορίστηκε για αυτόματο ανέβασμα δεν υπάρχει πια.</string>
<string name="notification_open_writable_file_title">Άνοιγμα εγγράψιμου αρχείου</string>
<string name="notification_open_writable_file_message">Η κρύπτη παραμένει ξεκλείδωτη μέχρι να τελειώσει η επεξεργασία</string>
<string name="notification_update_check_finished_latest">Τελευταία έκδοση εγκατεστημένη</string>

View File

@ -368,6 +368,7 @@
<string name="notification_auto_upload_failed_general_error">Error general durante la carga.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">La carpeta seleccionada para cargar ya no está disponible. Vaya a los ajustes y elija una nueva</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Bóveda bloqueada durante la carga, vuelva a abrir la bóveda para continuar</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">La bóveda especificada para la carga automática ya no existe.</string>
<string name="notification_open_writable_file_title">Abrir archivo escribible</string>
<string name="notification_open_writable_file_message">La bóveda permanece desbloqueada hasta finalizar la edición</string>
<string name="notification_update_check_finished_latest">Última versión instalada</string>

View File

@ -16,15 +16,35 @@
<string name="error_cloud_already_exists">A felhő már létezik.</string>
<string name="error_activity_not_found">Kérjük, töltsön le egy alkalmazást, amely képes megnyitni ezt a fájlt.</string>
<string name="error_server_not_found">Szerver nem található.</string>
<string name="error_device_policy_manager_not_found">Kérjük, nyissa meg a készülék beállításait, majd állítsa be a képernyőzárat szabadkezűleg</string>
<string name="error_export_illegal_file_name">Az exportálás sikertelen. Próbálja meg eltávolítani a speciális karaktereket a fájlnevekből és exportálja újra.</string>
<string name="error_name_contains_invalid_characters">Nem tartalmazhat speciális karaktereket.</string>
<string name="error_names_contains_invalid_characters">A fájl neve nem tartalmazhat speciális karaktereket.</string>
<string name="error_vault_name_contains_invalid_characters">A széf neve nem tartalmazhat speciális karaktereket.</string>
<string name="error_general_update">A frissítés ellenőrzése sikertelen. Általános hiba történt.</string>
<string name="error_hash_mismatch_update">A frissítés keresése sikertelen. A generált hash nem egyezik a feltöltött fájllal</string>
<string name="error_update_no_internet">A frissítés keresése sikertelen. Nincs internetkapcsolat.</string>
<string name="error_failed_to_decrypt_webdav_password">A WebDAV-jelszó visszafejtése sikertelen. Kérjük, adja meg újra a beállításokban</string>
<string name="error_play_services_not_available">A Google Play szolgáltatások nincsenek telepítve</string>
<string name="error_biometric_auth_aborted">Sikertelen biometrikus azonosítás</string>
<string name="error_vault_version_mismatch">A %1$s -ban megadott verzió eltér a %2$s -tól</string>
<string name="error_vault_key_invalid">A(z) %1$s nem egyezik a következővel: %2$s</string>
<string name="error_vault_config_loading">Általános hiba a tároló konfigjának betöltése közben</string>
<string name="error_file_not_found_after_opening_using_3party">A Cryptomatorra való visszaváltás után a helyi fájl már nem elérthető. Az esetleges változások nem frissíthetik a felhőben lévő fájlt.</string>
<string name="error_no_such_bucket">Nem található ilyen adat</string>
<string name="error_masterkey_location_not_supported">Az egyéni Masterkey hely választása még nem támogatott</string>
<!-- # clouds -->
<!-- ## cloud names -->
<string name="cloud_names_local_storage">Helyi tároló</string>
<!-- # permission -->
<!-- ## permission messages -->
<string name="permission_message_export_file">A Cryptomatornak tárhely-hozzáférésre van szüksége a fájlok exportálásához</string>
<string name="permission_message_upload_file">A Cryptomatornak tárhely-hozzáférésre van szüksége a fájlok feltöltéséhez</string>
<string name="permission_message_share_file">A Cryptomatornak tárhely-hozzáférésre van szüksége a fájlok megosztásához</string>
<string name="permission_revoked_re_request_permission">A Cryptomator elvesztette a hozzáférési jogosultságát ehhez a forráshoz. Kérjük, válassza ki újra ezt a mappát az engedély visszaállításához.</string>
<string name="snack_bar_action_title_settings">Beállítások</string>
<string name="snack_bar_action_title_search">Keresés</string>
<string name="snack_bar_action_title_search_previous">Előző</string>
<string name="snack_bar_action_title_search_next">Következő</string>
<string name="snack_bar_action_title_sort">Rendezés</string>
<string name="snack_bar_action_title_sort_az">A - Z</string>
@ -40,9 +60,44 @@
<string name="screen_vault_list_action_add_existing_vault">Meglévő széfhez adás</string>
<string name="screen_vault_list_vault_action_delete">Eltávolítás</string>
<string name="screen_vault_list_vault_creation_hint">Kattintson ide egy új széf létrehozásához</string>
<string name="screen_vault_list_change_password_successful">Jelszó sikeresen megváltoztatva</string>
<!-- # screen: file browser -->
<string name="screen_file_browser_default_title">Széf</string>
<string name="screen_file_browser_add_existing_vault_extra_text">Válassza ki a Masterkey fájlt</string>
<string name="screen_file_browser_create_new_vault_button_text">Helyezze ide</string>
<string name="screen_file_browser_create_new_vault_extra_text">Trezor neve: %1$s</string>
<plurals name="screen_file_browser_subtitle_move">
<item quantity="one">%1$s áthelyezése ide</item>
<item quantity="other">%2$d elem áthelyezése ide</item>
</plurals>
<string name="screen_file_browser_move_button_text">Áthelyezés</string>
<string name="screen_file_browser_msg_empty_folder">Mappa kiürítése</string>
<string name="screen_file_browser_file_info_label_date">módosítva ennyi ideje: %1$s</string>
<string name="screen_file_browser_share_intent_chooser_title">Megosztás a következővel</string>
<string name="screen_file_browser_share_destination_title">Cél kiválasztása</string>
<string name="screen_file_browser_share_button_text">Választás</string>
<string name="screen_file_browser_nothing_to_share">Nincs mit megosztani</string>
<string name="screen_file_browser_actions_title">Hozzáadás ide: %1$s</string>
<string name="screen_file_browser_action_create_folder">Mappa létrehozása</string>
<string name="screen_file_browser_action_create_new_text_file">Szövegfájlt létrehozása</string>
<string name="screen_file_browser_action_upload_files">Fájlok feltöltése</string>
<string name="screen_file_browser_upload_files_chooser_title">Fájlok</string>
<string name="screen_file_browser_msg_file_exported">Fájl exportálva</string>
<string name="screen_file_browser_msg_files_exported">Fájlok exportálva</string>
<string name="screen_file_browser_nothing_to_export">Nincs mit exportálni</string>
<string name="screen_file_browser_msg_creating_download_dir_failed">Letöltések mappa létrehozása sikertelen</string>
<string name="screen_file_browser_node_action_share">Megosztás</string>
<string name="screen_file_browser_node_action_rename">Átnevezés</string>
<string name="screen_file_browser_node_action_edit_text">Szerkeszt</string>
<string name="screen_file_browser_node_action_export">Export</string>
<string name="screen_file_browser_node_action_delete">Törlés</string>
<string name="screen_file_browser_node_action_open_with_text">Megnyitás a következővel &#8230;</string>
<string name="screen_file_browser_selection_mode_title_zero_elements">Elemek kiválasztása</string>
<string name="screen_file_browser_selection_mode_title_one_or_more_elements">%1$d kiválasztva</string>
<string name="screen_file_browser_select_items">Kijelölés</string>
<string name="screen_file_browser_select_all_items">Összes kijelölése</string>
<string name="screen_file_browser_refresh_items">Frissítés</string>
<string name="screen_file_browser_no_connection_message">Nincs kapcsolat</string>
<string name="screen_file_browser_no_connection_button_text">Újra</string>
<!-- ## screen: text editor -->
<string name="screen_text_editor_save_success">Sikeresen mentve</string>
@ -106,13 +161,64 @@
<string name="screen_settings_confirm_face_unlock">Arcfeloldás megerősítése (ha elérhető)</string>
<string name="screen_settings_block_app_when_obscured">Alkalmazás blokkolása, ha nem látható</string>
<string name="screen_settings_block_app_when_obscured_summary">A bevitel elfogásának blokkolása és a hamis felhasználói felület megjelenítése</string>
<string name="screen_settings_secure_screen">Képernyőképek letiltása</string>
<string name="screen_settings_secure_screen_summary">Képernyőképek letiltása a előzmények listáján és az alkalmazáson belül</string>
<string name="screen_settings_section_search">Keresés</string>
<string name="screen_settings_live_search">Élő keresés</string>
<string name="screen_settings_live_search_summary">Frissítse a keresési eredményeket a keresőszavak beírása közben közben</string>
<string name="screen_settings_glob_search">Keresés glob-mintával</string>
<string name="screen_settings_glob_search_summary">Használjon glob-minta keresést, pl. alice.*.jpg</string>
<string name="screen_settings_section_auto_lock">Automatikus zárolás</string>
<string name="screen_settings_auto_lock_timeout">Lezárás ennyi idő után</string>
<string name="screen_settings_auto_lock_on_screen_lock">Amikor a képernyőt inaktív</string>
<string name="screen_settings_section_auto_photo_upload">Automatikus képfeltöltés</string>
<string name="screen_settings_section_auto_photo_upload_vault">Trezor kiválasztása a feltöltéshez</string>
<string name="screen_settings_section_auto_photo_upload_toggle">Aktiválás</string>
<string name="screen_settings_section_auto_photo_upload_toggle_summary">Képek várakoztatása a feltöltéshez, majd a meghatározott trezort feloldását követően a feltöltés megkezdése</string>
<string name="screen_settings_section_auto_photo_upload_toggle_instant_upload">Instant feltöltés</string>
<string name="screen_settings_section_auto_photo_upload_toggle_instant_upload_summary">Automatikus feltöltés, ha a trezor fel van oldva</string>
<string name="screen_settings_section_auto_photo_upload_only_wifi_toggle">Feltöltés WIFI hálózaton</string>
<string name="screen_settings_section_auto_photo_upload_including_videos">Videó feltöltése</string>
<string name="screen_settings_auto_photo_upload_title">Automatikus feltöltések helye: &#8230;</string>
<string name="screen_settings_website_label">Cryptomator weboldala</string>
<string name="screen_settings_twitter_label">Kövess minket a Twitteren</string>
<string name="screen_settings_facebook_label">Lájkolj minket a Facebookon</string>
<string name="screen_settings_section_legal">Jogi nyilatkozat</string>
<string name="screen_settings_licenses_label">Licenszek</string>
<string name="screen_settings_license_terms_label">Licencfeltételek</string>
<string name="screen_settings_section_support">Támogatás</string>
<string name="screen_settings_contact_label">Segítségkérés</string>
<string name="screen_settings_debug_mode_label">Hibakeresési mód</string>
<string name="screen_settings_error_report_label">Naplófájlok küldése</string>
<string name="screen_settings_error_report_failed">A küldés sikertelen</string>
<string name="screen_settings_security_label">Biztonsági tippek</string>
<string name="screen_settings_section_version">Verzió</string>
<string name="screen_settings_advanced_settings">Speciális beállítások</string>
<string name="screen_settings_background_unlock_preparation_label">A feloldás felgyorsítása</string>
<string name="screen_settings_background_unlock_preparation_label_summary">Trezor konfigurációjának letöltése a háttérben a jelszó/biometrikus hitelesítés megadása közben</string>
<string name="screen_settings_keep_unlocked_while_editing_files">Feloldvatartás</string>
<string name="screen_settings_keep_unlocked_while_editing_files_summary">Fájlok szerkesztése közben tartsa feloldva a trezorokat</string>
<!-- ## screen: cloud settings -->
<string name="screen_cloud_settings_webdav_connections">WebDAV fiókok</string>
<string name="screen_cloud_settings_pcloud_connections">pCloud fiókok</string>
<string name="screen_cloud_settings_s3_connections">S3 fiókok</string>
<string name="screen_cloud_settings_local_storage_locations">Helyi tárolóhelyek</string>
<string name="screen_cloud_settings_log_in_to">Bejelentkezés ide</string>
<string name="screen_cloud_settings_sign_out_from_cloud">Kijelentkezés innen</string>
<!-- ## screen: licenses -->
<!-- ## screen: authenticate cloud -->
<string name="screen_authenticate_auth_authentication_failed">A %1$s hitelesítése sikertelen.</string>
<string name="screen_update_pcloud_connections_title">pCloud hitelesítő adatainak frissítése</string>
<!-- ## screen: insecure android version info -->
<!-- # dialogs -->
<string name="dialog_button_cancel">Mégse</string>
<string name="dialog_enter_password_positive_button">Feloldás</string>
<string name="dialog_change_password_old_password_label">Régi jelszó</string>
<string name="dialog_change_password_new_password_label">Új jelszó</string>
<string name="dialog_change_password">Jelszó megváltoztatása</string>
<string name="dialog_change_password_msg_old_password_empty">A régi jelszó nem lehet üres.</string>
<string name="dialog_change_password_msg_new_password_empty">Az új jelszó nem lehet üres.</string>
<string name="dialog_change_password_msg_password_mismatch">Az új jelszó nem egyezik az ismételten begépelt jelszóval.</string>
<!-- Vault not found -->
<string name="dialog_vault_not_found_positive_button_text">Eltávolítás</string>
<string name="dialog_lock_vault">Zárolás</string>

View File

@ -1,12 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- # app -->
<string name="share_with_label">Enkripsi</string>
<!-- # error messages -->
<string name="error_server_not_found">Server tidak ditemukan.</string>
<!-- # clouds -->
<!-- ## cloud names -->
<!-- # permission -->
<!-- ## permission messages -->
<string name="permission_message_upload_file">Cryptomator membutuhkan akses penyimpanan untuk mengunggah berkas</string>
<string name="permission_revoked_re_request_permission">Cryptomator telah kehilangan izin untuk mengakses lokasi ini. Harap pilih folder ini lagi untuk memulihkan izin.</string>
<string name="snack_bar_action_title_search_next">Lanjut</string>
<string name="snack_bar_action_title_sort_biggest">Terbesar dahulu</string>
<!-- # screens -->
<!-- # screen: vault list -->
<!-- # screen: file browser -->

View File

@ -283,6 +283,7 @@
<string name="dialog_app_is_obscured_info_hint">他のアプリケーションが Cryptomator の上に何かを表示しています (例: ブルーライト フィルターや night mode アプリ)。このため、セキュリティの観点から Cryptomator が無効化されています。\n\n<a href="https://docs.cryptomator.org/en/1.5/android/settings/#block-app-when-obscured">Cryptomator を有効にするには</a></string>
<string name="dialog_app_is_obscured_info_neutral_button">閉じる</string>
<string name="dialog_vaults_removed_during_migration_title">%1s クラウンドの金庫を再追加してください</string>
<string name="dialog_vault_is_root_folder_of_cloud_title">金庫がクラウト接続のルート フォルダーです</string>
<string name="dialog_disable_secure_screen_disclaimer_hint">この設定は安全のための機能です。他のアプリがユーザーを騙してしまうことを防ぎます。\n\n無効にすることで、 <a href="https://docs.cryptomator.org/en/1.5/android/settings/#screen-security">リスクを認識していること</a> に留意する必要があります。</string>
<string name="dialog_delete_cloud_connection_with_vaults_message">本当にこのクラウド接続を削除しますか?</string>
<string name="dialog_delete_cloud_connection_with_vaults_hint">この操作により、クラウド接続とクラウドのすべての金庫が削除されます。</string>

View File

@ -370,6 +370,7 @@
<string name="notification_auto_upload_failed_general_error">Wystąpił błąd podczas przesyłania.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Wybrany folder do przesłania nie jest już dostępny. Przejdź do ustawień i wybierz nowy</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Sejf został zablokowany podczas przesyłania, otwórz go ponownie aby kontynuować</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Sejf wybrany do automatycznego wysyłania już nie istnieje.</string>
<string name="notification_open_writable_file_title">Otwórz plik zapisywalny</string>
<string name="notification_open_writable_file_message">Sejf pozostaje odblokowany do czasu zakończenia edycji</string>
<string name="notification_update_check_finished_latest">Zainstalowano najnowszą wersję</string>

View File

@ -370,6 +370,7 @@
<string name="notification_auto_upload_failed_general_error">Ошибка при загрузке.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Выбранная папка для загрузки больше недоступна. Перейдите в настройки и выберите новую папку</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Хранилище заблокировано во время загрузки, откройте хранилище снова, чтобы продолжить</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Хранилище, выбранное для автозагрузки, больше не существует.</string>
<string name="notification_open_writable_file_title">Открыть файл, доступный для записи</string>
<string name="notification_open_writable_file_message">Хранилище разблокировано до завершения редактирования</string>
<string name="notification_update_check_finished_latest">Установлена новейшая версия</string>

View File

@ -370,6 +370,7 @@
<string name="notification_auto_upload_failed_general_error">Došlo k obecnej chybe počas nahrávania.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Zvolený adresár pre nahrávanie už nie je dostupný. V nastaveniach zvoľte nový</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Trezor počas nahrávania uzamknutý, prosím znovu-otvorte trezor pre pokračovanie</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Trezor určený pre automatické nahrávanie už viac neexistuje.</string>
<string name="notification_open_writable_file_title">Otvoriť zapisovateľný súbor</string>
<string name="notification_open_writable_file_message">Trezor zostáva odomknutý pokial nie je ukončené editovanie</string>
<string name="notification_update_check_finished_latest">Najnovšia verzia inštalovaná</string>

View File

@ -368,6 +368,7 @@
<string name="notification_auto_upload_failed_general_error">Allmänt fel uppstod under uppladdning.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Vald mapp för uppladdning finns inte längre. Gå till inställningar och välj en ny</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Valv låstes under uppladdningen, vänligen öppna valvet för att fortsätta</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Valvet som angets för automatisk uppladdning finns inte längre.</string>
<string name="notification_open_writable_file_title">Öppna skrivbar fil</string>
<string name="notification_open_writable_file_message">Valvet är upplåst till färdig redigering</string>
<string name="notification_update_check_finished_latest">Senaste versionen installerad</string>

View File

@ -162,6 +162,20 @@
<string name="screen_settings_section_search">Пошук</string>
<string name="screen_settings_live_search">\"Живий\" пошук</string>
<string name="screen_settings_live_search_summary">Оновити результати пошуку при вході в запит</string>
<string name="screen_settings_glob_search">Пошук за допомогою глобального шаблону</string>
<string name="screen_settings_glob_search_summary">Використовувати шаблон, що відповідає аліасу.*.jpg</string>
<string name="screen_settings_section_auto_lock">Автоматичне блокування</string>
<string name="screen_settings_auto_lock_timeout">Блокувати після</string>
<string name="screen_settings_auto_lock_on_screen_lock">Коли екран вимкнено</string>
<string name="screen_settings_section_auto_photo_upload">Автоматичне завантаження фотографій</string>
<string name="screen_settings_section_auto_photo_upload_vault">Вибрати сховище для завантаження</string>
<string name="screen_settings_section_auto_photo_upload_toggle">Увімкнено</string>
<string name="screen_settings_section_auto_photo_upload_toggle_summary">Захоплювати зображення у фоновому режимі і після розблокування вибраного сховища, почати завантаження</string>
<string name="screen_settings_section_auto_photo_upload_toggle_instant_upload">Вивантажити миттєво</string>
<string name="screen_settings_section_auto_photo_upload_toggle_instant_upload_summary">Вивантажувати, якщо сховище розблоковано</string>
<string name="screen_settings_section_auto_photo_upload_only_wifi_toggle">Вивантажувати лише за допомогою Wi-Fi</string>
<string name="screen_settings_section_auto_photo_upload_including_videos">Завантажувати відео</string>
<string name="screen_settings_auto_photo_upload_title">Зберігати автозавантажені файли до&#8230;</string>
<!-- ## screen: cloud settings -->
<!-- ## screen: licenses -->
<!-- ## screen: authenticate cloud -->

View File

@ -367,11 +367,12 @@
<string name="notification_auto_upload_failed_general_error">上传时出错</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">所选文件夹无法再上传,请转到设置并选择一个新的文件夹</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">上传期间保险库锁定了,请重新打开保险库以继续</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">用于自动上传的指定保险库已不存在。</string>
<string name="notification_open_writable_file_title">打开可写文件</string>
<string name="notification_open_writable_file_message">编辑期间保险库保持解锁</string>
<string name="notification_update_check_finished_latest">已安装最新版本</string>
<string name="screen_settings_lru_cache">缓存</string>
<string name="screen_settings_lru_cache_toggle_summary">缓存是在本地加密的最近访问文件,用以下次快速加载</string>
<string name="screen_settings_lru_cache_toggle_summary">缓存最近在本地加密的访问文件,用以下次快速加载</string>
<string name="screen_settings_lru_cache_size">缓存总大小</string>
<string name="screen_settings_clear_lru_cache_size">清除缓存</string>
<string name="screen_settings_lru_cache_changed__restart_toast">更改将在下次应用重启时生效</string>

View File

@ -71,6 +71,7 @@
</plurals>
<string name="screen_file_browser_move_button_text">移動</string>
<string name="screen_file_browser_msg_empty_folder">清空資料夾</string>
<string name="screen_file_browser_file_info_label_date">於%1$s前修改</string>
<string name="screen_file_browser_share_intent_chooser_title">分享對象</string>
<string name="screen_file_browser_share_destination_title">選擇目的地</string>
<string name="screen_file_browser_share_button_text">選擇</string>
@ -89,6 +90,7 @@
<string name="screen_file_browser_node_action_edit_text">編輯</string>
<string name="screen_file_browser_node_action_export">匯出</string>
<string name="screen_file_browser_node_action_delete">刪除</string>
<string name="screen_file_browser_node_action_open_with_text">打開方式……</string>
<string name="screen_file_browser_selection_mode_title_zero_elements">選擇項目</string>
<string name="screen_file_browser_selection_mode_title_one_or_more_elements">已選取 %1$d 個項目</string>
<string name="screen_file_browser_select_items">選擇</string>
@ -103,6 +105,7 @@
<string name="screen_share_files_content_text">文字</string>
<string name="screen_share_files_content_file">檔案</string>
<string name="screen_share_files_content_files">檔案</string>
<string name="screen_share_files_msg_filenames_must_be_unique">檔案名必須是唯一的,請重新命名重復的檔案。</string>
<string name="screen_share_files_section_location">儲存位置</string>
<string name="screen_share_files_save_button_text">儲存</string>
<string name="screen_share_files_msg_success">加密已完成</string>
@ -111,6 +114,8 @@
<!-- ## screen: cloud connections -->
<string name="screen_cloud_connections_title">選擇位置</string>
<string name="screen_cloud_connections_no_connections">點擊此處新增位置</string>
<string name="screen_cloud_error_webdav_not_supported">服務器似乎與 WebDAV 不兼容</string>
<string name="screen_cloud_local_error_no_content_provider">沒有更多位置可用。</string>
<!-- ## screen: webdav settings -->
<string name="screen_webdav_settings_url_port_label">網址</string>
<string name="screen_webdav_settings_username_label">帳號名稱</string>
@ -131,6 +136,7 @@
<!-- ## screen: set password -->
<string name="screen_set_password_title">設定密碼</string>
<string name="screen_set_password_button_text">完成</string>
<string name="screen_set_password_hint">重要:如果您遺忘了密碼,您的數據將無法被恢復。</string>
<string name="screen_set_password_retype_password_label">再次輸入密碼</string>
<string name="screen_set_password_strength_indicator_0">密碼強度不足,無法新建加密檔案庫</string>
<string name="screen_set_password_strength_indicator_1"></string>
@ -146,6 +152,7 @@
<string name="screen_settings_section_search">搜尋</string>
<string name="screen_settings_live_search">即時搜尋</string>
<string name="screen_settings_section_auto_lock">自動鎖定</string>
<string name="screen_settings_auto_lock_timeout">在多久後鎖定</string>
<string name="screen_settings_auto_lock_on_screen_lock">當螢幕被鎖定</string>
<string name="screen_settings_section_auto_photo_upload">自動上傳像片</string>
<string name="screen_settings_section_auto_photo_upload_vault">選擇要上傳的加密檔案庫</string>
@ -157,6 +164,7 @@
<string name="screen_settings_facebook_label">在臉書上給我們點讚</string>
<string name="screen_settings_section_legal">法律</string>
<string name="screen_settings_licenses_label">軟體授權</string>
<string name="screen_settings_license_terms_label">許可證書條款</string>
<string name="screen_settings_section_support">技術支援</string>
<string name="screen_settings_contact_label">請求協助</string>
<string name="screen_settings_debug_mode_label">除錯模式</string>
@ -165,6 +173,8 @@
<string name="screen_settings_security_label">安全提示</string>
<string name="screen_settings_section_version">版本</string>
<string name="screen_settings_advanced_settings">進階設定</string>
<string name="screen_settings_background_unlock_preparation_label">加速解鎖</string>
<string name="screen_settings_keep_unlocked_while_editing_files">保持解鎖</string>
<!-- ## screen: cloud settings -->
<string name="screen_cloud_settings_webdav_connections">WebDAV 連線</string>
<string name="screen_cloud_settings_pcloud_connections">pCloud 連線</string>
@ -212,6 +222,7 @@
<string name="dialog_export_file_title">正在導出中(%1$d/%2$d</string>
<string name="dialog_progress_please_wait">請稍候……</string>
<string name="dialog_progress_creating_folder">正在創建資料夾……</string>
<string name="dialog_progress_creating_text_file">正在創建文本檔案……</string>
<string name="action_progress_renaming">正在重命名……</string>
<string name="action_progress_deleting">正在删除&#8230;</string>
<string name="dialog_progress_unlocking_vault">正在解鎖加密檔案庫……</string>
@ -224,6 +235,8 @@
<string name="dialog_lock_vault">鎖定</string>
<string name="dialog_accept_ssl_certificate_title">無效的 TLS 憑證</string>
<string name="dialog_accept_ssl_certificate_details">詳情</string>
<string name="dialog_accept_ssl_certificate_security_checkbox">這可能會是個安全風險。我清楚我在做什麼。</string>
<string name="dialog_http_security_hint">使用 HTTP 是不安全的。我們推薦使用 HTTPS 來取代。如果您瞭解風險,您可以使用 HTTP 繼續。</string>
<string name="dialog_http_security_checkbox">更換為 HTTPS</string>
<string name="dialog_http_security_title">是否使用 HTTPS</string>
<string name="dialog_no_screen_lock_title">設定螢幕鎖定?</string>
@ -236,6 +249,7 @@
<string name="dialog_confirm_delete_multiple_title">是否刪除%1$d個項目</string>
<string name="dialog_confirm_delete_multiple_message">您確定要刪除這些項目嗎?</string>
<string name="dialog_confirm_delete_file_message">您確定要刪除這個檔案嗎?</string>
<string name="dialog_confirm_delete_folder_message">這將會刪除檔案夾中的全部內容。您確定要刪除這個檔案夾嗎?</string>
<string name="dialog_enter_license_title">提供一個有效的許可證書</string>
<string name="dialog_enter_license_content">我們檢測到你沒有使用 Google Play 商店安裝 Cryptomator。提供一個有效的許可證書證書可以從<a href="https://cryptomator.org/android/">https://cryptomator.org/android/</a>購買</string>
<string name="dialog_enter_license_not_valid_content">提供的許可證書無效。請確認您輸入無誤。</string>
@ -274,8 +288,29 @@
<string name="time_unit_years_sg"></string>
<string name="time_unit_years_pl"></string>
<!-- ## biometric authentication -->
<string name="dialog_biometric_auth_title">生物識別驗證登錄</string>
<string name="dialog_biometric_auth_use_password">使用加密檔案庫密碼</string>
<string name="dialog_unable_to_auto_upload_files_title">無法自動上傳檔案</string>
<!-- notification -->
<string name="notification_timeout">%1$s後自動鎖定</string>
<string name="notification_lock_all">全部鎖定</string>
<string name="notification_cancel_auto_upload">取消上傳</string>
<string name="notification_auto_upload_title">正在運行像片自動上傳</string>
<string name="notification_auto_upload_message">正在上传 %1d/%2d</string>
<string name="notification_auto_upload_finished_title">像片自動上傳已完成</string>
<string name="notification_auto_upload_finished_message">已將%1$d張像片上傳至加密檔案庫</string>
<string name="notification_auto_upload_failed_title">像片自動上傳失敗</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">加密檔案庫在上傳期間鎖定,請重新打開加密檔案庫後繼續</string>
<string name="notification_update_check_finished_latest">已安裝最新版本</string>
<string name="screen_settings_lru_cache">緩存</string>
<string name="screen_settings_lru_cache_size">緩存總大小</string>
<string name="screen_settings_clear_lru_cache_size">清除緩存</string>
<string name="screen_settings_lru_cache_changed__restart_toast">變更將會在應用程式下次重啓後啓用。</string>
<string name="screen_settings_license">註冊給</string>
<string name="screen_settings_license_mail">%1$s</string>
<string name="dialog_settings_update_check_interval_title">檢查更新間隔</string>
<string name="screen_settings_check_updates">檢查更新</string>
<string name="screen_settings_last_check_updates">上次檢查於%1$s</string>
<!-- lock timeout names -->
<string name="lock_timeout_instant">立即</string>
<string name="lock_timeout_1m">1分鐘</string>

View File

@ -537,6 +537,7 @@
<string name="notification_auto_upload_failed_general_error">General error occurred during upload.</string>
<string name="notification_auto_upload_failed_due_to_folder_not_exists">Selected folder for upload isn\'t available anymore. Go to settings and choose a new one</string>
<string name="notification_auto_upload_failed_due_to_vault_locked">Vault locked during upload, please reopen vault to continue</string>
<string name="notification_auto_upload_failed_due_to_vault_not_found">Vault specified for auto upload doesn\'t exist anymore.</string>
<string name="notification_cancel_open_writable_file" translatable="false">@string/dialog_button_cancel</string>
<string name="notification_open_writable_file_title">Open writable file</string>