Compare commits

...

2 Commits

Author SHA1 Message Date
Sylvia van Os
a434397551 Merge branch 'master' of github.com:TheLastProject/loyalty-card-locker into fix/deprecatedProgressDialog 2021-12-18 14:48:13 +01:00
Sylvia van Os
ae1ccab059 Replace ProgressDialog with notification 2021-11-28 21:48:48 +01:00
35 changed files with 200 additions and 183 deletions

View File

@@ -1,7 +1,10 @@
package protect.card_locker; package protect.card_locker;
import android.Manifest; import android.Manifest;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.ActivityNotFoundException; import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
@@ -22,6 +25,7 @@ import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.widget.Toolbar; import androidx.appcompat.widget.Toolbar;
import androidx.core.app.ActivityCompat; import androidx.core.app.ActivityCompat;
import androidx.core.app.NotificationCompat;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -54,6 +58,12 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
final private TaskHandler mTasks = new TaskHandler(); final private TaskHandler mTasks = new TaskHandler();
private NotificationManager mNotifyManager;
private NotificationCompat.Builder mBuilder;
private static final int NOTIFICATION_IMPORT = 1;
private static final int NOTIFICATION_EXPORT = 2;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@@ -94,7 +104,7 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
try { try {
OutputStream writer = getContentResolver().openOutputStream(uri); OutputStream writer = getContentResolver().openOutputStream(uri);
Log.e(TAG, "Starting file export with: " + result.toString()); Log.e(TAG, "Starting file export with: " + result.toString());
startExport(writer, uri, exportPassword.toCharArray(), true); startExport(writer, uri, exportPassword != null ? exportPassword.toCharArray() : null, true);
} catch (IOException e) { } catch (IOException e) {
Log.e(TAG, "Failed to export file: " + result.toString(), e); Log.e(TAG, "Failed to export file: " + result.toString(), e);
onExportComplete(ImportExportResult.GenericFailure, uri); onExportComplete(ImportExportResult.GenericFailure, uri);
@@ -256,22 +266,59 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
builder.show(); builder.show();
} }
private void startProgressNotification(boolean importing) {
mNotifyManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mBuilder = new NotificationCompat.Builder(this, NotificationType.getImportExportChannel(this));
mBuilder.setContentTitle(getString(importing ? R.string.importing : R.string.exporting))
.setContentText(null)
.setSmallIcon(R.drawable.ic_import_export_white_24dp)
.setColor(getThemeColor())
.setProgress(0, 0, true);
mNotifyManager.notify(importing ? NOTIFICATION_IMPORT : NOTIFICATION_EXPORT, mBuilder.build());
}
private void endProgressNotification(boolean importing, ImportExportResult result, PendingIntent sendIntent) {
String notificationTitle;
String notificationMessage;
if (result.equals(ImportExportResult.Success)) {
notificationTitle = getString(importing ? R.string.importSuccessfulTitle : R.string.exportSuccessfulTitle);
notificationMessage = getString(importing ? R.string.importSuccessful : R.string.exportSuccessful);
} else {
int reason = R.string.unknown_failure;
if (result.equals(ImportExportResult.BadPassword)) {
reason = R.string.incorrect_password;
}
notificationTitle = getString(importing ? R.string.importFailedTitle : R.string.exportFailedTitle);
notificationMessage = String.format(getString(importing ? R.string.importFailed : R.string.exportFailed), getString(reason));
}
mBuilder.setContentTitle(notificationTitle)
.setContentText(notificationMessage)
.setProgress(0,0, false);
if (sendIntent != null) {
mBuilder.addAction(R.drawable.ic_share, getString(R.string.sendLabel), sendIntent);
}
mNotifyManager.notify(importing ? NOTIFICATION_IMPORT : NOTIFICATION_EXPORT, mBuilder.build());
}
private void startImport(final InputStream target, final Uri targetUri, final DataFormat dataFormat, final char[] password, final boolean closeWhenDone) { private void startImport(final InputStream target, final Uri targetUri, final DataFormat dataFormat, final char[] password, final boolean closeWhenDone) {
mTasks.flushTaskList(TaskHandler.TYPE.IMPORT, true, false, false); mTasks.flushTaskList(TaskHandler.TYPE.IMPORT, true, false, false);
ImportExportTask.TaskCompleteListener listener = new ImportExportTask.TaskCompleteListener() { ImportExportTask.TaskCompleteListener listener = (result, dataFormat1) -> {
@Override onImportComplete(result, targetUri, dataFormat1);
public void onTaskComplete(ImportExportResult result, DataFormat dataFormat) { if (closeWhenDone) {
onImportComplete(result, targetUri, dataFormat); try {
if (closeWhenDone) { target.close();
try { } catch (IOException ioException) {
target.close(); ioException.printStackTrace();
} catch (IOException ioException) {
ioException.printStackTrace();
}
} }
} }
}; };
startProgressNotification(true);
importExporter = new ImportExportTask(ImportExportActivity.this, importExporter = new ImportExportTask(ImportExportActivity.this,
dataFormat, target, password, listener); dataFormat, target, password, listener);
mTasks.executeTask(TaskHandler.TYPE.IMPORT, importExporter); mTasks.executeTask(TaskHandler.TYPE.IMPORT, importExporter);
@@ -279,20 +326,18 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
private void startExport(final OutputStream target, final Uri targetUri, char[] password, final boolean closeWhenDone) { private void startExport(final OutputStream target, final Uri targetUri, char[] password, final boolean closeWhenDone) {
mTasks.flushTaskList(TaskHandler.TYPE.EXPORT, true, false, false); mTasks.flushTaskList(TaskHandler.TYPE.EXPORT, true, false, false);
ImportExportTask.TaskCompleteListener listener = new ImportExportTask.TaskCompleteListener() { ImportExportTask.TaskCompleteListener listener = (result, dataFormat) -> {
@Override onExportComplete(result, targetUri);
public void onTaskComplete(ImportExportResult result, DataFormat dataFormat) { if (closeWhenDone) {
onExportComplete(result, targetUri); try {
if (closeWhenDone) { target.close();
try { } catch (IOException ioException) {
target.close(); ioException.printStackTrace();
} catch (IOException ioException) {
ioException.printStackTrace();
}
} }
} }
}; };
startProgressNotification(false);
importExporter = new ImportExportTask(ImportExportActivity.this, importExporter = new ImportExportTask(ImportExportActivity.this,
DataFormat.Catima, target, password, listener); DataFormat.Catima, target, password, listener);
mTasks.executeTask(TaskHandler.TYPE.EXPORT, importExporter); mTasks.executeTask(TaskHandler.TYPE.EXPORT, importExporter);
@@ -358,72 +403,27 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
} }
private void onImportComplete(ImportExportResult result, Uri path, DataFormat dataFormat) { private void onImportComplete(ImportExportResult result, Uri path, DataFormat dataFormat) {
endProgressNotification(true, result, null);
if (result == ImportExportResult.BadPassword) { if (result == ImportExportResult.BadPassword) {
retryWithPassword(dataFormat, path); retryWithPassword(dataFormat, path);
return;
} }
AlertDialog.Builder builder = new AlertDialog.Builder(this);
int messageId;
if (result == ImportExportResult.Success) {
builder.setTitle(R.string.importSuccessfulTitle);
messageId = R.string.importSuccessful;
} else {
builder.setTitle(R.string.importFailedTitle);
messageId = R.string.importFailed;
}
final String message = getResources().getString(messageId);
builder.setMessage(message);
builder.setNeutralButton(R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
} }
private void onExportComplete(ImportExportResult result, final Uri path) { private void onExportComplete(ImportExportResult result, final Uri path) {
AlertDialog.Builder builder = new AlertDialog.Builder(this); PendingIntent pendingIntent = null;
int messageId;
if (result == ImportExportResult.Success) { if (result == ImportExportResult.Success) {
builder.setTitle(R.string.exportSuccessfulTitle); Intent sendIntent = new Intent(Intent.ACTION_SEND);
messageId = R.string.exportSuccessful; sendIntent.putExtra(Intent.EXTRA_STREAM, path);
} else { sendIntent.setType("text/csv");
builder.setTitle(R.string.exportFailedTitle);
messageId = R.string.exportFailed; // set flag to give temporary permission to external app to use the FileProvider
sendIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
pendingIntent = PendingIntent.getActivity(this, NOTIFICATION_EXPORT, sendIntent, PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_IMMUTABLE);
} }
final String message = getResources().getString(messageId); endProgressNotification(false, result, pendingIntent);
builder.setMessage(message);
builder.setNeutralButton(R.string.ok, (dialog, which) -> dialog.dismiss());
if (result == ImportExportResult.Success) {
final CharSequence sendLabel = ImportExportActivity.this.getResources().getText(R.string.sendLabel);
builder.setPositiveButton(sendLabel, (dialog, which) -> {
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_STREAM, path);
sendIntent.setType("text/csv");
// set flag to give temporary permission to external app to use the FileProvider
sendIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
ImportExportActivity.this.startActivity(Intent.createChooser(sendIntent,
sendLabel));
dialog.dismiss();
});
}
builder.create().show();
} }
} }

View File

@@ -1,7 +1,7 @@
package protect.card_locker; package protect.card_locker;
import android.app.Activity; import android.app.Activity;
import android.app.ProgressDialog; import android.app.NotificationManager;
import android.content.Context; import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase;
@@ -13,6 +13,7 @@ import java.io.OutputStream;
import java.io.OutputStreamWriter; import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import androidx.core.app.NotificationCompat;
import protect.card_locker.async.CompatCallable; import protect.card_locker.async.CompatCallable;
import protect.card_locker.importexport.DataFormat; import protect.card_locker.importexport.DataFormat;
import protect.card_locker.importexport.ImportExportResult; import protect.card_locker.importexport.ImportExportResult;
@@ -22,15 +23,13 @@ import protect.card_locker.importexport.MultiFormatImporter;
public class ImportExportTask implements CompatCallable<ImportExportResult> { public class ImportExportTask implements CompatCallable<ImportExportResult> {
private static final String TAG = "Catima"; private static final String TAG = "Catima";
private Activity activity; private final Activity activity;
private boolean doImport; private final boolean doImport;
private DataFormat format; private final DataFormat format;
private OutputStream outputStream; private OutputStream outputStream;
private InputStream inputStream; private InputStream inputStream;
private char[] password; private final char[] password;
private TaskCompleteListener listener; private final TaskCompleteListener listener;
private ProgressDialog progress;
/** /**
* Constructor which will setup a task for exporting to the given file * Constructor which will setup a task for exporting to the given file
@@ -61,11 +60,11 @@ public class ImportExportTask implements CompatCallable<ImportExportResult> {
} }
private ImportExportResult performImport(Context context, InputStream stream, SQLiteDatabase database, char[] password) { private ImportExportResult performImport(Context context, InputStream stream, SQLiteDatabase database, char[] password) {
ImportExportResult importResult = MultiFormatImporter.importData(context, database, stream, format, password); ImportExportResult result = MultiFormatImporter.importData(context, database, stream, format, password);
Log.i(TAG, "Import result: " + importResult.name()); Log.i(TAG, "Import result: " + result.name());
return importResult; return result;
} }
private ImportExportResult performExport(Context context, OutputStream stream, SQLiteDatabase database, char[] password) { private ImportExportResult performExport(Context context, OutputStream stream, SQLiteDatabase database, char[] password) {
@@ -84,20 +83,6 @@ public class ImportExportTask implements CompatCallable<ImportExportResult> {
return result; return result;
} }
public void onPreExecute() {
progress = new ProgressDialog(activity);
progress.setTitle(doImport ? R.string.importing : R.string.exporting);
progress.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
ImportExportTask.this.stop();
}
});
progress.show();
}
protected ImportExportResult doInBackground(Void... nothing) { protected ImportExportResult doInBackground(Void... nothing) {
final SQLiteDatabase database = new DBHelper(activity).getWritableDatabase(); final SQLiteDatabase database = new DBHelper(activity).getWritableDatabase();
ImportExportResult result; ImportExportResult result;
@@ -114,15 +99,15 @@ public class ImportExportTask implements CompatCallable<ImportExportResult> {
} }
public void onPostExecute(Object castResult) { public void onPostExecute(Object castResult) {
listener.onTaskComplete((ImportExportResult) castResult, format); ImportExportResult result = (ImportExportResult) castResult;
listener.onTaskComplete(result, format);
progress.dismiss();
Log.i(TAG, (doImport ? "Import" : "Export") + " Complete"); Log.i(TAG, (doImport ? "Import" : "Export") + " Complete");
} }
protected void onCancelled() { @Override
progress.dismiss(); public void onPreExecute() {
Log.i(TAG, (doImport ? "Import" : "Export") + " Cancelled");
} }
protected void stop() { protected void stop() {

View File

@@ -0,0 +1,29 @@
package protect.card_locker;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
import android.os.Build;
public class NotificationType {
private final static String NOTIFICATION_IMPORT_EXPORT = "NOTIFICATION_IMPORT_EXPORT";
public static String getImportExportChannel(Context context) {
createNotificationChannel(context, NOTIFICATION_IMPORT_EXPORT, context.getString(R.string.importExport), context.getString(R.string.importExportDescription), NotificationManager.IMPORTANCE_HIGH);
return NOTIFICATION_IMPORT_EXPORT;
}
private static void createNotificationChannel(Context context, String channelId, CharSequence name, String description, int importance) {
// Create the NotificationType, but only on API 26+ because
// the NotificationType class is new and not in the support library
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel channel = new NotificationChannel(channelId, name, importance);
channel.setDescription(description);
// Register the channel with the system; you can't change the importance
// or other notification behaviors after this
NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);
}
}
}

View File

@@ -106,9 +106,9 @@
<string name="importOptionApplicationButton">Избиране чрез приложение</string> <string name="importOptionApplicationButton">Избиране чрез приложение</string>
<string name="importing">Внасяне…</string> <string name="importing">Внасяне…</string>
<string name="exporting">Изнасяне…</string> <string name="exporting">Изнасяне…</string>
<string name="exportFailed">Картите не могат да бъдат изнесени</string> <string name="exportFailed">Картите не могат да бъдат изнесени: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">Грешка при изнасяне</string> <string name="exportFailedTitle">Грешка при изнасяне</string>
<string name="importFailed">Картите не могат да бъдат внесени</string> <string name="importFailed">Картите не могат да бъдат внесени: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">Грешка при внасяне</string> <string name="importFailedTitle">Грешка при внасяне</string>
<string name="exportSuccessfulTitle">Резултат от изнасяне</string> <string name="exportSuccessfulTitle">Резултат от изнасяне</string>
<string name="importSuccessfulTitle">Резултат от внасяне</string> <string name="importSuccessfulTitle">Резултат от внасяне</string>

View File

@@ -23,10 +23,10 @@
<string name="importExportHelp">Zálohování karet vám umožní přesunout je do jiného zařízení.</string> <string name="importExportHelp">Zálohování karet vám umožní přesunout je do jiného zařízení.</string>
<string name="importSuccessfulTitle">Importováno</string> <string name="importSuccessfulTitle">Importováno</string>
<string name="importFailedTitle">Import selhal</string> <string name="importFailedTitle">Import selhal</string>
<string name="importFailed">Nelze importovat karty</string> <string name="importFailed">Nelze importovat karty: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exportovat</string> <string name="exportSuccessfulTitle">Exportovat</string>
<string name="exportFailedTitle">Export selhal</string> <string name="exportFailedTitle">Export selhal</string>
<string name="exportFailed">Nelze exportovat karty</string> <string name="exportFailed">Nelze exportovat karty: <xliff:g>%s</xliff:g></string>
<string name="importing">Importuji…</string> <string name="importing">Importuji…</string>
<string name="exporting">Exportuji…</string> <string name="exporting">Exportuji…</string>
<string name="noExternalStoragePermissionError">Udělit povolení externího úložiště pro import nebo export karet jako první</string> <string name="noExternalStoragePermissionError">Udělit povolení externího úložiště pro import nebo export karet jako první</string>

View File

@@ -41,10 +41,10 @@
<string name="importExportHelp">Hvis du sikkerhedskopierer dine kort, kan du flytte dem til en anden enhed.</string> <string name="importExportHelp">Hvis du sikkerhedskopierer dine kort, kan du flytte dem til en anden enhed.</string>
<string name="importSuccessfulTitle">Importeret</string> <string name="importSuccessfulTitle">Importeret</string>
<string name="importFailedTitle">Import mislykkedes</string> <string name="importFailedTitle">Import mislykkedes</string>
<string name="importFailed">Kunne ikke importere kort</string> <string name="importFailed">Kunne ikke importere kort: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Eksporteret</string> <string name="exportSuccessfulTitle">Eksporteret</string>
<string name="exportFailedTitle">Eksport mislykkedes</string> <string name="exportFailedTitle">Eksport mislykkedes</string>
<string name="exportFailed">Kunne ikke eksportere kort</string> <string name="exportFailed">Kunne ikke eksportere kort: <xliff:g>%s</xliff:g></string>
<string name="importing">Importere…</string> <string name="importing">Importere…</string>
<string name="exporting">Eksportere…</string> <string name="exporting">Eksportere…</string>
<string name="settings_dark_theme">Mørk</string> <string name="settings_dark_theme">Mørk</string>

View File

@@ -32,10 +32,10 @@
<string name="importExportHelp">Wenn du deine Daten sicherst, kannst du sie auf ein anderes Gerät übertragen.</string> <string name="importExportHelp">Wenn du deine Daten sicherst, kannst du sie auf ein anderes Gerät übertragen.</string>
<string name="importSuccessfulTitle">Importiert</string> <string name="importSuccessfulTitle">Importiert</string>
<string name="importFailedTitle">Import fehlgeschlagen</string> <string name="importFailedTitle">Import fehlgeschlagen</string>
<string name="importFailed">Import konnte nicht durchgeführt werden</string> <string name="importFailed">Karten konnten nicht importiert werden: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exportiert</string> <string name="exportSuccessfulTitle">Exportiert</string>
<string name="exportFailedTitle">Export fehlgeschlagen</string> <string name="exportFailedTitle">Export fehlgeschlagen</string>
<string name="exportFailed">Export konnte nicht durchgeführt werden</string> <string name="exportFailed">Karten konnten nicht exportiert werden: <xliff:g>%s</xliff:g></string>
<string name="importing">Importiere…</string> <string name="importing">Importiere…</string>
<string name="exporting">Exportiere…</string> <string name="exporting">Exportiere…</string>
<string name="noExternalStoragePermissionError">Berechtigung für den externen Speicher zum Importieren oder Exportieren von Daten erteilen</string> <string name="noExternalStoragePermissionError">Berechtigung für den externen Speicher zum Importieren oder Exportieren von Daten erteilen</string>
@@ -222,4 +222,4 @@
<string name="action_hide_details">Details ausblenden</string> <string name="action_hide_details">Details ausblenden</string>
<string name="translate_platform">auf Weblate</string> <string name="translate_platform">auf Weblate</string>
<string name="shortcutSelectCard">Wählen Sie eine Karte</string> <string name="shortcutSelectCard">Wählen Sie eine Karte</string>
</resources> </resources>

View File

@@ -28,10 +28,10 @@
<string name="importExportHelp">Τα εφεδρικά δεδομένα σας δίνουν την δυνατότητα να μεταφέρετε τις κάρτες σας σε μία άλλη συσκευή.</string> <string name="importExportHelp">Τα εφεδρικά δεδομένα σας δίνουν την δυνατότητα να μεταφέρετε τις κάρτες σας σε μία άλλη συσκευή.</string>
<string name="importSuccessfulTitle">Εισαγωγή επιτυχής</string> <string name="importSuccessfulTitle">Εισαγωγή επιτυχής</string>
<string name="importFailedTitle">Εισαγωγή ανεπιτυχής</string> <string name="importFailedTitle">Εισαγωγή ανεπιτυχής</string>
<string name="importFailed">Δεν εισήχθει</string> <string name="importFailed">Δεν εισήχθει: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Εξαγωγή επιτυχής</string> <string name="exportSuccessfulTitle">Εξαγωγή επιτυχής</string>
<string name="exportFailedTitle">Εξαγωγή ανεπιτυχής</string> <string name="exportFailedTitle">Εξαγωγή ανεπιτυχής</string>
<string name="exportFailed">Δεν εξήχθη</string> <string name="exportFailed">Δεν εξήχθη: <xliff:g>%s</xliff:g></string>
<string name="importing">Γίνεται εισαγωγή του…</string> <string name="importing">Γίνεται εισαγωγή του…</string>
<string name="exporting">Γίνεται εξαγωγή του…</string> <string name="exporting">Γίνεται εξαγωγή του…</string>
<string name="noExternalStoragePermissionError">Δεν είναι δυνατή η εισαγωγή ή εξαγωγή καρτών χωρίς την άδεια πρόσβασης στον εξωτερικό χώρο αποθήκευσης</string> <string name="noExternalStoragePermissionError">Δεν είναι δυνατή η εισαγωγή ή εξαγωγή καρτών χωρίς την άδεια πρόσβασης στον εξωτερικό χώρο αποθήκευσης</string>

View File

@@ -65,8 +65,8 @@
<string name="importOptionFilesystemExplanation">Elektu specifa dosiero de la dosiersistemo.</string> <string name="importOptionFilesystemExplanation">Elektu specifa dosiero de la dosiersistemo.</string>
<string name="exportOptionExplanation">La datumoj estos skribita al loko de via elekto.</string> <string name="exportOptionExplanation">La datumoj estos skribita al loko de via elekto.</string>
<string name="noExternalStoragePermissionError">Grant ekstera stokado permeso de importado aŭ eksportado kartoj unua</string> <string name="noExternalStoragePermissionError">Grant ekstera stokado permeso de importado aŭ eksportado kartoj unua</string>
<string name="exportFailed">Ne povis eksporti kartoj</string> <string name="exportFailed">Ne povis eksporti kartoj: <xliff:g>%s</xliff:g></string>
<string name="importFailed">Ne povis importi kartoj</string> <string name="importFailed">Ne povis importi kartoj: <xliff:g>%s</xliff:g></string>
<string name="importExportHelp">Subtenanta supre vian kartoj permesas vin movi ilin al alia aparato.</string> <string name="importExportHelp">Subtenanta supre vian kartoj permesas vin movi ilin al alia aparato.</string>
<string name="failedParsingImportUriError">Ne eblis analizi la importado URI</string> <string name="failedParsingImportUriError">Ne eblis analizi la importado URI</string>
<string name="noCardExistsError">Ne eblis trovi karto</string> <string name="noCardExistsError">Ne eblis trovi karto</string>

View File

@@ -28,10 +28,10 @@
<string name="importExportHelp">El respaldo le permite transferir sus tarjetas a otro dispositivo.</string> <string name="importExportHelp">El respaldo le permite transferir sus tarjetas a otro dispositivo.</string>
<string name="importSuccessfulTitle">Importado</string> <string name="importSuccessfulTitle">Importado</string>
<string name="importFailedTitle">Falló la importación</string> <string name="importFailedTitle">Falló la importación</string>
<string name="importFailed">No se han podido importar tarjetas</string> <string name="importFailed">No se han podido importar tarjetas: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exportado</string> <string name="exportSuccessfulTitle">Exportado</string>
<string name="exportFailedTitle">Falló la exportación</string> <string name="exportFailedTitle">Falló la exportación</string>
<string name="exportFailed">No se han podido exportar las tarjetas</string> <string name="exportFailed">No se han podido exportar las tarjetas: <xliff:g>%s</xliff:g></string>
<string name="importing">Importando…</string> <string name="importing">Importando…</string>
<string name="exporting">Exportando…</string> <string name="exporting">Exportando…</string>
<string name="noExternalStoragePermissionError">Otorgar permiso de almacenamiento para importar o exportar tarjetas</string> <string name="noExternalStoragePermissionError">Otorgar permiso de almacenamiento para importar o exportar tarjetas</string>

View File

@@ -104,10 +104,10 @@
<string name="exportOptionExplanation">Tiedot kirjoitetaan valitsemaasi sijaintiin.</string> <string name="exportOptionExplanation">Tiedot kirjoitetaan valitsemaasi sijaintiin.</string>
<string name="exporting">Viedään…</string> <string name="exporting">Viedään…</string>
<string name="importing">Tuodaan…</string> <string name="importing">Tuodaan…</string>
<string name="exportFailed">Kortteja ei voitu viedä</string> <string name="exportFailed">Kortteja ei voitu viedä: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">Vienti epäonnistui</string> <string name="exportFailedTitle">Vienti epäonnistui</string>
<string name="exportSuccessfulTitle">Vienti valmis</string> <string name="exportSuccessfulTitle">Vienti valmis</string>
<string name="importFailed">Kortteja ei voitu tuoda</string> <string name="importFailed">Kortteja ei voitu tuoda: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">Tuonti epäonnistui</string> <string name="importFailedTitle">Tuonti epäonnistui</string>
<string name="importSuccessfulTitle">Tuonti valmis</string> <string name="importSuccessfulTitle">Tuonti valmis</string>
<string name="importExportHelp">Varmuuskopioimalla korttisi, voit siirtää ne toiseen laitteeseen.</string> <string name="importExportHelp">Varmuuskopioimalla korttisi, voit siirtää ne toiseen laitteeseen.</string>

View File

@@ -27,11 +27,11 @@
<string name="exportName">Exporter</string> <string name="exportName">Exporter</string>
<string name="importExportHelp">La sauvegarde de vos données permet de les déplacer sur un autre appareil.</string> <string name="importExportHelp">La sauvegarde de vos données permet de les déplacer sur un autre appareil.</string>
<string name="importSuccessfulTitle">Importé</string> <string name="importSuccessfulTitle">Importé</string>
<string name="importFailedTitle">Échec de limport</string> <string name="importFailedTitle">Échec de l\'import</string>
<string name="importFailed">Impossible deffectuer limportation</string> <string name="importFailed">Impossible d\'importer les cartes: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exporté</string> <string name="exportSuccessfulTitle">Exporté</string>
<string name="exportFailedTitle">Échec de lexport</string> <string name="exportFailedTitle">Échec de l\'export</string>
<string name="exportFailed">Impossible deffectuer lexportation</string> <string name="exportFailed">Impossible d\'exporter les cartes: <xliff:g>%s</xliff:g></string>
<string name="importing">Import …</string> <string name="importing">Import …</string>
<string name="exporting">Export …</string> <string name="exporting">Export …</string>
<string name="noExternalStoragePermissionError">Accorder au stockage externe lautorisation dimporter ou dexporter des données</string> <string name="noExternalStoragePermissionError">Accorder au stockage externe lautorisation dimporter ou dexporter des données</string>
@@ -222,4 +222,4 @@
<string name="action_hide_details">Masquer les détails</string> <string name="action_hide_details">Masquer les détails</string>
<string name="translate_platform">sur Weblate</string> <string name="translate_platform">sur Weblate</string>
<string name="shortcutSelectCard">Sélectionnez une carte</string> <string name="shortcutSelectCard">Sélectionnez une carte</string>
</resources> </resources>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="unstar">Ukloni iz favorita</string> <string name="unstar">Ukloni iz favorita</string>
<string name="action_search">Pretraživanje</string> <string name="action_search">Pretraživanje</string>
<string name="save">Spremi</string> <string name="save">Spremi</string>
@@ -38,7 +38,7 @@
<string name="importExportHelp">Sigurnosno kopiranje kartica omogućuje vam da ih premjestite na drugi uređaj.</string> <string name="importExportHelp">Sigurnosno kopiranje kartica omogućuje vam da ih premjestite na drugi uređaj.</string>
<string name="importSuccessfulTitle">Uvezeno</string> <string name="importSuccessfulTitle">Uvezeno</string>
<string name="importFailedTitle">Nije moguće uvesti</string> <string name="importFailedTitle">Nije moguće uvesti</string>
<string name="importFailed">Nije moguće uvesti karte</string> <string name="importFailed">Nije moguće uvesti karte: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Izvezeno</string> <string name="exportSuccessfulTitle">Izvezeno</string>
<string name="about">Oh</string> <string name="about">Oh</string>
<string name="importOptionApplicationButton">Koristite drugu aplikaciju</string> <string name="importOptionApplicationButton">Koristite drugu aplikaciju</string>
@@ -51,7 +51,7 @@
<string name="importOptionApplicationTitle">Koristite drugu aplikaciju</string> <string name="importOptionApplicationTitle">Koristite drugu aplikaciju</string>
<string name="settings">Postavke</string> <string name="settings">Postavke</string>
<string name="settings_dark_theme">Tamno</string> <string name="settings_dark_theme">Tamno</string>
<string name="exportFailed">Nije moguće izvesti karte</string> <string name="exportFailed">Nije moguće izvesti karte: <xliff:g>%s</xliff:g></string>
<string name="importing">Uvoz…</string> <string name="importing">Uvoz…</string>
<string name="importOptionFilesystemTitle">Uvoz iz datotečnog sustava</string> <string name="importOptionFilesystemTitle">Uvoz iz datotečnog sustava</string>
<string name="importOptionFilesystemButton">Iz datotečnog sustava</string> <string name="importOptionFilesystemButton">Iz datotečnog sustava</string>

View File

@@ -90,10 +90,10 @@
<string name="exportName">Ekspor</string> <string name="exportName">Ekspor</string>
<string name="importSuccessfulTitle">Sudah diimpor</string> <string name="importSuccessfulTitle">Sudah diimpor</string>
<string name="importFailedTitle">Impor gagal</string> <string name="importFailedTitle">Impor gagal</string>
<string name="importFailed">Tidak dapat mengimpor kartu</string> <string name="importFailed">Tidak dapat mengimpor kartu: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Sudah diekspor</string> <string name="exportSuccessfulTitle">Sudah diekspor</string>
<string name="exportFailedTitle">Ekspor gagal</string> <string name="exportFailedTitle">Ekspor gagal</string>
<string name="exportFailed">Tidak dapat mengekspor kartu</string> <string name="exportFailed">Tidak dapat mengekspor kartu: <xliff:g>%s</xliff:g></string>
<string name="importing">Mengimpor…</string> <string name="importing">Mengimpor…</string>
<string name="exporting">Mengekspor…</string> <string name="exporting">Mengekspor…</string>
<string name="noExternalStoragePermissionError">Berikan izin penyimpanan eksternal untuk mengimpor atau mengekspor kartu terlebih dahulu</string> <string name="noExternalStoragePermissionError">Berikan izin penyimpanan eksternal untuk mengimpor atau mengekspor kartu terlebih dahulu</string>

View File

@@ -33,10 +33,10 @@
<string name="importExportHelp">Il backup dei dati permette di spostarli su un altro dispositivo.</string> <string name="importExportHelp">Il backup dei dati permette di spostarli su un altro dispositivo.</string>
<string name="importSuccessfulTitle">Importato</string> <string name="importSuccessfulTitle">Importato</string>
<string name="importFailedTitle">Importazione fallita</string> <string name="importFailedTitle">Importazione fallita</string>
<string name="importFailed">Impossibile eseguire l\'importazione</string> <string name="importFailed">Impossibile importare le carte: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Esportato</string> <string name="exportSuccessfulTitle">Esportato</string>
<string name="exportFailedTitle">Esportazione fallita</string> <string name="exportFailedTitle">Esportazione fallita</string>
<string name="exportFailed">Impossibile eseguire l\'esportazione</string> <string name="exportFailed">Impossibile esportare le carte: <xliff:g>%s</xliff:g></string>
<string name="importing">Importazione in corso…</string> <string name="importing">Importazione in corso…</string>
<string name="exporting">Esportazione in corso…</string> <string name="exporting">Esportazione in corso…</string>
<string name="noExternalStoragePermissionError">Concedi il permesso di archiviazione esterna per importare o esportare dati</string> <string name="noExternalStoragePermissionError">Concedi il permesso di archiviazione esterna per importare o esportare dati</string>
@@ -221,4 +221,4 @@
<string name="action_show_details">Mostra i dettagli</string> <string name="action_show_details">Mostra i dettagli</string>
<string name="action_hide_details">Nascondi i dettagli</string> <string name="action_hide_details">Nascondi i dettagli</string>
<string name="translate_platform">su Weblate</string> <string name="translate_platform">su Weblate</string>
</resources> </resources>

View File

@@ -92,7 +92,7 @@
<string name="noExternalStoragePermissionError">データをインポート/エクスポートするために外部ストレージへのアクセスを許可してください</string> <string name="noExternalStoragePermissionError">データをインポート/エクスポートするために外部ストレージへのアクセスを許可してください</string>
<string name="exporting">エクスポート中…</string> <string name="exporting">エクスポート中…</string>
<string name="importing">インポート中…</string> <string name="importing">インポート中…</string>
<string name="exportFailed">カードをエクスポートできませんでした</string> <string name="exportFailed">カードをエクスポートできませんでした: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">エクスポートに失敗しました</string> <string name="exportFailedTitle">エクスポートに失敗しました</string>
<string name="exportSuccessfulTitle">エクスポートしました</string> <string name="exportSuccessfulTitle">エクスポートしました</string>
<string name="sameAsCardId">カード番号に合わせる</string> <string name="sameAsCardId">カード番号に合わせる</string>
@@ -100,7 +100,7 @@
<string name="importVoucherVaultMessage">Voucher Vaultでエクスポートした <i>vouchervault.json</i>ファイルを選択してください。 <string name="importVoucherVaultMessage">Voucher Vaultでエクスポートした <i>vouchervault.json</i>ファイルを選択してください。
\nファイルがない場合、Voucher Vaultでファイルをエクスポートしてください。</string> \nファイルがない場合、Voucher Vaultでファイルをエクスポートしてください。</string>
<string name="importVoucherVault">Voucher Vaultからインポート</string> <string name="importVoucherVault">Voucher Vaultからインポート</string>
<string name="importFailed">カードをインポートできません</string> <string name="importFailed">カードをインポートできません: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">インポートに失敗しました</string> <string name="importFailedTitle">インポートに失敗しました</string>
<string name="importSuccessfulTitle">インポートしました</string> <string name="importSuccessfulTitle">インポートしました</string>
<string name="importExportHelp">データをバックアップすると、他のデバイスにカードを移すことができます。</string> <string name="importExportHelp">データをバックアップすると、他のデバイスにカードを移すことができます。</string>

View File

@@ -55,11 +55,11 @@
<string name="importOptionApplicationTitle">외부 앱 사용</string> <string name="importOptionApplicationTitle">외부 앱 사용</string>
<string name="importOptionFilesystemExplanation">파일 시스템에서 파일을 선택합니다.</string> <string name="importOptionFilesystemExplanation">파일 시스템에서 파일을 선택합니다.</string>
<string name="importOptionFilesystemTitle">파일 시스템에서 가져오기</string> <string name="importOptionFilesystemTitle">파일 시스템에서 가져오기</string>
<string name="exportFailed">카드를 내보낼 수 없음</string> <string name="exportFailed">카드를 내보낼 수 없음: <xliff:g>%s</xliff:g></string>
<string name="importOptionApplicationExplanation">다른 파일 관리자 또는 앱을 사용하여 파일을 엽니다.</string> <string name="importOptionApplicationExplanation">다른 파일 관리자 또는 앱을 사용하여 파일을 엽니다.</string>
<string name="exportFailedTitle">내보내기 실패</string> <string name="exportFailedTitle">내보내기 실패</string>
<string name="exportSuccessfulTitle">내보내기 완료</string> <string name="exportSuccessfulTitle">내보내기 완료</string>
<string name="importFailed">카드를 가져올 수 없음</string> <string name="importFailed">카드를 가져올 수 없음: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">가져오기 실패</string> <string name="importFailedTitle">가져오기 실패</string>
<string name="importSuccessfulTitle">가져오기 완료</string> <string name="importSuccessfulTitle">가져오기 완료</string>
<string name="noCardIdError">카드 ID를 입력하지 않음</string> <string name="noCardIdError">카드 ID를 입력하지 않음</string>

View File

@@ -22,7 +22,7 @@
<string name="cardShortcut">Kaart Bréck</string> <string name="cardShortcut">Kaart Bréck</string>
<string name="exportSuccessfulTitle">Exportéieren</string> <string name="exportSuccessfulTitle">Exportéieren</string>
<string name="exportFailedTitle">Export fehlgeschlagen</string> <string name="exportFailedTitle">Export fehlgeschlagen</string>
<string name="exportFailed">Kaarten konnten net exportéiert ginn</string> <string name="exportFailed">Kaarten konnten net exportéiert ginn: <xliff:g>%s</xliff:g></string>
<string name="importing">Importéieren…</string> <string name="importing">Importéieren…</string>
<string name="importOptionFilesystemTitle">Import aus dem Dateisystem</string> <string name="importOptionFilesystemTitle">Import aus dem Dateisystem</string>
<string name="importOptionFilesystemExplanation">Wielt eng bestëmmte Datei aus dem Dateisystem.</string> <string name="importOptionFilesystemExplanation">Wielt eng bestëmmte Datei aus dem Dateisystem.</string>
@@ -59,7 +59,7 @@
<string name="unsupportedBarcodeType">Dee barcode-Typ kann net ugewise ginn. Et kann zu enger spéiderer Versioun vun der App ënnerstëtzt ginn.</string> <string name="unsupportedBarcodeType">Dee barcode-Typ kann net ugewise ginn. Et kann zu enger spéiderer Versioun vun der App ënnerstëtzt ginn.</string>
<string name="yes">Jo</string> <string name="yes">Jo</string>
<string name="importFailedTitle">Import fehlgeschlagen</string> <string name="importFailedTitle">Import fehlgeschlagen</string>
<string name="importFailed">Kaarten konnten net anere sproochen ginn</string> <string name="importFailed">Kaarten konnten net anere sproochen ginn: <xliff:g>%s</xliff:g></string>
<string name="exporting">Ausführende…</string> <string name="exporting">Ausführende…</string>
<string name="exportOptionExplanation">D \' Donnéeë ginn op eng Plaz vun Hirer Wal geschriwwen.</string> <string name="exportOptionExplanation">D \' Donnéeë ginn op eng Plaz vun Hirer Wal geschriwwen.</string>
<string name="importOptionApplicationExplanation">Benotzen Se eng beliebige App oder Hire bevorzugten Dateimanager, fir eng Datei ze opmaachen.</string> <string name="importOptionApplicationExplanation">Benotzen Se eng beliebige App oder Hire bevorzugten Dateimanager, fir eng Datei ze opmaachen.</string>

View File

@@ -19,8 +19,8 @@
<string name="noCardIdError">Neįvestas kortelės ID</string> <string name="noCardIdError">Neįvestas kortelės ID</string>
<string name="importExport">Importuoti/Exportuoti</string> <string name="importExport">Importuoti/Exportuoti</string>
<string name="exportName">Exportuoti</string> <string name="exportName">Exportuoti</string>
<string name="importFailed">Nepavyko importuoti kortelių</string> <string name="importFailed">Nepavyko importuoti kortelių: <xliff:g>%s</xliff:g></string>
<string name="exportFailed">Nepavyko eksportuoti kortelių</string> <string name="exportFailed">Nepavyko eksportuoti kortelių: <xliff:g>%s</xliff:g></string>
<string name="importing">Importuoja…</string> <string name="importing">Importuoja…</string>
<string name="exporting">Eksportuoja…</string> <string name="exporting">Eksportuoja…</string>
<string name="noExternalStoragePermissionError">Pirmiausia suteikite išorinės saugyklos leidimą, kad galėtumėte importuoti arba eksportuoti korteles</string> <string name="noExternalStoragePermissionError">Pirmiausia suteikite išorinės saugyklos leidimą, kad galėtumėte importuoti arba eksportuoti korteles</string>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="action_search">Meklēšana</string> <string name="action_search">Meklēšana</string>
<string name="action_add">Pievienot</string> <string name="action_add">Pievienot</string>
<string name="noGiftCards">Noklikšķiniet uz pogas + plus, lai pievienotu karti, vai vispirms importējiet dažus no ⋮ izvēlnes.</string> <string name="noGiftCards">Noklikšķiniet uz pogas + plus, lai pievienotu karti, vai vispirms importējiet dažus no ⋮ izvēlnes.</string>
@@ -44,10 +44,10 @@
<string name="importExportHelp">Jūsu Karšu dublēšana ļauj pārvietot tās uz citu ierīci.</string> <string name="importExportHelp">Jūsu Karšu dublēšana ļauj pārvietot tās uz citu ierīci.</string>
<string name="importSuccessfulTitle">Importēts</string> <string name="importSuccessfulTitle">Importēts</string>
<string name="importFailedTitle">Neizdevās importēt</string> <string name="importFailedTitle">Neizdevās importēt</string>
<string name="importFailed">Nevarēja importēt kartes</string> <string name="importFailed">Nevarēja importēt kartes: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Eksports</string> <string name="exportSuccessfulTitle">Eksports</string>
<string name="exportFailedTitle">Eksports neizdevās</string> <string name="exportFailedTitle">Eksports neizdevās</string>
<string name="exportFailed">Nevarēja eksportēt kartes</string> <string name="exportFailed">Nevarēja eksportēt kartes: <xliff:g>%s</xliff:g></string>
<string name="importing">Imports…</string> <string name="importing">Imports…</string>
<string name="exporting">Eksports…</string> <string name="exporting">Eksports…</string>
<string name="noExternalStoragePermissionError">Piešķiriet ārējai atmiņai atļauju vispirms importēt vai eksportēt kartes</string> <string name="noExternalStoragePermissionError">Piešķiriet ārējai atmiņai atļauju vispirms importēt vai eksportēt kartes</string>

View File

@@ -29,10 +29,10 @@
<string name="importExportHelp">Sikkerhetskopiering av kort lar deg flytte dem til en annen enhet.</string> <string name="importExportHelp">Sikkerhetskopiering av kort lar deg flytte dem til en annen enhet.</string>
<string name="importSuccessfulTitle">Importert</string> <string name="importSuccessfulTitle">Importert</string>
<string name="importFailedTitle">Kunne ikke importere</string> <string name="importFailedTitle">Kunne ikke importere</string>
<string name="importFailed">Klarte ikke å importere kort</string> <string name="importFailed">Klarte ikke å importere kort: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Eksportert</string> <string name="exportSuccessfulTitle">Eksportert</string>
<string name="exportFailedTitle">Kunne ikke eksportere</string> <string name="exportFailedTitle">Kunne ikke eksportere</string>
<string name="exportFailed">Kunne ikke eksportere kort</string> <string name="exportFailed">Kunne ikke eksportere kort: <xliff:g>%s</xliff:g></string>
<string name="importing">Importerer…</string> <string name="importing">Importerer…</string>
<string name="exporting">Exporterer…</string> <string name="exporting">Exporterer…</string>
<string name="noExternalStoragePermissionError">Innvilg lagringstilgang til eksternlager for å importere eller eksportere kort først</string> <string name="noExternalStoragePermissionError">Innvilg lagringstilgang til eksternlager for å importere eller eksportere kort først</string>

View File

@@ -34,10 +34,10 @@
<string name="importExportHelp">Door je gegevens te back-uppen, kun je ze overzetten naar een ander apparaat.</string> <string name="importExportHelp">Door je gegevens te back-uppen, kun je ze overzetten naar een ander apparaat.</string>
<string name="importSuccessfulTitle">Importeren voltooid</string> <string name="importSuccessfulTitle">Importeren voltooid</string>
<string name="importFailedTitle">Importeren mislukt</string> <string name="importFailedTitle">Importeren mislukt</string>
<string name="importFailed">Het importeren is mislukt</string> <string name="importFailed">Het importeren is mislukt: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exporteren voltooid</string> <string name="exportSuccessfulTitle">Exporteren voltooid</string>
<string name="exportFailedTitle">Exporteren mislukt</string> <string name="exportFailedTitle">Exporteren mislukt</string>
<string name="exportFailed">Het exporteren is mislukt</string> <string name="exportFailed">Het exporteren is mislukt: <xliff:g>%s</xliff:g></string>
<string name="importing">Bezig met importeren…</string> <string name="importing">Bezig met importeren…</string>
<string name="exporting">Bezig met exporteren…</string> <string name="exporting">Bezig met exporteren…</string>
<string name="noExternalStoragePermissionError">Verleen het recht externe opslag om gegevens te kunnen im- of exporteren</string> <string name="noExternalStoragePermissionError">Verleen het recht externe opslag om gegevens te kunnen im- of exporteren</string>

View File

@@ -2,9 +2,9 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="exporting">Exportacion…</string> <string name="exporting">Exportacion…</string>
<string name="importing">Importacion…</string> <string name="importing">Importacion…</string>
<string name="exportFailed">Exportacion pas possibla</string> <string name="exportFailed">Exportacion pas possibla: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exportat</string> <string name="exportSuccessfulTitle">Exportat</string>
<string name="importFailed">Importacion de vòstras cartas impossibla</string> <string name="importFailed">Importacion de vòstras cartas impossibla: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">Fracàs de limportacion</string> <string name="importFailedTitle">Fracàs de limportacion</string>
<string name="importSuccessfulTitle">Importat</string> <string name="importSuccessfulTitle">Importat</string>
<string name="importExportHelp">Exportar vòstras cartas vos permet de las recuperar sus un autre aparelh.</string> <string name="importExportHelp">Exportar vòstras cartas vos permet de las recuperar sus un autre aparelh.</string>

View File

@@ -33,10 +33,10 @@
<string name="importExportHelp">Zarchiwizowane dane umożliwiają przeniesienie kart na inne urządzenie.</string> <string name="importExportHelp">Zarchiwizowane dane umożliwiają przeniesienie kart na inne urządzenie.</string>
<string name="importSuccessfulTitle">Zaimportowano</string> <string name="importSuccessfulTitle">Zaimportowano</string>
<string name="importFailedTitle">Import nie powiódł się</string> <string name="importFailedTitle">Import nie powiódł się</string>
<string name="importFailed">Nie udało się zaimportować</string> <string name="importFailed">Nie udało się zaimportować: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Wyeksportowano</string> <string name="exportSuccessfulTitle">Wyeksportowano</string>
<string name="exportFailedTitle">Eksport nie powiódł się</string> <string name="exportFailedTitle">Eksport nie powiódł się</string>
<string name="exportFailed">Nie udało się wyeksportować</string> <string name="exportFailed">Nie udało się wyeksportować: <xliff:g>%s</xliff:g></string>
<string name="importing">Importowanie…</string> <string name="importing">Importowanie…</string>
<string name="exporting">Eksportowanie…</string> <string name="exporting">Eksportowanie…</string>
<string name="noExternalStoragePermissionError">Najpierw przyznaj uprawnienia pamięci zewnętrznej do importowania lub eksportowania kart</string> <string name="noExternalStoragePermissionError">Najpierw przyznaj uprawnienia pamięci zewnętrznej do importowania lub eksportowania kart</string>

View File

@@ -78,10 +78,10 @@
<string name="importExportHelp">A cópia de segurança dos seus cartões permite-lhe movê-los para outro dispositivo.</string> <string name="importExportHelp">A cópia de segurança dos seus cartões permite-lhe movê-los para outro dispositivo.</string>
<string name="importSuccessfulTitle">Importado</string> <string name="importSuccessfulTitle">Importado</string>
<string name="importFailedTitle">A importação falhou</string> <string name="importFailedTitle">A importação falhou</string>
<string name="importFailed">Não foi possível importar os cartões</string> <string name="importFailed">Não foi possível importar os cartões: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exportado</string> <string name="exportSuccessfulTitle">Exportado</string>
<string name="exportFailedTitle">A exportação falhou</string> <string name="exportFailedTitle">A exportação falhou</string>
<string name="exportFailed">Não foi possível exportar os cartões</string> <string name="exportFailed">Não foi possível exportar os cartões: <xliff:g>%s</xliff:g></string>
<string name="importing">A importar…</string> <string name="importing">A importar…</string>
<string name="exporting">A exportar…</string> <string name="exporting">A exportar…</string>
<string name="settings_sky_blue_theme">Azul céu</string> <string name="settings_sky_blue_theme">Azul céu</string>

View File

@@ -35,9 +35,9 @@
<string name="exportName">Exportați</string> <string name="exportName">Exportați</string>
<string name="importSuccessfulTitle">Importat</string> <string name="importSuccessfulTitle">Importat</string>
<string name="importFailedTitle">Importul a eșuat</string> <string name="importFailedTitle">Importul a eșuat</string>
<string name="importFailed">Nu s-a putut importa carduri</string> <string name="importFailed">Nu s-a putut importa carduri: <xliff:g>%s</xliff:g></string>
<string name="noCardIdError">Nu s-a introdus niciun ID de card</string> <string name="noCardIdError">Nu s-a introdus niciun ID de card</string>
<string name="exportFailed">Nu s-a putut exporta carduri</string> <string name="exportFailed">Nu s-a putut exporta carduri: <xliff:g>%s</xliff:g></string>
<string name="importing">Importul…</string> <string name="importing">Importul…</string>
<string name="exporting">Exportul…</string> <string name="exporting">Exportul…</string>
<string name="noExternalStoragePermissionError">Acordați mai întâi permisiunea de stocare externă pentru a importa sau exporta carduri</string> <string name="noExternalStoragePermissionError">Acordați mai întâi permisiunea de stocare externă pentru a importa sau exporta carduri</string>

View File

@@ -34,10 +34,10 @@
<string name="importExportHelp">Резервное копирование данных позволяет перенести их на другое устройство.</string> <string name="importExportHelp">Резервное копирование данных позволяет перенести их на другое устройство.</string>
<string name="importSuccessfulTitle">Импортировано</string> <string name="importSuccessfulTitle">Импортировано</string>
<string name="importFailedTitle">Импорт не выполнен</string> <string name="importFailedTitle">Импорт не выполнен</string>
<string name="importFailed">Невозможно выполнить импорт</string> <string name="importFailed">Невозможно импортировать карты: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Экспортировано</string> <string name="exportSuccessfulTitle">Экспортировано</string>
<string name="exportFailedTitle">Экспорт не выполнен</string> <string name="exportFailedTitle">Экспорт не выполнен</string>
<string name="exportFailed">Невозможно выполнить экспорт</string> <string name="exportFailed">Невозможно экспортировать карты: <xliff:g>%s</xliff:g></string>
<string name="importing">Импорт…</string> <string name="importing">Импорт…</string>
<string name="exporting">Экспорт…</string> <string name="exporting">Экспорт…</string>
<string name="noExternalStoragePermissionError">Импорт или экспорт данных невозможен без разрешения на доступ к хранилищу</string> <string name="noExternalStoragePermissionError">Импорт или экспорт данных невозможен без разрешения на доступ к хранилищу</string>
@@ -230,4 +230,4 @@
<string name="action_show_details">Показать детали</string> <string name="action_show_details">Показать детали</string>
<string name="translate_platform">на Weblate</string> <string name="translate_platform">на Weblate</string>
<string name="shortcutSelectCard">Выбор карты</string> <string name="shortcutSelectCard">Выбор карты</string>
</resources> </resources>

View File

@@ -28,10 +28,10 @@
<string name="importExportHelp">Zálohovanie dát Vám umožní presunúť Vaše uložené karty na iné zariadenie.</string> <string name="importExportHelp">Zálohovanie dát Vám umožní presunúť Vaše uložené karty na iné zariadenie.</string>
<string name="importSuccessfulTitle">Import bol úspešný</string> <string name="importSuccessfulTitle">Import bol úspešný</string>
<string name="importFailedTitle">Import zlyhal</string> <string name="importFailedTitle">Import zlyhal</string>
<string name="importFailed">Zlyhal import</string> <string name="importFailed">Zlyhal import: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Export bol úspešný</string> <string name="exportSuccessfulTitle">Export bol úspešný</string>
<string name="exportFailedTitle">Export zlyhal</string> <string name="exportFailedTitle">Export zlyhal</string>
<string name="exportFailed">Zlyhal export</string> <string name="exportFailed">Zlyhal export: <xliff:g>%s</xliff:g></string>
<string name="importing">Importujem…</string> <string name="importing">Importujem…</string>
<string name="exporting">Exportujem…</string> <string name="exporting">Exportujem…</string>
<string name="noExternalStoragePermissionError">Nie je možné importovať a exportovať karty bez prístupu k externému úložisku</string> <string name="noExternalStoragePermissionError">Nie je možné importovať a exportovať karty bez prístupu k externému úložisku</string>

View File

@@ -28,10 +28,10 @@
<string name="importExportHelp">Varnostna kopija omogoča varen prenos kartic na druge naprave.</string> <string name="importExportHelp">Varnostna kopija omogoča varen prenos kartic na druge naprave.</string>
<string name="importSuccessfulTitle">Uvoz je bil uspešen</string> <string name="importSuccessfulTitle">Uvoz je bil uspešen</string>
<string name="importFailedTitle">Uvoz ni uspel</string> <string name="importFailedTitle">Uvoz ni uspel</string>
<string name="importFailed">Napaka pri uvozu</string> <string name="importFailed">Napaka pri uvozu: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Izvoz je uspel</string> <string name="exportSuccessfulTitle">Izvoz je uspel</string>
<string name="exportFailedTitle">Izvoz ni uspel</string> <string name="exportFailedTitle">Izvoz ni uspel</string>
<string name="exportFailed">Napaka pri izvozu</string> <string name="exportFailed">Napaka pri izvozu: <xliff:g>%s</xliff:g></string>
<string name="importing">Uvažanje…</string> <string name="importing">Uvažanje…</string>
<string name="exporting">Izvažanje…</string> <string name="exporting">Izvažanje…</string>
<string name="noExternalStoragePermissionError">Izvažanje in uvažanje je nemogoče brez omogočenega dostopa do zunanje shrambe</string> <string name="noExternalStoragePermissionError">Izvažanje in uvažanje je nemogoče brez omogočenega dostopa do zunanje shrambe</string>

View File

@@ -99,8 +99,8 @@
<string name="importOptionFilesystemTitle">Importera från filsystem</string> <string name="importOptionFilesystemTitle">Importera från filsystem</string>
<string name="exporting">Exporterar…</string> <string name="exporting">Exporterar…</string>
<string name="importing">Importerar…</string> <string name="importing">Importerar…</string>
<string name="exportFailed">Kunde inte genomföra export</string> <string name="exportFailed">Kunde inte exportera kort: <xliff:g>%s</xliff:g></string>
<string name="importFailed">Kunde inte genomföra import</string> <string name="importFailed">Kunde inte importera kort: <xliff:g>%s</xliff:g></string>
<string name="importSuccessfulTitle">Importen lyckades</string> <string name="importSuccessfulTitle">Importen lyckades</string>
<string name="importFailedTitle">Importen misslyckades</string> <string name="importFailedTitle">Importen misslyckades</string>
<string name="importExportHelp">Säkerhetskopiering av din data möjliggör förflyttning av den till en annan enhet.</string> <string name="importExportHelp">Säkerhetskopiering av din data möjliggör förflyttning av den till en annan enhet.</string>
@@ -222,4 +222,4 @@
<string name="noGiftCardsGroup">Skapa några kort och placera dem sedan i den här gruppen.</string> <string name="noGiftCardsGroup">Skapa några kort och placera dem sedan i den här gruppen.</string>
<string name="translate_platform">på Weblate</string> <string name="translate_platform">på Weblate</string>
<string name="shortcutSelectCard">Välj ett kort</string> <string name="shortcutSelectCard">Välj ett kort</string>
</resources> </resources>

View File

@@ -134,10 +134,10 @@
<string name="noExternalStoragePermissionError">Verileri içeri veya dışarı aktarmak için harici depolama izni verin</string> <string name="noExternalStoragePermissionError">Verileri içeri veya dışarı aktarmak için harici depolama izni verin</string>
<string name="exporting">Dışa aktarılıyor…</string> <string name="exporting">Dışa aktarılıyor…</string>
<string name="importing">İçe aktarılıyor…</string> <string name="importing">İçe aktarılıyor…</string>
<string name="exportFailed">Dışa aktarma gerçekleştirilemedi</string> <string name="exportFailed">Kartlar dışa aktarılamadı: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">Dışa aktarılamadı</string> <string name="exportFailedTitle">Dışa aktarılamadı</string>
<string name="exportSuccessfulTitle">Dışa aktarıldı</string> <string name="exportSuccessfulTitle">Dışa aktarıldı</string>
<string name="importFailed">İçe aktarma gerçekleştirilemedi</string> <string name="importFailed">Kartlar içe aktarılamadı: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">İçe aktarılamadı</string> <string name="importFailedTitle">İçe aktarılamadı</string>
<string name="importSuccessfulTitle">İçe aktarıldı</string> <string name="importSuccessfulTitle">İçe aktarıldı</string>
<string name="importExportHelp">Verilerinizi yedeklemek, onları başka bir aygıta taşımanıza olanak tanır.</string> <string name="importExportHelp">Verilerinizi yedeklemek, onları başka bir aygıta taşımanıza olanak tanır.</string>
@@ -222,4 +222,4 @@
<string name="action_hide_details">Ayrıntıları gizle</string> <string name="action_hide_details">Ayrıntıları gizle</string>
<string name="translate_platform">Weblate\'de</string> <string name="translate_platform">Weblate\'de</string>
<string name="shortcutSelectCard">Kart seç</string> <string name="shortcutSelectCard">Kart seç</string>
</resources> </resources>

View File

@@ -111,10 +111,10 @@
<string name="noExternalStoragePermissionError">Надайте дозвіл на доступ до пам\'яті пристрою для імпорту/експорту даних</string> <string name="noExternalStoragePermissionError">Надайте дозвіл на доступ до пам\'яті пристрою для імпорту/експорту даних</string>
<string name="exporting">Експортуємо…</string> <string name="exporting">Експортуємо…</string>
<string name="importing">Імпортуємо…</string> <string name="importing">Імпортуємо…</string>
<string name="exportFailed">Неможливо здійснити експорт</string> <string name="exportFailed">Неможливо експортувати картки: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">Помилка експорту</string> <string name="exportFailedTitle">Помилка експорту</string>
<string name="exportSuccessfulTitle">Експортовано</string> <string name="exportSuccessfulTitle">Експортовано</string>
<string name="importFailed">Неможливо здійснити імпорт</string> <string name="importFailed">Неможливо імпортувати картки: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">Помилка імпорту</string> <string name="importFailedTitle">Помилка імпорту</string>
<string name="importSuccessfulTitle">Імпортовано</string> <string name="importSuccessfulTitle">Імпортовано</string>
<string name="importExportHelp">Резервна копія даних дозволяє перемістити їх до іншого пристрою.</string> <string name="importExportHelp">Резервна копія даних дозволяє перемістити їх до іншого пристрою.</string>
@@ -229,4 +229,4 @@
<string name="action_show_details">Показати деталі</string> <string name="action_show_details">Показати деталі</string>
<string name="action_hide_details">Сховати деталі</string> <string name="action_hide_details">Сховати деталі</string>
<string name="translate_platform">на Weblate</string> <string name="translate_platform">на Weblate</string>
</resources> </resources>

View File

@@ -99,10 +99,10 @@
<string name="noExternalStoragePermissionError">在导入导出前需要获得外部储存权限</string> <string name="noExternalStoragePermissionError">在导入导出前需要获得外部储存权限</string>
<string name="exporting">导出中…</string> <string name="exporting">导出中…</string>
<string name="importing">导入中…</string> <string name="importing">导入中…</string>
<string name="exportFailed">无法导出卡片</string> <string name="exportFailed">无法导出卡片: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">导出失败</string> <string name="exportFailedTitle">导出失败</string>
<string name="exportSuccessfulTitle">导出成功</string> <string name="exportSuccessfulTitle">导出成功</string>
<string name="importFailed">无法导入卡片</string> <string name="importFailed">无法导入卡片: <xliff:g>%s</xliff:g></string>
<string name="importFailedTitle">导入失败</string> <string name="importFailedTitle">导入失败</string>
<string name="importSuccessfulTitle">导入成功</string> <string name="importSuccessfulTitle">导入成功</string>
<string name="importExportHelp">备份数据允许你将其移动到另一个设备上。</string> <string name="importExportHelp">备份数据允许你将其移动到另一个设备上。</string>

View File

@@ -56,7 +56,7 @@
<string name="expiryDate">逾期日期</string> <string name="expiryDate">逾期日期</string>
<string name="expiryStateSentence">逾期於:<xliff:g>%s</xliff:g></string> <string name="expiryStateSentence">逾期於:<xliff:g>%s</xliff:g></string>
<string name="expiryStateSentenceExpired">已逾期:<xliff:g>%s</xliff:g></string> <string name="expiryStateSentenceExpired">已逾期:<xliff:g>%s</xliff:g></string>
<string name="exportFailed">無法匯出卡片</string> <string name="exportFailed">無法匯出卡片: <xliff:g>%s</xliff:g></string>
<string name="exportFailedTitle">匯出失敗</string> <string name="exportFailedTitle">匯出失敗</string>
<string name="exporting">匯出中…</string> <string name="exporting">匯出中…</string>
<string name="exportName">匯出</string> <string name="exportName">匯出</string>
@@ -73,7 +73,7 @@
<string name="help_translate_this_app">幫助翻譯本程式</string> <string name="help_translate_this_app">幫助翻譯本程式</string>
<string name="importExport">匯入/匯出</string> <string name="importExport">匯入/匯出</string>
<string name="importFailedTitle">匯入失敗</string> <string name="importFailedTitle">匯入失敗</string>
<string name="importFailed">無法匯入卡片</string> <string name="importFailed">無法匯入卡片: <xliff:g>%s</xliff:g></string>
<string name="importing">匯入中…</string> <string name="importing">匯入中…</string>
<string name="importSuccessfulTitle">已匯入</string> <string name="importSuccessfulTitle">已匯入</string>
<string name="intent_import_card_from_url_share_multiple_text">我想要分享些卡片給你</string> <string name="intent_import_card_from_url_share_multiple_text">我想要分享些卡片給你</string>

View File

@@ -61,10 +61,10 @@
<string name="importExportHelp">Backing up your data allows moving it to another device.</string> <string name="importExportHelp">Backing up your data allows moving it to another device.</string>
<string name="importSuccessfulTitle">Imported</string> <string name="importSuccessfulTitle">Imported</string>
<string name="importFailedTitle">Import failed</string> <string name="importFailedTitle">Import failed</string>
<string name="importFailed">Could not perform import</string> <string name="importFailed">Could not import cards: <xliff:g>%s</xliff:g></string>
<string name="exportSuccessfulTitle">Exported</string> <string name="exportSuccessfulTitle">Exported</string>
<string name="exportFailedTitle">Export failed</string> <string name="exportFailedTitle">Export failed</string>
<string name="exportFailed">Could not perform export</string> <string name="exportFailed">Could not export cards: <xliff:g>%s</xliff:g></string>
<string name="importing">Importing…</string> <string name="importing">Importing…</string>
<string name="exporting">Exporting…</string> <string name="exporting">Exporting…</string>
<string name="noExternalStoragePermissionError">Grant external storage permission to import or export data</string> <string name="noExternalStoragePermissionError">Grant external storage permission to import or export data</string>
@@ -257,6 +257,9 @@
<string name="report_error">Report Error</string> <string name="report_error">Report Error</string>
<string name="action_show_details">Show details</string> <string name="action_show_details">Show details</string>
<string name="action_hide_details">Hide details</string> <string name="action_hide_details">Hide details</string>
<string name="unknown_failure">Unknown failure</string>
<string name="incorrect_password">Incorrect password</string>
<string name="importExportDescription">Notifications about importing or exporting card data</string>
<string name="translate_platform">on Weblate</string> <string name="translate_platform">on Weblate</string>
<string name="shortcutSelectCard">Select a card</string> <string name="shortcutSelectCard">Select a card</string>
</resources> </resources>