diff --git a/app/build.gradle b/app/build.gradle index 0aa2c8f982..3787f8eff2 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -7,8 +7,8 @@ android { applicationId "com.m2049r.xmrwallet" minSdkVersion 21 targetSdkVersion 25 - versionCode 90 - versionName "1.5.0 'CrAzYpass'" + versionCode 91 + versionName "1.5.1 'CrAzY Nacho'" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" externalNativeBuild { cmake { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 5ff4f1c03f..4bf5b3a696 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,6 +7,7 @@ + nodeAdapter; - private View llXmrToEnabled; - private View ibXmrToInfoClose; - private Listener activityCallback; // Container Activity must implement this interface @@ -173,23 +178,8 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, etDummy = (EditText) view.findViewById(R.id.etDummy); - llXmrToEnabled = view.findViewById(R.id.llXmrToEnabled); - llXmrToEnabled.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - HelpFragment.display(getChildFragmentManager(), R.string.help_xmrto); - - } - }); - ibXmrToInfoClose = view.findViewById(R.id.ibXmrToInfoClose); - ibXmrToInfoClose.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - llXmrToEnabled.setVisibility(View.GONE); - showXmrtoEnabled = false; - saveXmrToPrefs(); - } - }); + ViewGroup llNotice = (ViewGroup) view.findViewById(R.id.llNotice); + Notice.showAll(llNotice,".*_login"); etDaemonAddress = (DropDownEditText) view.findViewById(R.id.etDaemonAddress); nodeAdapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_dropdown_item_1line); @@ -237,9 +227,6 @@ public void onItemClick(AdapterView parent, View arg1, int pos, long id) { }); loadPrefs(); - if (!showXmrtoEnabled) { - llXmrToEnabled.setVisibility(View.GONE); - } return view; } @@ -326,6 +313,17 @@ public void loadList() { ivGunther.setImageDrawable(null); } } + + // remove information of non-existent wallet + Set removedWallets = getActivity() + .getSharedPreferences(KeyStoreHelper.SecurityConstants.WALLET_PASS_PREFS_NAME, Context.MODE_PRIVATE) + .getAll().keySet(); + for (WalletManager.WalletInfo s : walletList) { + removedWallets.remove(s.name); + } + for (String name : removedWallets) { + KeyStoreHelper.removeWalletUserPass(getActivity(), name); + } } private void showInfo(@NonNull String name) { @@ -379,7 +377,6 @@ public void setNet(boolean testnetChecked, boolean save) { private static final String PREF_DAEMON_TESTNET = "daemon_testnet"; private static final String PREF_DAEMON_MAINNET = "daemon_mainnet"; - private static final String PREF_SHOW_XMRTO_ENABLED = "info_xmrto_enabled_login"; private static final String PREF_DAEMONLIST_MAINNET = "node.moneroworld.com:18089;node.xmrbackb.one;node.xmr.be"; @@ -390,23 +387,12 @@ public void setNet(boolean testnetChecked, boolean save) { private NodeList daemonTestNet; private NodeList daemonMainNet; - boolean showXmrtoEnabled = true; - void loadPrefs() { SharedPreferences sharedPref = activityCallback.getPrefs(); daemonMainNet = new NodeList(sharedPref.getString(PREF_DAEMON_MAINNET, PREF_DAEMONLIST_MAINNET)); daemonTestNet = new NodeList(sharedPref.getString(PREF_DAEMON_TESTNET, PREF_DAEMONLIST_TESTNET)); setNet(testnetCheckMenu, false); - - showXmrtoEnabled = sharedPref.getBoolean(PREF_SHOW_XMRTO_ENABLED, true); - } - - void saveXmrToPrefs() { - SharedPreferences sharedPref = activityCallback.getPrefs(); - SharedPreferences.Editor editor = sharedPref.edit(); - editor.putBoolean(PREF_SHOW_XMRTO_ENABLED, showXmrtoEnabled); - editor.apply(); } void savePrefs() { @@ -428,7 +414,6 @@ void savePrefs(boolean usePreviousTestnetState) { SharedPreferences.Editor editor = sharedPref.edit(); editor.putString(PREF_DAEMON_MAINNET, daemonMainNet.toString()); editor.putString(PREF_DAEMON_TESTNET, daemonTestNet.toString()); - editor.putBoolean(PREF_SHOW_XMRTO_ENABLED, showXmrtoEnabled); editor.apply(); } diff --git a/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java b/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java index 91222f9faf..2934baae8f 100644 --- a/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java +++ b/app/src/main/java/com/m2049r/xmrwallet/ReceiveFragment.java @@ -335,6 +335,7 @@ private void generateQr() { } public Bitmap generate(String text, int width, int height) { + if ((width <= 0) || (height <= 0)) return null; Map hints = new HashMap<>(); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); diff --git a/app/src/main/java/com/m2049r/xmrwallet/WalletActivity.java b/app/src/main/java/com/m2049r/xmrwallet/WalletActivity.java index 4a2c8d71da..abfd24f598 100644 --- a/app/src/main/java/com/m2049r/xmrwallet/WalletActivity.java +++ b/app/src/main/java/com/m2049r/xmrwallet/WalletActivity.java @@ -49,8 +49,6 @@ import com.m2049r.xmrwallet.util.UserNotes; import com.m2049r.xmrwallet.widget.Toolbar; -import java.io.File; - import timber.log.Timber; public class WalletActivity extends SecureActivity implements WalletFragment.Listener, @@ -62,8 +60,10 @@ public class WalletActivity extends SecureActivity implements WalletFragment.Lis public static final String REQUEST_ID = "id"; public static final String REQUEST_PW = "pw"; + public static final String REQUEST_FINGERPRINT_USED = "fingerprint"; private Toolbar toolbar; + private boolean needVerifyIdentity; @Override public void setToolbarButton(int type) { @@ -120,6 +120,7 @@ private void startWalletService() { acquireWakeLock(); String walletId = extras.getString(REQUEST_ID); String walletPassword = extras.getString(REQUEST_PW); + needVerifyIdentity = extras.getBoolean(REQUEST_FINGERPRINT_USED); connectWalletService(walletId, walletPassword); } else { finish(); @@ -397,7 +398,17 @@ public long getDaemonHeight() { @Override public void onSendRequest() { - replaceFragment(new SendFragment(), null, null); + if (needVerifyIdentity) { + Helper.promptPassword(WalletActivity.this, getWallet().getName(), true, new Helper.PasswordAction() { + @Override + public void action(String walletName, String password, boolean fingerprintUsed) { + replaceFragment(new SendFragment(), null, null); + needVerifyIdentity = false; + } + }); + } else { + replaceFragment(new SendFragment(), null, null); + } } @Override @@ -697,10 +708,22 @@ private void onWalletDetails() { public void onClick(DialogInterface dialog, int which) { switch (which) { case DialogInterface.BUTTON_POSITIVE: - Bundle extras = new Bundle(); + final Bundle extras = new Bundle(); extras.putString("type", GenerateReviewFragment.VIEW_TYPE_WALLET); extras.putString("password", getIntent().getExtras().getString(REQUEST_PW)); - replaceFragment(new GenerateReviewFragment(), null, extras); + + if (needVerifyIdentity) { + Helper.promptPassword(WalletActivity.this, getWallet().getName(), true, new Helper.PasswordAction() { + @Override + public void action(String walletName, String password, boolean fingerprintUsed) { + replaceFragment(new GenerateReviewFragment(), null, extras); + needVerifyIdentity = false; + } + }); + } else { + replaceFragment(new GenerateReviewFragment(), null, extras); + } + break; case DialogInterface.BUTTON_NEGATIVE: // do nothing diff --git a/app/src/main/java/com/m2049r/xmrwallet/fragment/send/SendFragment.java b/app/src/main/java/com/m2049r/xmrwallet/fragment/send/SendFragment.java index bdafc04310..05dcdc8f5b 100644 --- a/app/src/main/java/com/m2049r/xmrwallet/fragment/send/SendFragment.java +++ b/app/src/main/java/com/m2049r/xmrwallet/fragment/send/SendFragment.java @@ -47,6 +47,7 @@ import com.m2049r.xmrwallet.model.PendingTransaction; import com.m2049r.xmrwallet.util.Helper; import com.m2049r.xmrwallet.util.NodeList; +import com.m2049r.xmrwallet.util.Notice; import com.m2049r.xmrwallet.util.UserNotes; import com.m2049r.xmrwallet.widget.DotBar; import com.m2049r.xmrwallet.widget.Toolbar; @@ -119,27 +120,8 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, arrowPrev = getResources().getDrawable(R.drawable.ic_navigate_prev_white_24dp); arrowNext = getResources().getDrawable(R.drawable.ic_navigate_next_white_24dp); - llXmrToEnabled = view.findViewById(R.id.llXmrToEnabled); - llXmrToEnabled.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - HelpFragment.display(getChildFragmentManager(), R.string.help_xmrto); - - } - }); - ibXmrToInfoClose = view.findViewById(R.id.ibXmrToInfoClose); - ibXmrToInfoClose.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - llXmrToEnabled.setVisibility(View.GONE); - showXmrtoEnabled = false; - saveXmrToPrefs(); - } - }); - loadPrefs(); - if (!showXmrtoEnabled) { - llXmrToEnabled.setVisibility(View.GONE); - } + ViewGroup llNotice = (ViewGroup) view.findViewById(R.id.llNotice); + Notice.showAll(llNotice,".*_send"); spendViewPager = (SpendViewPager) view.findViewById(R.id.pager); pagerAdapter = new SpendPagerAdapter(getChildFragmentManager()); diff --git a/app/src/main/java/com/m2049r/xmrwallet/util/FingerprintHelper.java b/app/src/main/java/com/m2049r/xmrwallet/util/FingerprintHelper.java new file mode 100644 index 0000000000..46de0364ec --- /dev/null +++ b/app/src/main/java/com/m2049r/xmrwallet/util/FingerprintHelper.java @@ -0,0 +1,40 @@ +package com.m2049r.xmrwallet.util; + +import android.app.KeyguardManager; +import android.content.Context; +import android.support.v4.hardware.fingerprint.FingerprintManagerCompat; +import android.support.v4.os.CancellationSignal; + +import java.security.KeyStore; +import java.security.KeyStoreException; + +public class FingerprintHelper { + + public static boolean isDeviceSupported(Context context) { + FingerprintManagerCompat fingerprintManager = FingerprintManagerCompat.from(context); + KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE); + + return keyguardManager != null && + keyguardManager.isKeyguardSecure() && + fingerprintManager.isHardwareDetected() && + fingerprintManager.hasEnrolledFingerprints(); + } + + public static boolean isFingerprintAuthAllowed(String wallet) throws KeyStoreException { + KeyStore keyStore = KeyStore.getInstance(KeyStoreHelper.SecurityConstants.KEYSTORE_PROVIDER_ANDROID_KEYSTORE); + try { + keyStore.load(null); + } catch (Exception ex) { + throw new IllegalStateException("Could not load KeyStore", ex); + } + + return keyStore.containsAlias(KeyStoreHelper.SecurityConstants.WALLET_PASS_KEY_PREFIX + wallet); + } + + public static void authenticate(Context context, CancellationSignal cancelSignal, + FingerprintManagerCompat.AuthenticationCallback callback) { + FingerprintManagerCompat manager = FingerprintManagerCompat.from(context); + manager.authenticate(null, 0, cancelSignal, callback, null); + } + +} diff --git a/app/src/main/java/com/m2049r/xmrwallet/util/Helper.java b/app/src/main/java/com/m2049r/xmrwallet/util/Helper.java index b50fa1e4a2..510134d664 100644 --- a/app/src/main/java/com/m2049r/xmrwallet/util/Helper.java +++ b/app/src/main/java/com/m2049r/xmrwallet/util/Helper.java @@ -18,10 +18,12 @@ import android.Manifest; import android.app.Activity; +import android.app.AlertDialog; import android.app.Dialog; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; +import android.content.DialogInterface; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; @@ -30,13 +32,24 @@ import android.graphics.drawable.Drawable; import android.graphics.drawable.VectorDrawable; import android.os.Environment; +import android.support.design.widget.TextInputLayout; import android.support.v4.content.ContextCompat; +import android.support.v4.hardware.fingerprint.FingerprintManagerCompat; +import android.support.v4.os.CancellationSignal; import android.system.ErrnoException; import android.system.Os; +import android.text.Editable; +import android.text.TextWatcher; +import android.view.KeyEvent; +import android.view.LayoutInflater; +import android.view.View; import android.view.WindowManager; import android.view.animation.Animation; import android.view.animation.AnimationUtils; +import android.view.inputmethod.EditorInfo; import android.view.inputmethod.InputMethodManager; +import android.widget.Button; +import android.widget.TextView; import com.m2049r.xmrwallet.BuildConfig; import com.m2049r.xmrwallet.R; @@ -51,6 +64,7 @@ import java.net.MalformedURLException; import java.net.SocketTimeoutException; import java.net.URL; +import java.security.KeyStoreException; import java.util.Locale; import javax.net.ssl.HttpsURLConnection; @@ -340,4 +354,150 @@ static public String getWalletPassword(Context context, String walletName, Strin return null; } + + static AlertDialog openDialog = null; // for preventing opening of multiple dialogs + + static public void promptPassword(final Context context, final String wallet, boolean fingerprintDisabled, final PasswordAction action) { + if (openDialog != null) return; // we are already asking for password + LayoutInflater li = LayoutInflater.from(context); + final View promptsView = li.inflate(R.layout.prompt_password, null); + + AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context); + alertDialogBuilder.setView(promptsView); + + final TextInputLayout etPassword = (TextInputLayout) promptsView.findViewById(R.id.etPassword); + etPassword.setHint(context.getString(R.string.prompt_password, wallet)); + + boolean fingerprintAuthCheck; + try { + fingerprintAuthCheck = FingerprintHelper.isFingerprintAuthAllowed(wallet); + } catch (KeyStoreException ex) { + fingerprintAuthCheck = false; + } + + final boolean fingerprintAuthAllowed = !fingerprintDisabled && fingerprintAuthCheck; + final CancellationSignal cancelSignal = new CancellationSignal(); + + if (fingerprintAuthAllowed) { + promptsView.findViewById(R.id.txtFingerprintAuth).setVisibility(View.VISIBLE); + } + + etPassword.getEditText().addTextChangedListener(new TextWatcher() { + + @Override + public void afterTextChanged(Editable s) { + if (etPassword.getError() != null) { + etPassword.setError(null); + } + } + + @Override + public void beforeTextChanged(CharSequence s, int start, + int count, int after) { + } + + @Override + public void onTextChanged(CharSequence s, int start, + int before, int count) { + } + }); + + // set dialog message + alertDialogBuilder + .setCancelable(false) + .setPositiveButton(context.getString(R.string.label_ok), null) + .setNegativeButton(context.getString(R.string.label_cancel), + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + Helper.hideKeyboardAlways((Activity) context); + cancelSignal.cancel(); + dialog.cancel(); + openDialog = null; + } + }); + openDialog = alertDialogBuilder.create(); + + final FingerprintManagerCompat.AuthenticationCallback fingerprintAuthCallback = new FingerprintManagerCompat.AuthenticationCallback() { + @Override + public void onAuthenticationError(int errMsgId, CharSequence errString) { + ((TextView) promptsView.findViewById(R.id.txtFingerprintAuth)).setText(errString); + } + + @Override + public void onAuthenticationSucceeded(FingerprintManagerCompat.AuthenticationResult result) { + String userPass = KeyStoreHelper.loadWalletUserPass(context, wallet); + if (Helper.processPasswordEntry(context, wallet, userPass, true, action)) { + Helper.hideKeyboardAlways((Activity) context); + openDialog.dismiss(); + openDialog = null; + } else { + etPassword.setError(context.getString(R.string.bad_password)); + } + } + + @Override + public void onAuthenticationFailed() { + ((TextView) promptsView.findViewById(R.id.txtFingerprintAuth)) + .setText(context.getString(R.string.bad_fingerprint)); + } + }; + + openDialog.setOnShowListener(new DialogInterface.OnShowListener() { + @Override + public void onShow(DialogInterface dialog) { + if (fingerprintAuthAllowed) { + FingerprintHelper.authenticate(context, cancelSignal, fingerprintAuthCallback); + } + Button button = ((AlertDialog) dialog).getButton(AlertDialog.BUTTON_POSITIVE); + button.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + String pass = etPassword.getEditText().getText().toString(); + if (processPasswordEntry(context, wallet, pass, false, action)) { + Helper.hideKeyboardAlways((Activity) context); + openDialog.dismiss(); + openDialog = null; + } else { + etPassword.setError(context.getString(R.string.bad_password)); + } + } + }); + } + }); + + // accept keyboard "ok" + etPassword.getEditText().setOnEditorActionListener(new TextView.OnEditorActionListener() { + public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { + if ((event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) || (actionId == EditorInfo.IME_ACTION_DONE)) { + String pass = etPassword.getEditText().getText().toString(); + if (processPasswordEntry(context, wallet, pass, false, action)) { + Helper.hideKeyboardAlways((Activity) context); + openDialog.dismiss(); + openDialog = null; + } else { + etPassword.setError(context.getString(R.string.bad_password)); + } + return true; + } + return false; + } + }); + + Helper.showKeyboard(openDialog); + openDialog.show(); + } + + public interface PasswordAction { + void action(String walletName, String password, boolean fingerprintUsed); + } + + static private boolean processPasswordEntry(Context context, String walletName, String pass, boolean fingerprintUsed, PasswordAction action) { + String walletPassword = Helper.getWalletPassword(context, walletName, pass); + if (walletPassword != null) { + action.action(walletName, walletPassword, fingerprintUsed); + return true; + } else { + return false; + } + } } diff --git a/app/src/main/java/com/m2049r/xmrwallet/util/KeyStoreHelper.java b/app/src/main/java/com/m2049r/xmrwallet/util/KeyStoreHelper.java index ea49cd54df..281fd257ed 100644 --- a/app/src/main/java/com/m2049r/xmrwallet/util/KeyStoreHelper.java +++ b/app/src/main/java/com/m2049r/xmrwallet/util/KeyStoreHelper.java @@ -23,6 +23,7 @@ import android.security.KeyPairGeneratorSpec; import android.security.keystore.KeyGenParameterSpec; import android.security.keystore.KeyProperties; +import android.util.Base64; import java.math.BigInteger; import java.nio.charset.StandardCharsets; @@ -35,11 +36,13 @@ import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; import java.security.PrivateKey; +import java.security.PublicKey; import java.security.Signature; import java.security.SignatureException; import java.util.Calendar; import java.util.GregorianCalendar; +import javax.crypto.Cipher; import javax.security.auth.x500.X500Principal; import timber.log.Timber; @@ -71,6 +74,41 @@ public static String getCrazyPass(Context context, String password, String langu return CrazyPassEncoder.encode(cnSlowHash(sig)); } + public static void saveWalletUserPass(Context context, String wallet, String password) { + String walletKeyAlias = SecurityConstants.WALLET_PASS_KEY_PREFIX + wallet; + byte[] data = password.getBytes(StandardCharsets.UTF_8); + try { + KeyStoreHelper.createKeys(context, walletKeyAlias); + byte[] encrypted = KeyStoreHelper.encrypt(walletKeyAlias, data); + context.getSharedPreferences(SecurityConstants.WALLET_PASS_PREFS_NAME, Context.MODE_PRIVATE).edit() + .putString(wallet, Base64.encodeToString(encrypted, Base64.DEFAULT)) + .apply(); + } catch (Exception ex) { + throw new IllegalStateException(ex); + } + } + + public static String loadWalletUserPass(Context context, String wallet) { + String walletKeyAlias = SecurityConstants.WALLET_PASS_KEY_PREFIX + wallet; + String encoded = context.getSharedPreferences(SecurityConstants.WALLET_PASS_PREFS_NAME, Context.MODE_PRIVATE) + .getString(wallet, ""); + byte[] data = Base64.decode(encoded, Base64.DEFAULT); + byte[] decrypted = KeyStoreHelper.decrypt(walletKeyAlias, data); + + return new String(decrypted, StandardCharsets.UTF_8); + } + + public static void removeWalletUserPass(Context context, String wallet) { + String walletKeyAlias = SecurityConstants.WALLET_PASS_KEY_PREFIX + wallet; + try { + KeyStoreHelper.deleteKeys(walletKeyAlias); + context.getSharedPreferences(SecurityConstants.WALLET_PASS_PREFS_NAME, Context.MODE_PRIVATE).edit() + .remove(wallet).apply(); + } catch (Exception ex) { + throw new IllegalStateException(ex); + } + } + /** * Creates a public and private key and stores it using the Android Key * Store, so that only this application will be able to access the keys. @@ -132,9 +170,10 @@ private static void createKeysM(String alias) { KeyProperties.KEY_ALGORITHM_RSA, SecurityConstants.KEYSTORE_PROVIDER_ANDROID_KEYSTORE); keyPairGenerator.initialize( new KeyGenParameterSpec.Builder( - alias, KeyProperties.PURPOSE_SIGN) + alias, KeyProperties.PURPOSE_SIGN | KeyProperties.PURPOSE_ENCRYPT | KeyProperties.PURPOSE_DECRYPT) .setDigests(KeyProperties.DIGEST_SHA256) .setSignaturePaddings(KeyProperties.SIGNATURE_PADDING_RSA_PKCS1) + .setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_RSA_PKCS1) .build()); KeyPair keyPair = keyPairGenerator.generateKeyPair(); Timber.d("M Keys created"); @@ -166,6 +205,30 @@ private static KeyStore.PrivateKeyEntry getPrivateKeyEntry(String alias) { } } + public static byte[] encrypt(String alias, byte[] data) { + try { + PublicKey publicKey = getPrivateKeyEntry(alias).getCertificate().getPublicKey(); + Cipher cipher = Cipher.getInstance(SecurityConstants.CIPHER_RSA_ECB_PKCS1); + + cipher.init(Cipher.ENCRYPT_MODE, publicKey); + return cipher.doFinal(data); + } catch (Exception ex) { + throw new IllegalStateException("Could not initialize RSA cipher", ex); + } + } + + public static byte[] decrypt(String alias, byte[] data) { + try { + PrivateKey privateKey = getPrivateKeyEntry(alias).getPrivateKey(); + Cipher cipher = Cipher.getInstance(SecurityConstants.CIPHER_RSA_ECB_PKCS1); + + cipher.init(Cipher.DECRYPT_MODE, privateKey); + return cipher.doFinal(data); + } catch (Exception ex) { + throw new IllegalStateException("Could not initialize RSA cipher", ex); + } + } + /** * Signs the data using the key pair stored in the Android Key Store. This * signature can be used with the data later to verify it was signed by this @@ -213,5 +276,8 @@ public interface SecurityConstants { String KEYSTORE_PROVIDER_ANDROID_KEYSTORE = "AndroidKeyStore"; String TYPE_RSA = "RSA"; String SIGNATURE_SHA256withRSA = "SHA256withRSA"; + String CIPHER_RSA_ECB_PKCS1 = "RSA/ECB/PKCS1Padding"; + String WALLET_PASS_PREFS_NAME = "wallet"; + String WALLET_PASS_KEY_PREFIX = "walletKey-"; } } \ No newline at end of file diff --git a/app/src/main/java/com/m2049r/xmrwallet/util/Notice.java b/app/src/main/java/com/m2049r/xmrwallet/util/Notice.java new file mode 100644 index 0000000000..1b0b1c8362 --- /dev/null +++ b/app/src/main/java/com/m2049r/xmrwallet/util/Notice.java @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2018 m2049r + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.m2049r.xmrwallet.util; + +import android.content.Context; +import android.content.SharedPreferences; +import android.support.v4.app.FragmentActivity; +import android.support.v4.app.FragmentManager; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageButton; +import android.widget.LinearLayout; +import android.widget.TextView; + +import com.m2049r.xmrwallet.R; +import com.m2049r.xmrwallet.dialog.HelpFragment; + +import java.util.ArrayList; +import java.util.List; + +public class Notice { + private static final String PREFS_NAME = "notice"; + private static List notices = null; + + private static final String NOTICE_SHOW_XMRTO_ENABLED_LOGIN = "notice_xmrto_enabled_login"; + private static final String NOTICE_SHOW_XMRTO_ENABLED_SEND = "notice_xmrto_enabled_send"; + private static final String NOTICE_SHOW_CRAZYPASS = "notice_crazypass_enabled_login"; + + private static void init() { + synchronized (Notice.class) { + if (notices != null) return; + notices = new ArrayList<>(); + notices.add( + new Notice(NOTICE_SHOW_XMRTO_ENABLED_SEND, + R.string.info_xmrto_enabled, + R.string.help_xmrto, + 1) + ); + notices.add( + new Notice(NOTICE_SHOW_XMRTO_ENABLED_LOGIN, + R.string.info_xmrto_enabled, + R.string.help_xmrto, + 1) + ); + notices.add( + new Notice(NOTICE_SHOW_CRAZYPASS, + R.string.info_crazypass_enabled, + R.string.help_details, + 2) + ); + } + } + + public static void showAll(ViewGroup parent, String selector) { + if (notices == null) init(); + for (Notice notice : notices) { + if (notice.id.matches(selector)) + notice.show(parent); + } + } + + private final String id; + private final int textResId; + private final int helpResId; + private final int defaultCount; + private transient int count = -1; + + private Notice(final String id, final int textResId, final int helpResId, final int defaultCount) { + this.id = id; + this.textResId = textResId; + this.helpResId = helpResId; + this.defaultCount = defaultCount; + } + + // show this notice as a child of the given parent view + // NB: it assumes the parent is in a Fragment + private void show(final ViewGroup parent) { + final Context context = parent.getContext(); + if (getCount(context) <= 0) return; // don't add it + + final LinearLayout ll = + (LinearLayout) LayoutInflater.from(context) + .inflate(R.layout.template_notice, parent, false); + + ((TextView) ll.findViewById(R.id.tvNotice)).setText(textResId); + + final FragmentManager fragmentManager = + ((FragmentActivity) context).getSupportFragmentManager(); + ll.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + HelpFragment.display(fragmentManager, helpResId); + } + }); + + ImageButton ib = (ImageButton) ll.findViewById(R.id.ibClose); + ib.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + ll.setVisibility(View.GONE); + decCount(context); + } + }); + parent.addView(ll); + } + + private int getCount(final Context context) { + count = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE) + .getInt(id, defaultCount); + return count; + } + + private void decCount(final Context context) { + final SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE); + if (count < 0) // not initialized yet + count = prefs.getInt(id, defaultCount); + if (count > 0) + prefs.edit().putInt(id, count - 1).apply(); + } +} \ No newline at end of file diff --git a/app/src/main/res/drawable/backgound_amount.xml b/app/src/main/res/drawable/backgound_amount.xml deleted file mode 100644 index 8fe9ec7060..0000000000 --- a/app/src/main/res/drawable/backgound_amount.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable/backgound_scan.xml b/app/src/main/res/drawable/backgound_scan.xml deleted file mode 100644 index 255a292dc0..0000000000 --- a/app/src/main/res/drawable/backgound_scan.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - diff --git a/app/src/main/res/drawable/ic_add_black_24dp.xml b/app/src/main/res/drawable/ic_add_black_24dp.xml deleted file mode 100644 index 0258249cc4..0000000000 --- a/app/src/main/res/drawable/ic_add_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_arrow_right_orange_24dp.xml b/app/src/main/res/drawable/ic_arrow_right_orange_24dp.xml deleted file mode 100644 index 89be915f34..0000000000 --- a/app/src/main/res/drawable/ic_arrow_right_orange_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_favorite_white_14dp.xml b/app/src/main/res/drawable/ic_favorite_white_14dp.xml deleted file mode 100644 index 736aacd706..0000000000 --- a/app/src/main/res/drawable/ic_favorite_white_14dp.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_fingerprint.xml b/app/src/main/res/drawable/ic_fingerprint.xml new file mode 100644 index 0000000000..81eccc55bc --- /dev/null +++ b/app/src/main/res/drawable/ic_fingerprint.xml @@ -0,0 +1,37 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_max_sweep.xml b/app/src/main/res/drawable/ic_max_sweep.xml deleted file mode 100644 index 18ffccbbfe..0000000000 --- a/app/src/main/res/drawable/ic_max_sweep.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - diff --git a/app/src/main/res/drawable/ic_monero_32dp.xml b/app/src/main/res/drawable/ic_monero_32dp.xml deleted file mode 100644 index ea68ee88e0..0000000000 --- a/app/src/main/res/drawable/ic_monero_32dp.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - diff --git a/app/src/main/res/drawable/ic_monero_qr.xml b/app/src/main/res/drawable/ic_monero_qr.xml deleted file mode 100644 index ceda49529f..0000000000 --- a/app/src/main/res/drawable/ic_monero_qr.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - diff --git a/app/src/main/res/layout/activity_test_send.xml b/app/src/main/res/layout/activity_test_send.xml deleted file mode 100644 index 4df48d5aaf..0000000000 --- a/app/src/main/res/layout/activity_test_send.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - diff --git a/app/src/main/res/layout/fragment_generate.xml b/app/src/main/res/layout/fragment_generate.xml index 517ba60c68..7a8df46466 100644 --- a/app/src/main/res/layout/fragment_generate.xml +++ b/app/src/main/res/layout/fragment_generate.xml @@ -1,6 +1,7 @@ @@ -55,6 +56,27 @@ + + + + + + + - - - - - - + android:orientation="vertical" /> - - - - - - + android:orientation="vertical" /> + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/prompt_password.xml b/app/src/main/res/layout/prompt_password.xml index d39604d157..b38b7cea01 100644 --- a/app/src/main/res/layout/prompt_password.xml +++ b/app/src/main/res/layout/prompt_password.xml @@ -1,7 +1,6 @@ + + \ No newline at end of file diff --git a/app/src/main/res/layout/prompt_rename.xml b/app/src/main/res/layout/prompt_rename.xml index 43e46a608c..0acfad6b25 100644 --- a/app/src/main/res/layout/prompt_rename.xml +++ b/app/src/main/res/layout/prompt_rename.xml @@ -1,6 +1,5 @@ + + + + + + diff --git a/app/src/main/res/values-de/about.xml b/app/src/main/res/values-de/about.xml new file mode 100644 index 0000000000..c2853bf33e --- /dev/null +++ b/app/src/main/res/values-de/about.xml @@ -0,0 +1,62 @@ + + + Schließen + Ich bin Monerujo + Version %1$s (%2$d) + + Credits +
+ m2049r, baltsar777, anhdres, keejef, + rehrar, EarlOfEgo et al. +

+ monerujo.io + ]]>
+ + Datenschutzerklärung +

Diese Seite informiert dich über unsere Richtlinien bezüglich der Sammlung, + Nutzung und Weitergabe persönlicher Informationen, die wir von Nutzern unserer + App erhalten (monerujo: Monero Wallet). +

+

Mit der Nutzung der App stimmst du der Erfassung und Nutzung von Informationen in + Übereinstimmung mit dieser Erklärung zu. +

+

Gesammelte Daten

+

Personenbezogene Daten sind jegliche Art von Daten, die eine Person identifizieren können. +

+

Monero-Schlüssel und öffentliche Adressen werden von der App zum Zweck der Verarbeitung + von Transaktionen lokal gesammelt und verarbeitet und verschlüsselt in das Monero-Netzwerk übertragen. +

+

Andere persönliche Daten werden von der App nicht gesammelt.

+

Wenn du den USD/EUR Umrechner (optional) nutzt fragt Monerujo + den aktuellen Kurs über die öffentliche Schnittstelle von kraken.com ab. + Siehe dir ihre Datenschutzerklärung unter https://www.kraken.com/legal/privacy für + Details darüber an, wie Daten in deinen Anfragen gesammelt werden (insbesondere der + Abschnitt "Information We Collect Automatically").

+

Wenn du die App zum Bezahlen an BTC-Adressen verwendest, verwendest du den Dienst XMR.TO. + Weitere Informationen findest du in den Datenschutzerklärung unter https://xmr.to/. + Monerujo schickt dem Anbieter die BTC Zieladresse und den Betrag. + Deine IP-Adresse kann dabei aufgezeichnet werden.

+

App-Berechtigungen

+
    +
  • INTERNET : Verbinde zum Monero Netzwerk über eine Monero Daemon Node
  • +
  • READ_EXTERNAL_STORAGE : Liest die auf dem Gerät gespeicherten Wallet Dateien aus
  • +
  • WRITE_EXTERNAL_STORAGE : Schreibt Wallet Dateien auf dem Gerät
  • +
  • WAKE_LOCK : Halte das Gerät während der Synchronisation wach
  • +
  • CAMERA : Scanne QR-Codes um Monero zu erhalten
  • +
+

Änderungen an dieser Datenschutzerklärung

+

Wir können diese Datenschutzerklärung von Zeit zu Zeit aktualisieren. + Wir werden dich über jegliche Änderungen an der Datenschutzerklärung in der App und auf der + Website (www.monerujo.io) informieren. + Es wird empfohlen, diese Datenschutzerklärung regelmäßig auf Änderungen zu überprüfen. +

Diese Datenschutzerklärung wurde zuletzt geändert am: 10. November 2017. +

+

Kontakt

+

Wenn du Fragen zu unserer Datenschutzerklärung hast, + oder wie deine Daten gesammelt und verarbeitet werden, + schreibe bitte eine eMail an privacy@monerujo.io +

+ ]]>
+
diff --git a/app/src/main/res/values-de/help.xml b/app/src/main/res/values-de/help.xml new file mode 100644 index 0000000000..bf6ad07502 --- /dev/null +++ b/app/src/main/res/values-de/help.xml @@ -0,0 +1,230 @@ + + + Wallet erstellen - Neu +

Falls du eine neue Monero Adresse benötigst!

+

Gib einen eindeutigen Wallet Namen und Passwort ein. + Das Passwort schützt deine Wallet Daten auf dem Gerät. Benutze ein starkes Passwort - + eine Passwortphrase ist sogar noch besser.

+

Notiere dir deinen mnemonischen Seed!

+

Auf dem folgenden Bildschirm findest du deinen 25-Wort \"Mnemonischen Seed\". + Dies sind die einzigen Daten die du benötigst um dein Wallet zu einem späteren + Zeitpunkt wiederherzustellen und vollen Zugriff auf deine Gelder zu erhalten. + Diese Daten geheim und sicher aufzubewahren ist sehr wichtig, da sie jedem + vollen Zugriff auf diese Gelder geben!

+

Falls du dein Passwort verlierst, kannst du immer noch das Wallet mit dem Mnemonischen Seed wiederherstellen.

+

Es gibt keine Möglichkeit den Mnemonischen Seed wiederherzustellen. + Wenn du ihn verlierst sind deine Gelder verloren! + Der Mnemonische Seed kann auch nicht geändert werden, und falls du ihn verlierst oder er anderweitig + kompromittiert wird musst du deine Gelder auf ein neues Wallet transferieren, inklusive neuem Mnemonischen Seed. + Deshalb ist es am besten wenn du deinen Mnemonischen Seed aufschreibst + und sicher und geheim an mehreren Orten aufbewahrst.

+ ]]>
+ + Wallet erstellen - Seed +

Falls du schon eine Monero Adresse besitzt und wieder Zugriff auf die Transaktionen auf der Blockchain haben willst!

+

Gib einen eindeutigen Walletnamen und Passwort ein. Das Passwort schützt deine Walletdaten auf dem Gerät. + Benutze ein starkes Passwort - noch besser ist eine Passwortphrase.

+

Trage deinen Seed in das Feld \"Mnemonischer Seed\" ein.

+

Falls du die Blocknummer der ersten Transaktion dieser Adresse kennst gib sie in das Feld + \"Restore Height\" ein - dieses Feld leer zu lassen bedeutet die gesamte Blockchain + nach Transaktionen zu und von dieser Adresse zu durchsuchen. Das dauert sehr lang.

+ ]]>
+ + Wallet erstellen - Schlüssel +

Falls du dein Wallet mit Schlüsseln wiederherstellen willst!

+

Gib einen eindeutigen Walletnamen und Passwort ein. Das Passwort schützt deine Walletdaten auf dem Gerät. + Benutze ein starkes Passwort - noch besser ist eine Passwortphrase.

+

Gib deine Monero Adresse im Feld \"Öffentliche Adresse\" ein und fülle die Felder \"View Key\" und \"Spend Key\" aus.

+

Falls du die Blocknummer der ersten Transaktion dieser Adresse kennst gib sie in das Feld + \"Restore Height\" ein - dieses Feld leer zu lassen bedeutet die gesamte Blockchain + nach Transaktionen zu und von dieser Adresse zu durchsuchen. Das dauert sehr lang.

+ ]]>
+ + Wallet erstellen - View +

Falls du nur eingehende Transaktionen auf diese Wallet überwachen willst!

+

Gib einen eindeutigen Walletnamen und Passwort ein. Das Passwort schützt deine Walletdaten auf dem Gerät. + Benutze ein starkes Passwort - noch besser ist eine Passwortphrase.

+

Gib deine Monero Adresse im Feld \"Öffentliche Adresse\" ein und fülle das Feld \"View Key\" aus.

+

Falls du die Blocknummer der ersten Transaktion dieser Adresse kennst gib sie in das Feld + \"Restore Height\" ein - dieses Feld leer zu lassen bedeutet die gesamte Blockchain + nach Transaktionen zu und von dieser Adresse zu durchsuchen. Das dauert sehr lang.

+ ]]>
+ + Wallet Details +

Öffentliche Adresse

+ Die öffentliche Adresse ist wie deine Kontonummer die du anderen Personen mitteilen kannst, ohne Angst zu haben dein Geld zu verlieren. + Andere Personen werden dir Monero an diese Adresse schicken. +

Mnemonischer Seed

+ Dies sind die einzigen Daten die du benötigst um dein Wallet zu einem späteren + Zeitpunkt wiederherzustellen und vollen Zugriff auf deine Gelder zu erhalten. + Diese Daten geheim und sicher aufzubewahren ist sehr wichtig, da sie jedem + vollen Zugriff auf diese Gelder geben! Falls du ihn nicht an mehreren, sicheren Stellen aufgeschrieben hast mach dies bitte jetzt! +

Walletdateien Wiederherstellungspasswort

+ Stelle sicher dieses Passwort aufzuschreiben. Falls du dein Gerät auf Werkseinstellungen zurücksetzt oder + die App deinstallierst brauchst du dieses Passwort um Zugriff auf dein Wallet zu erhalten.
+

CrAzYpass

+ Falls das hier angezeigte Passwort aus 52 alphanumerischen Zeichen in 4er Gruppen besteht - Glückwunsch! + Deine Walletdateien sind nun durch einen 256-Bit-Schlüssel gesichert, der durch Sicherheitsfeatures + deines Gerätes aus deiner Passwortphrase erstellt wurde (bei Erstellung oder Änderung der Passwortphrase). + Dies macht einen Hack der Walletdateien extrem schwierig!
+ Dieses Feature ist verpflichtend für alle neu erstellten Wallets. +

Legacy-Passwort

+ Falls du hier deine Passwortphrase siehst sind deine Walletdateien nicht so gut gesichert wie + bei der Benutzung von CrAzYpass. Um dies zu beheben wähle einfach \"Passwortphrase ändern\" aus dem Menü. + Nachdem du eine neue Passwortphrase eingegeben hast (auch bei der gleichen wie zuvor) wird die App + ein neues CrAzYpass für dich erstellen und deine Walletdateien sichern. Schreibe es auf! +

CrAzYpass-Wallets

+ Falls du Monerujo jemals neu installieren musst (zum Beispiel nachdem du dein Gerät auf Werkseinstellungen zurückgesetzt hast + oder du ein neues Gerät besitzt) oder die Walletdateien auf einem anderen Gerät oder PC nutzen willst, dann + musst du dieses Wiederherstellungspasswort nutzen um Zugriff auf dein Wallet zu erhalten.
+ Durch die Auswahl \"Passwortphrase ändern\" aus dem Menü kannst du eine andere Passwortphrase wählen. Beachte + dass dies ein neues Wiederherstellungspasswort erzeugt. Schreibe es auf! +

View key

+ Dein View Key kann benutzt werden um eingehende Transaktionen zu diesem Wallet zu überwachen ohne anderen + die Möglichkeit zu geben Gelder aus diesem Wallet auszugeben. +

Spend Key

+ Der Spend Key ermöglicht jedem Monero aus diesem Wallet auszugeben, also bewahre diesen Spend Key genauso sicher + wie den Mnemomischen Seed auf. + ]]>
+ + Walletliste +

Node

+

Monerujo benutzt eine Remote Node um mit dem Monero Netzwerk zu kommunizieren ohne + die gesamte Blockchain herunterladen zu müssen. Eine Liste bekannter Remote Nodes + oder eine Anleitung zum Betreiben einer eigenen Remote Node findest du unter https://moneroworld.com/

+

Monerujo besitzt einige voreingestellte Remote Nodes. Es erinnert sich an die letzten 5 benutzten Nodes.

+

Wallets

+

Hier siehst du deine Wallets. Sie befinden sich im monerujo Ordner + im internen Speicher deines Geräts. Du kannst einen Datei-Explorer nutzen um sie zu finden. + Du solltest regelmäßig Backups von diesem Ordner machen und diese sicher aufbewahren für den Fall, + dass dein Gerät EXPLODIERT oder gestohlen wird.

+

Wähle ein Wallet um es zu öffnen oder tippe \"+\" um ein neues zu erstellen. + Oder wähle eine der folgenden Wallet Optionen:

+

Details

+

Zeige die Walletdetails, Seed & Keys.

+

Empfangen

+

Generiere einen QR-Code um Moneroj zu empfangen.

+

Umbenennen

+

Benenne die Wallet um. Backups werden nicht umbenannt.

+

Backup

+

Erstelle eine Kopie des Wallets im backups Ordner innerhalb des monerujo Ordners. + Eine bereits vorhandene Kopie wird überschrieben.

+

Archivieren

+

Erstellt ein Backup und löscht danach das Wallet. Die Kopie verbleibt im backups + Ordner. Falls du deine Backups nicht länger benötigst solltest du sie mit einem Datei-Explorer löschen oder + die App sauber und ordentlich deinstallieren

+ ]]>
+ + Das Wallet +

Scannen

+ Weil Monero gerne Dinge geheim hält, wird nach jedem Öffnen einer Monerujo Wallet die Blockchain gescannt + um zu überprüfen ob neue Moneroj zu dieser Wallet gesendet wurden. Dies speichert ausschließlich Informationen + die zur Wallet auf diesem Gerät gehören. Manchmal kann dies etwas länger dauern, falls die letzte Synchronisierung + eine Weile her ist. +

Das Saldo

+

Hilfe! Mein Wallet Saldo ist verschwunden oder ist unbestätigt!
+ Keine Panik! Wenn du Gelder von deiner Wallet sendest wird ein Teil deines Saldos kurzzeitig als unbestätigt angezeigt. + Dies geschieht aufgrund der zugrunde liegenden Technologie und wie Monero auf der Blockchain bewegt werden. + Lies mehr darüber auf https://getmonero.org/resources/moneropedia/change.html +

Transaktionsliste

+

Eine Liste deiner Transaktionen. In View Wallets werden nur die eingehenden Transaktionen angezeigt.

+ ]]>
+ + Transaktionsdetails +

Ziel

+ Dies ist die öffentliche Adresse des Wallets, zu dem du Moneroj gesendet hast. +

Zahlungs-ID

+ Du kannst eine Zahlungs-ID benutzen um Zahlungen zu identifizieren. Dies ist optional und ist nicht öffentlich einsehbar. + Zum Beispiel kann ein Unternehmen damit Zahlungen und Verkäufe miteinander verbinden. +

TX ID

+ Dies ist deine Transaktions-ID die du benutzen kannst um verschleierte Transaktionen mit einem Monero + Blockchain-Explorer wie https://xmrchain.net/ zu identifizieren. +

TX Schlüssel (Transaktionsschlüssel)

+ Dies ist dein geheimer Transaktionsschlüssel. Bewahre ihn sicher auf da er Dritten deine Signatur in einem Ring offenbart + und deshalb deine Transaktionen transparent macht. +

Block

+ Dies ist der Block der deine Transaktion beinhaltet. + ]]>
+ + Senden +

Empfängeradresse

+

Dies ist die öffentliche Adresse des Wallets, an die du Moneroj sendest. Du kannst sie aus der Zwischenablage kopieren, + einen QR-Code scannen oder sie manuell eingeben. Vergewissere dich, dass es die richtige Adresse ist um + sicherzustellen die Moneroj nicht irrtümlich an eine falsche Adresse zu senden.

+

Zusätzlich zum Senden von XMR kannst du auch BTC mittels des XMR.TO Service versenden (siehe https://xmr.to + für Details). Siehe den Abschnitt über das Versenden von BTC unten.

+

Zahlungs-ID

+

Du kannst eine Zahlungs-ID benutzen um den Grund einer Transaktion zwischen zwei Parteien zu identifizieren. Dies ist optional + und nicht öffentlich einsehbar. Zum Beispiel kann ein Unternehmen damit Zahlungen und Verkäufe miteinander verbinden.

+

Ringgröße

+

Es gibt verschiedene Ringgrößen in Monerujo aus denen du wählen kannst. Falls du ein neuer Nutzer bist + empfehlen wir bei der Standard Ringgröße zu bleiben (aktuell 7). Die Ringgröße zu erhöhen erhöht die Anzahl der Signaturen in einer Ring-Signatur, + was theoretisch das Erraten der richtigen Signatur erschwert. Eine höhere Ringgröße lässt eine Transaktion jedoch + auf der Blockchain auch herausstechen.

+

Priorität

+

Diese Einstellung bestimmt wie zügig deine Transaktion in einem Block auf der Blockchain verarbeitet wird. + Eine höhere Priorität bedeutet eine höhere Transaktionsgebühr, eine niedrige Priorität bedeutet eine + niedrigere Transaktionsgebühr. Bitte bedenke, dass eine Transaktion mit einer niedrigen Priorität unter Umständen + eine Weile benötigt bis sie auf der Blockchain verarbeitet wird. Die Standard-Priorität + ist \"Mittel\".

+

BTC Senden

+

XMR.TO

+

XMR.TO ist ein Drittanbieter-Service welcher als Wechselservice von Monero zu Bitcoin fungiert. + Wir nutzen die XMR.TO Schnittstelle um Bitcoin Zahlungen in Monerujo zu integrieren. Bitte schaue dir + https://xmr.to an und entscheide selbst, ob du diesen Service nutzen willst. Das Monerujo + Team gehört nicht zu XMR.TO und kann keinen Support für ihren Service bieten

+

XMR.TO Wechselkurs

+

Auf dem \"Menge\" Bildschirm siehst du die aktuellen Werte des XMR.TO Service. Diese beinhalten den aktuellen Tauschkurs + sowie die oberen und unteren BTC-Limits. Bitte bedenke, dass dieser Kurs zu diesem Zeitpunkt nicht garantiert ist. + Außerdem siehst du den Wert bis zu dem eine BTC-Zahlung sofort ausgeführt wird + ohne auf XMR-Bestätigungen warten zu müssen (siehe die XMR.TO FAQ für mehr Details). + XMR.TO erhebt keine zusätzlichen Gebühren - wie cool ist das denn?

+

XMR.TO Auftrag

+

Auf dem \"Bestätigen\" Bildschirm siehst du das genaue XMR.TO-Angebot. Dieses Angebot gilt + für eine bestimmte Zeit - du siehst einen Countdown auf dem \"Ausgeben\" Button. Der Wechselkurs kann + sich von den vorherigen Angaben unterscheiden.

+

Geheimer XMR.TO Schlüssel

+

Da Monerujo nur den Monero-Teil deiner Transaktion verarbeitet kann dein geheimer XMR.TO Schlüssel + dazu benutzt werden den Bitcoin-Teil deines Auftrags auf der XMR.TO-Homepage zu verfolgen.

+

Dieser geheime Schlüssel ist für 24h nach Start der Transaktion gültig!

+

XMR.TO Countdown!

+

Wenn der Countdown 0 erreicht musst du ein neues Angebot von XMR.TO anfordern indem du zum vorherigen Schritt + zurückkehrst und wieder zum \"Bestätigen\"-Bildschirm zurückkommst.

+ ]]>
+ + BTC senden +

XMR.TO

+

XXMR.TO ist ein Drittanbieter-Service, der als Wechselservice von Monero zu Bitcoin fungiert. + Wir verwenden die XMR.TO Schnittstelle, um Bitcoin-Zahlungen in Monerujo zu integrieren. Bitte sieh dir + https://xmr.to an und entscheide selbst, ob es etwas ist, was du verwenden möchtest. Das Monerujo + Team ist nicht mit XMR.TO verbunden und kann dir bei deren Service nicht helfen.

+

XMR.TO Wechselkurs

+

Auf dem Bildschirm \"Menge\" werden dir die aktuellen Parameter des XMR.TO-Dienstes angezeigt. Diese + beinhalten den aktuellen Wechselkurs sowie Ober- und Untergrenzen von BTC. Bitte beachte, dass diese Rate + zu diesem Zeitpunkt noch nicht garantiert werden kann. Du siehst auch den Betrag, bis zu dem die BTC-Transaktion + sofort ausgeführt wird, ohne auf XMR-Bestätigungen zu warten (siehe XMR.TO FAQ für weitere Details). + Bitte beachte, dass XMR.TO keine zusätzlichen Gebühren berechnet - ist doch cool, oder?

+

XMR.TO Auftrag

+

Auf dem Bildschirm \"Bestätigen\" siehst du das aktuelle XMR.TO-Angebot. Dieses Angebot ist nur für eine + bestimmte Zeit gültig - du wirst vielleicht einen Countdown auf dem \"Ausgeben\"-Knopf sehen. Der Wechselkurs + kann sich von dem auf den vorherigen Bildschirmen angezeigten indikativen Wechselkurs unterscheiden.

+

Geheimer XMR.TO Schlüssel

+

Da Monerujo nur den Monero Teil deiner Transaktion bearbeitet, kann dein geheimer XMR.TO Schlüssel verwendet werden, + um den Bitcoin Teil der Bestellung auf der XMR.TO-Homepage zu verfolgen.

+

Bitte beachte, dass dieser geheime Schlüssel nur bis zu 24 Stunden nach Start der Transaktion gültig ist!

+

XMR.TO Countdown!

+

Sobald der Countdown Null erreicht hat, musst du ein neues Angebot von XMR.TO anfordern, + indem du zum vorherigen Schritt zurückgehst und dann zum Bildschirm "Bestätigen" zurückkehrst.

+ ]]>
+ +
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml new file mode 100644 index 0000000000..de7ed2f8a2 --- /dev/null +++ b/app/src/main/res/values-de/strings.xml @@ -0,0 +1,311 @@ + + Wallet + + Testnet + Über + Datenschutzerklärung + + Teilen + Hilfe + Details + Empfangen + Umbenennen … + Archivieren + Backup + Passwortphrase ändern + + Tippe weiter … + Hmmm … + Komm schon, das kannst du besser! + Fast da … + Yeah baby, h4x0r style! + + Wallets + Credits + OK + Abbrechen + Schließen + Berühren für Detailinfos + + Erfolgreich gesendet + Fertig + + Berühren für QR-Code + Höhere Priorität = Höhere Gebühr + + BTC Zahlung aktiviert, tippe für mehr Infos. + CrAzYpass aktiviert, tippe für mehr Infos. + + Du hast eine BTC Adresse eingegeben.
+ Du wirst XMR versenden und der Empfänger durch den XMR.TO Service BTC erhalten. + ]]>
+ + XMR.TO Auftrag + + %1$s BTC + + + Bestätigung ausstehend + Bezahlung ausstehend + XMR.TO Fehler (%1$s) + BTC Gesendet! + Frage ab … + + Du kannst %1$s — %2$s BTC senden.
+ XMR.TO gibt dir aktuell einen Wechselkurs von %3$s BTC. + ]]>
+ Beträge bis zu %1$s BTC werden sofort versendet! + ]]> + + Saldo: %2$s BTC (%1$s XMR) + + Zahlungs-ID integriert + Bereite deine Transaktion vor + + Erstelle XMR.TO Auftrag + Frage XMR.TO Auftrag ab + Bereite Monero Transaktion vor + + Frage XMR.TO Parameter ab + + XMR.TO FEHLER + Code: %1$d + + Berühre zum Wiederholen + Jetzt hängen wir hier fest! + Oh oh, XMR.TO scheint im Moment nicht verfügbar zu sein! + + %1$s BTC = %2$s XMR + (Kurs: %1$s BTC/XMR) + + Fortgeschritten: + + Besuche XMR.TO für Support & Nachverfolgung + Geheimer Schlüssel\nXMR.TO + XMR.TO Geheimer Schlüssel + BTC Zieladresse + Menge + + Transaktions-ID + Zieladresse + Zahlungs-ID + Notizen + + Backup wird erstellt + Archivierung wird ausgeführt + Umbenennung wird ausgeführt + Daemon Verbindung wird getestet + Ändere Passwort + + Fertigstellen …\nDies kann einen Moment dauern! + + Backup fehlgeschlagen! + Archivierung fehlgeschlagen! + Umbenennen fehlgeschlagen! + Passwort ändern fehlgeschlagen! + Passwort geändert + + Node + ([<user>:<pass>@]<daemon>[:<port>]) + Lade Wallet … + Wallet gespeichert + Wallet Speicherung fehlgeschlagen! + Verbinde … + Verbindung zum Node fehlgeschlagen!\nPrüfe Username/Passwort + Node Zeitüberschreitung!\nNochmal oder anderen Node versuchen. + Node ungültig!\nVersuche anderen. + Kann Node nicht erreichen!\nNochmal oder anderen Node versuchen. + + Verbindung getrennt + + Transaktion fehlgeschlagen: %1$s + + Da hast du zu lange gewartet, mein Freund! + + Ich bin noch mit deinem letzten Wallet beschäftigt … + + Umbenennen %1$s + + Neue Passwortphrase für %1$s + Passwortphrase für %1$s wiederholen + Passwort für %1$s + Fingerabdruck-Authentifizierung möglich.\nBitte Sensor berühren. + Passwort bestätigen + Fingerabdruck nicht erkannt. Nochmals versuchen. + Falsches Passwort! + Wallet existiert nicht! + Daemonadresse muss gesetzt sein! + Wallet entspricht nicht dem ausgewähltem Netz + + (Watch Only) + + Nehmen + Geben + + + %1$s XMR unbestätigt + + monerujo Service + + Synchronisiert: + Blöcke verbleibend + Scanne: + + Externer Speicher nicht beschreibbar! Panik! + Wir brauchen die Zugriffsrechte auf den externen Speicher wirklich! + Keine Kamera = Kein QR scannen! + + View-Key + Öffentliche Adresse + XMR.TO Schlüssel + View-Key in Zwischenablage kopiert! + XMR.TO Schlüssel in Zwischenablage kopiert! + Wallet Adresse in Zwischenablage kopiert! + Transaktions-ID in Zwischenablage kopiert! + Kopieren aus Sicherheitsgründen deaktiviert! + + Umtausch-Rate nicht verfügbar!\nNutze XMR/XMR oder versuche es noch einmal + + Wallet erstellen + Wallet Name + Wallet Passwortphrase + Erlaubt das Öffnen des Wallets durch Fingerabdruck-Authentifizierung + Fingerabdruck-Authentifizierung +

Mit aktivierter Fingerabdruck-Authentifizierung kannst du ohne Eingabe eines Passworts + das Wallet-Saldo einsehen sowie Gelder empfangen.

+

Aus Sicherheitsgründen wird Monerujo weiterhin dein Passwort abfragen, + wenn du Wallet-Details einsehen oder Gelder senden möchtest.

+ Sicherheits-Warnung +

Bedenke bitte, dass jeder mit Zugriff auf deinen Fingerabdruck dein Wallet-Saldo einsehen kann.

+

Eine bösartige Person könnte dies zum Beispiel versuchen, während du schläfst.

+ Bist du sicher, dass du diese Funktion aktivieren willst? + ]]>
+ Passwortphrasen stimmen nicht überein + Passwortphrase darf nicht leer sein + Erstell mir jetzt endlich ein Wallet! + Ich habe den Mnemonischen Seed notiert! + + Gib mir einen Namen! + Wallet existiert bereits! + Kann nicht mit einem . beginnen + Erstelle Wallet + Wallet erstellt + Walleterstellung fehlgeschlagen + + Gib eine Nummer oder ein Datum (JJJJ-MM-TT) ein + + Schlüssel + Neu + Seed + View + + Öffentliche Adresse + View-Key + Spend-Key + 25-Wörter mnemonischer Seed + Wiederherstellungshöhe oder Datum (JJJJ-MM-TT) + + Öffentliche Adresse + View-Key + Spend-Key + Mnemonischer Seed + Walletdateien Wiederherstellungspasswort + + Gib einen gültigen Schlüssel ein + Gib eine gültige Adresse ein + Gib deine 25 Wörter Seed ein + + %1$s (Anhaltswert) + + Empfänger XMR oder BTC Adresse + Zahlungs-ID (optional) + 0.00 + Private Notizen (optional) + Generieren + Scannen + Gib meine wertvollen Moneroj aus + Gib meine wertvollen Moneroj aus (%1$s) + Kein QR-Code + Kein gültiger Zahlungs-QR-Code + Keine gültige Adresse + Senden + Saldo: %1$s XMR + Adresse + Menge + Einstellungen + Bestätigen + Fertig + + Menge + Gebühr (XMR) + Gebühr + Total (XMR) + Total + + %1$s XMR + +%1$s Gebühr + + Transaktionserstellungsfehler + + - Gebühr %1$s + (%1$s) + fehlgeschlagen + - %1$s + + %1$s + + Zeitstempel + TX-ID + TX-Schlüssel + Ziel + Ziel\n(BTC) + Zahlungs-ID + Block + Menge + Menge\n(BTC) + Gebühr + Transfers + Notizen + (optional) + Speichern + Notizen speichern fehlgeschlagen + Transaktionsdetails + + AUSSTEHEND + FEHLGESCHLAGEN + + Zahlungs-ID (optional) + Menge + Konnte Wallet nicht öffnen! + 16 oder 64 Hex-Zeichen (0–9,a–f) + Muss bei einer integrierten Adresse leer sein + + Max. %1$s + Min. 0 + XMR keine Nummer + + Empfangen + + Sensible Daten werden angezeigt.\nSchau über deine Schulter! + Ich bin sicher + Nein, doch nicht! + Details + + Das Wallet wird archiviert und dann gelöscht! + Ja, mach das! + Nein, danke! + + + Priorität Standard + Priority Gering + Priority Mittel + Priority Hoch + + + Neues Wallet erstellen + View Only Wallet wiederherstellen + Wallet mit privaten Schlüsseln wiederherstellen + Wallet mit 25 Wörter Seed wiederherstellen +
diff --git a/app/src/main/res/values-es/about.xml b/app/src/main/res/values-es/about.xml index ccd2a3f8c1..ddd25b0907 100644 --- a/app/src/main/res/values-es/about.xml +++ b/app/src/main/res/values-es/about.xml @@ -1,6 +1,5 @@ - Acerca De Cerrar Versión %1$s (%2$d) diff --git a/app/src/main/res/values-es/help.xml b/app/src/main/res/values-es/help.xml index 273a619e0c..d0d1c51e2a 100644 --- a/app/src/main/res/values-es/help.xml +++ b/app/src/main/res/values-es/help.xml @@ -75,25 +75,28 @@ ¡Mantenerla segura y privada es muy importante, ya que permite a quien sea acceso completo a tus fondos! Si no la anotaste en un lugar seguro aún, ¡por favor hazlo!

Wallet Files Recovery Password

- Make sure you write this password down. If you reset your device or uninstall the app, you - will need it to access your wallet again.
+ Asegúrate de escribir esta contraseña. Si restablececes tu dispositivo o desinstalas esta + aplicación, vas a necesitarla para acceder a tu monedero otra vez.

CrAzYpass

- If the password displayed here is 52 alphanumeric characters in groups of 4 - congratulations! - Your wallet files are secured with a 256-bit key generated by your device's security - features based on the passphrase you chose (on creation or by changing it). This makes it - extremenly difficult to hack!
- This feature is mandatory for all newly created wallets. -

Legacy Password

- If you see your passphrase here, your wallet files are not as secure as when using - a CrAzYpass. To fix this, simply select \"Change Passphrase\" from the menu. After entering - a new passphrase (maybe even the same one as before) the app will generate a CrAzYpass for - you and secure your wallet files with it. Write it down! -

CrAzYpass wallets

- If you ever need to reinstall Monerujo (for example after resetting your phone or switching - to a new one) or you want to use your wallet files on a different device or PC, you have to - use this Recovery Password in order to access your wallet again.
- By selecting \"Change Passphrase\" from the menu, you can choose another passphrase. Beware - that this will generate a new Recovery Password. Write it down! + Si la contraseña que se muestra consiste de 52 caracteres alfanuméricos en grupos de 4... + ¡felicitaciones! + Los archivos de tu monedero están asegurado con una clave de 256 bits, generada por tu + propio dispositivo basándose en la contraseña que elegiste (al crear el monedero o luego + cambiándola manualmente). ¡Esto hace a tus archivos extremadamente difíciles de hackear!
+ Esta opción es obligatoria en todos los monederos nuevos. +

Contraseña Antigua

+ Si ves tu contraseña aquí, los archivos de tu billetera no están tan seguros que cuando + se usa una CrAzYpass. Para solucionar esto, simplemente elige \"Cambiar Contraseña\" en el + menú. Después de ingresar una nueva contraseña (aún si eliges la misma que antes) la + aplicación generará una CrAzYpass y asegurará los archivos de tu monedero con ella. + ¡Por favor anótala bien! +

Monederos CrAzYpass

+ Si alguna vez necesitas reinstalar Monerujo (por ejemplo luego de restaurar tu teléfono + o cambiar a uno nuevo) o si necesitas abrir los archivos de tu monedero en otro dispositivo + o en una PC, vas a tener que usar esta Contraseña de Recuperación (CrAzYpass) para poder + acceder a tu monedero otra vez.
+ Seleccionando \"Cambiar Contraseña\" en el menú, pueder elegir otra contraseña. + Ten presente que esto generará una nueva Contraseña de Recuperación (CrAzYpass). ¡Anótala bien!

Clave de vista

Tu clave de vista puede usarse para monitorizar las transacciones entrantes de tu monedero sin otorgar permiso para gastar los fondos guardados en ella. diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index b9fa1ce666..90654a887f 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -12,7 +12,7 @@ Renombrar … Archivar Copia de seguridad - [Change Passphrase] + Cambiar contraseña Sigue escribiendo … Mas o menos. @@ -47,28 +47,19 @@ Archivado en progreso Cambio de nombre en progreso Comprobando conexión con el daemon - [Change Password in progress] + Cambiando contraseña en progreso Guardando todo\n¡Puede llevar un tiempo! - Copia de seguridad satisfactoria ¡Copia de seguridad fallida! - Archivado satisfactorio ¡Archivado fallido! - ¡Borrado fallido! ¡Cambio de nombre fallido! - [Change Password failed!] - [Password changed] + ¡Cambio de contraseña fallido! + Contraseña cambiada Nodo ([<usuario>:<contraseña>@]<daemon>[:<puerto>]) - Selección de Red - StageNet - TestNet - MainNet - Cargando lista de monederos Cargando monedero… - Guardando monedero Monedero guardada ¡Guardado de monedero fallido! Conectando… @@ -77,52 +68,38 @@ ¡Nodo inválido!\nInténtalo con otro. ¡No se puede alcanzar el nodo!\nInténtalo de nuevo o prueba otro. - Trabajando en ello … Desconectado - ¡Transacción enviada! Transacción fallida: %1$s - ¡No se pudo crear la transacción! - Todavía estoy ocupado con tu última monedero … + Todavía estoy ocupado con tu último monedero … Renombrar %1$s - [New Passphrase for %1$s] - [Repeat Passphrase for %1$s] + Nueva contraseña para %1$s + Repetir contraseña para %1$s Contraseña para %1$s + Puedes poner tu dedo en el sensor para autorizar con tu huella. Confirmar Contraseña + Huella no reconocida. Inténtalo nuevamente. ¡Contraseña incorrecta! ¡El monedero no existe! - ¡Esto no es un monedero! ¡La dirección del daemon debe estar configurada! El monedero no coincide con la red seleccionada - ¡No se puede conectar al daemon! Inténtalo de nuevo. - ¡Algo ha sucedido! (Sólo Vista) Recibir Enviar - Monto - Fecha + %1$s XMR sin confirmar - Transacciones - ¡Conectado al daemon! Servicio de monerujo - Servicio de monerujo en ejecucion - Servicio de monerujo detenido - Servicio de monerujo - Servicio de monerujo conectado - Servicio de monerujo desconectado Sincronizado: bloques restantes Escaneando: - Problemas ¡No se puede escribir en el almacenamiento externo! ¡Pánico! ¡De verdad necesitamos esos permisos para el almacenamiento externo! Sin cámara = ¡Sin escaneo de QR! @@ -131,8 +108,6 @@ Dirección Pública ¡Clave de vista copiada al portapapeles! ¡Dirección del monedero copiada al portapapeles! - ¡La selección de la semilla está desactivada por motivos de seguridad! - ¡La selección de la clave de gasto está desactivada por motivos de seguridad! ¡La copia está desactivada por motivos de seguridad! ¡No se ha podido obtener la tasa de cambio!\nUsa XMR/XMR o inténtalo de nuevo @@ -140,15 +115,23 @@ Crear monedero Nombre del monedero Frase de Contraseña - [Passphrases do not match] - [Passphrase may not be empty] + Permitir abrir usando huella dactilar + Autenticación por huella +

Con la autenticación por huella dactilar activada, puedes acceder al balance y recibir fondos + sin la necesidad de ingresar tu contraseña.

+

Sin embargo, por seguridad extra, Monerujo va a requerir tu contraseña para ver la información + sensible de tu monedero o enviar fondos.

+ Advertencia de seguridad +

Si bien es cómodo, recuerda que cualquier persona que tenga acceso a tu huella dactilar + va a ser capaz de mirar el balance de tu monedero.

+

Por ejemplo, un actor malicioso cercano podría abrir tu monedero con tu dedo mientras duermes.

+ ¿Estás seguro de activar esta función? + ]]>
+ Contraseñas no coinciden + Contraseña no puede estar vacía ¡Házme ya un monedero! - Semilla Mnemotécnica - [I have noted the above info!] - - Copia de Seguridad - Exportar Claves - BORRAR + ¡Ya anote todo! ¡Dame un nombre! ¡El monedero ya existe! @@ -170,14 +153,11 @@ Semilla Mnemotécnica de 25 Palabras Altura o Fecha (YYYY-MM-DD) de Restauración - Monedero - Contraseña Dirección Pública Clave de Vista Clave de Gasto Semilla Mnemotécnica - Altura de Restauración: - [Wallet Files Restore Password] + Contraseña de restauración para el archivo del monedero Introduce una clave válida Introduce una dirección válida @@ -187,17 +167,10 @@ ID de Pago (opcional) 0.00 Notas Privadas (opcional) - Prioridad de Transacción - Mezclar - Barrer Generar Scan - Preparar - Disponer (Deshacer) - Último Paso - ¡Confirma! No es un Código QR de monero Dirección de Monero inválida - Preparando transacción Enviar Fondos disponibles: %1$s XMR Dirección @@ -205,24 +178,19 @@ Ajustes Aprobar Hecho - Resumen - Monto > Fondos Monto Comisión - Polvo Total Error creando la transacción - incl. comisión de %1$s - Comisión %1$s (%1$s) fallido - %1$s + %1$s - Dirección Marca de tiempo ID de Transacción Clave de Transacción @@ -233,29 +201,20 @@ Comisión Transferencias Notas - Copiar al Portapapeles - Copiado al Portapapeles - Detalles de la transacción (opcional) Guardar - Notas guardadas El guardado de las notas ha fallado Detalles de la Transacción PENDIENTE FALLIDO - Muéstrame el código QR - Generar ID de Pago (opcional) Monto - XMR ¡No se ha podido abrir el monedero! 16 o 64 caracteres hexadecimales (0–9,a–f) Debe estar vacío con una dirección integrada - Debe ser > 0 - Introduce valor Max. %1$s Min. 0 XMR no es un número @@ -286,12 +245,7 @@ Ingresaste una dirección Bitcoin
Vas a enviar XMR y el destinatario recibirá BTC usando el servicio XMR.TO. ]]>
- Enviando %1$s BTC - Clave: - Dirección: - Estado: - %1$s BTC Confirmación pendiente Pago pendiente Error de XMR.TO (%1$s) @@ -317,15 +271,11 @@ %1$s BTC = %2$s XMR (Cambio: %1$s BTC/XMR) Avanzado - Click para más detalles Visita https://xmr.to para soporte y rastreo - Mira en los datos de la TX para más detalles Clave secreta\nXMR.TO Clave secreta XMR.TO Dirección BTC destino Monto - Creando orden XMR.TO - Toca para reintentar Oye, esperaste demasiado! Clave XMR.TO ¡Clave XMR.TO copiada al portapapeles! @@ -337,12 +287,10 @@ Total (XMR) %1$s XMR +%1$s Comisión - Estado - TX ID\n(BTC) Destino\n(BTC) Monto\n(BTC) - Debe quedar vacío con una dirección Bitcoin Soy monerujo Orden XMR.TO Pago en BTC activado, toca para más info. + CrAzYpass activado, toca para más info. diff --git a/app/src/main/res/values-fr/about.xml b/app/src/main/res/values-fr/about.xml new file mode 100644 index 0000000000..0aca4e135f --- /dev/null +++ b/app/src/main/res/values-fr/about.xml @@ -0,0 +1,67 @@ + + + Fermer + Je suis monerujo + Version %1$s (%2$d) + + Crédits +
+ m2049r, baltsar777, anhdres, keejef, + rehrar, EarlOfEgo et al. +

+ monerujo.io + ]]>
+ + Politique de Confidentialité +

Cette page vous informe de nos politiques en matière de collecte, + utilisation et divulgation des informations personnelles que nous + recevons des utilisateurs de notre application (monerujo: Monero Wallet). +

+

En utilisant l’application, vous consentez à la collecte et à l’utilisation + d’informations en accord avec cette politique. +

+

Données Collectées

+

Une donnée personnelle est tout type de donnée qui est succeptible + d’identifier un individu. +

+

Les clefs et adresses publiques Monero collectées sont traitées localement par + l’application pour le besoin de traitement des transactions et transmises sur le + réseau Monero sous une forme chiffrée. +

+

Aucune autre donnée personnelle n’est collectée par l’application.

+

Si vous utilisez la fonction (optionnelle) de change USD/EUR, monerujo récupère le + taux de change via l’API publique de kraken.com. + Consultez leur politique de confidentialité sur https://www.kraken.com/legal/privacy + pour des détails sur la façon dont les données de vos requêtes sont collectées + (particulièrement la rubrique "Information We Collect Automatically").

+

Si vous utilisez l’application pour payer à une adresse BTC, vous utiliserez + le service XMR.TO. Consultez leur politique de confidentialité sur https://xmr.to/ + pour plus de détails. Monerujo leur transmet l’adresse de destination BTC et le + montant. Votre IP serait également collectable.

+

Permissions de l’application

+
    +
  • INTERNET : Connection au réseau Monero via le démon d’un nœud Monero
  • +
  • READ_EXTERNAL_STORAGE : Lire les fichiers de portefeuille stockés sur l’appareil
  • +
  • WRITE_EXTERNAL_STORAGE : Écrire les fichiers de portefeuille stockés sur l’appareil
  • +
  • WAKE_LOCK : Garder l’appareil actif pendant la synchronisation
  • +
  • CAMERA : Scanner les QR Codes pour recevoir Monero
  • +
+

Changements à cette Politique de Confidentialité

+

Nous pourrions avoir besoin de mettre à jour cette politique de confidentialité + de temps en temps. Nous vous indiquerons tout changement en publiant la nouvelle + politique de confidentialité dans l’application et sur le site web (www.monerujo.io) + Il vous est conseillé de contrôler cette Politique de Confidentialité périodiquement + pour tout changement. +

Cette Politique de Confidentialité é été mise à jour pour la dernière fois : le + 10 Novembre 2017. +

+

Nous contacter

+

Si vous avez des questions à propos de notre politique de confidentialité, + ou si vos données ont été collectées et traitées, + merci d’envoyer un e-mail à privacy@monerujo.io. +

+ ]]>
+ +
\ No newline at end of file diff --git a/app/src/main/res/values-fr/help.xml b/app/src/main/res/values-fr/help.xml new file mode 100644 index 0000000000..386e51176e --- /dev/null +++ b/app/src/main/res/values-fr/help.xml @@ -0,0 +1,247 @@ + + + Créer un Portefeuille - Nouveau +

Si vous avez besoin d’une nouvelle adresse Monero !

+

Entrez un nom et un mot de passe unique pour le portefeuille. + Le mot de passe permet de sécuriser les données de votre portefeuille sur votre appareil. + Utilisez un mot de passe fort - mieux, utilisez une phrase secrète.

+

Notez votre phrase Mnémonique !

+

Sur l’écran suivant vous trouverez les 25 mots de votre \"Phrase Mnémonique\". + C’est la seule donnée necessaire pour récupérer votre portefeuille ultérieurement + et obtenir l’accès à vos fonds. + Il est très imprtant de la garder sécurisée et confidentielle, car elle donne + à quiconque le contrôle total de vos fonds !

+

Si vous perdez le mot de passe de votre portefeuille, vous pouvez toujours récupérer votre + portefeuille avec la phrase Mnémonique.

+

Il n’y a aucun moyen de récupérer votre phrase Mnémonique, si vous la perdez tous vos fonds + seront perdus ! La phrase Mnémonique ne peut pas non plus être changée, et si elle est dérobée + ou compromise, vous devrez transférer vos fonds vers un nouveau portefeuille (avec une nouvelle + phrase Mnémonique). Par conséquent, il vaut mieux que vous sauvegardiez votre phrase Mnémonique + en l’écrivant et en la conservant à de multiples endroits sécurisés.

+ ]]>
+ + Créer un Portefeuille - Phrase Mnémonique +

Si vous avez déjà une adresse Monero et que vus voulez reécupérer vos transactions depuis la chaïne de blocs !

+

Entrez un nom et un mot de passe unique pour le portefeuille. + Le mot de passe permet de sécuriser les données de votre portefeuille sur votre appareil. + Utilisez un mot de passe fort - mieux, utilisez une phrase secrète.

+

Entrez votre phrase Mnémonique dans le champ \"Phrase Mnémonique\".

+

Si vous connaissez le numéro du bloc de votre première transaction à cette adresse, entrez-le dans le + champ \"Hauteur de restauration\" - en le laissant vide la totalité de la chaîne de blocs sera scannée + à la recherche des transactions appartenant à votre adresse. Cela prend beaucoup de temps.

+ ]]>
+ + Créer un Portefeuille - Clefs +

Si vous récupérez votr portefeuille en utilisant vos clefs !

+

Entrez un nom et un mot de passe unique pour le portefeuille. + Le mot de passe permet de sécuriser les données de votre portefeuille sur votre appareil. + Utilisez un mot de passe fort - mieux, utilisez une phrase secrète.

+

Entrez votre adresse Monero dans le champ \"Adresse Publique\" et remplissez \"Clef d’Audit\" et \"Clef de dépense\".

+

Si vous connaissez le numéro du bloc de votre première transaction à cette adresse, entrez-le dans le + champ \"Hauteur de restauration\" - en le laissant vide la totalité de la chaîne de blocs sera scannée + à la recherche des transactions appartenant à votre adresse. Cela prend beaucoup de temps.

+ ]]>
+ + Créer un Portefeuille d’Audit +

Si vous voulez suveiller les transaction entrantes sur un portefeuille !

+

Entrez un nom et un mot de passe unique pour le portefeuille. + Le mot de passe permet de sécuriser les données de votre portefeuille sur votre appareil. + Utilisez un mot de passe fort - mieux, utilisez une phrase secrète.

+

Entrez votre adresse Monero dans le champ \"Adresse Publique\" et remplissez la \"Clef d’Audit\".

+

Si vous connaissez le numéro du bloc de votre première transaction à cette adresse, entrez-le dans le + champ \"Hauteur de restauration\" - en le laissant vide la totalité de la chaîne de blocs sera scannée + à la recherche des transactions appartenant à votre adresse. Cela prend beaucoup de temps.

+ ]]>
+ + Détails du Portefeuille +

Adresse Publique

+ Votre adresse publique est comme votre numéro de compte en banque, vous pouvez la partager avec n’importe qui sans + craindre de perdre vos Moneroj. On porra envoyer des Moneroj dans votre portefeuille en utilisant cette adresse. +

Phrase Mnémonique

+ C’est la seule donée nécessaire pour récupérer votre portefeuille ultérieurement et obtenir l’accès à + vos fonds. Il est très imprtant de la garder sécurisée et confidentielle, car elle donne à quiconque + le contrôle total de vos Moneroj ! Si vous ne l’avez pas écrite à un emplacement sécurisé, faites-le ! +

Mdp de restauration des fichiers du Portefeuille

+ Assurez vous de noter ce mot de passe. Si vous réinitialisez votre appareil ou désinstallez l’application, + vous en aurez besoin pour accéder de nouveau à votre portefeuille.
+

CrAzYpass

+ Si le mot de passe affiché ici comporte 52 caractères alphanumériques par groupes de 4 - félicitations ! + Vos fichiers de portefeuille sont sécurisé avec une clef 256 bits généré par les fonctionnalité de + sécurité de votre appareil sur la base de la phrase secrète que vous avez choisis (lors de la création + ou en l’ayant changée). Cela le rend êtrèmement difficile à pirater !
+ Cette fonctionnalité est obligatoire pour tous les nouveaux portefeuilles. +

Mot de passe traditionnel

+ Si ici vous voyez votre phrase secrète, les fichiers de votre portefeuille ne sont pas aussi sécurisés qu’en + utilisant un CrAzYpass. Pour y remédier, choisissez simplement \"Changer la phrase secrète\" à partir du menu. + Après avoir renseigné une nouvelle phrase secrète (voire la même que précédemment) l’application va générer + un CrAzYpass pour vous et sécuriser les fichiers de votre portefeuille avec. Notez-le ! +

Portefeuilles CrAzYpass

+ Si vous avez un jour besoin de réinstaller Monerujo (par exemple après réinitialisation de votre téléphone, ou + remplacement de celui-ci) ou si vous voulez utiliser vos fichiers de portefeuille sur un appareil différent ou + un PC, vous devrez utiliser ce Mot de Passe de Restauration adin d’accéder de nouveau à votre portefeuille.
+ En choisissant \"Modifier Phrase Secrète\" à partir du menu, vous pouvez choisir une nouvelle phrase secrète. + Prenez garde, cela génèrera un nouveau Mot de Passe de Restauration. Notez-le ! +

Clef d’Audit

+ Votre clef d’Audit peut vous servir à surveiller les transactions entrantes sur votre portefeuille sans autoriser + la dépense de vos fonds dans votre portefeuille. +

Clefs de dépense

+ Votre clef de dépense permet à quiconque de dépenser les Moneroj associés à votre portefeuille, alors ne la + communiquez à personne, gardez-la en sécurité comme votre phrase Mnémonique. + ]]>
+ + Liste des Portefeuilles +

Nœud

+

Monerujo utilise un nœud distant pour communiquer avec le réseau Monero sans avoir à + télécharger et stocker une copie complète de la chaîne de bloc. vous pourrez trouver une + liste de nœud distant populaire ou apprendre comment faire fonctionner votre propre nœud + distant ici https://moneroworld.com/

+

Monerujo est fourni avec quelques Nœuds distants préenregistrés. Les cinq derniers nœuds utilisé sont sauvegardés.

+

Portefeuilles

+

Ici vous pouvez voir vos Portefeuilles. Ils se trouvent dans le dossier monerujo + du stockage interne de votre appareil. Vous pouvez utiliser une application d’explorateur + de fichiers pour les vois. Vous devriez faire des sauvegardes régulières de ce répertoire + sur un stockage externe au cas où votre appareil exploserait ou serait volé.

+

Sélectionnez un portefeuille à ouvrir ou appuyez sur \"+\" pour en créer un nouveau. + Ou choisissez l’une des opérations de portefeuille :

+

Détails

+

Affichez les détails du portefeuille, phrase mnémonique & Clefs.

+

Recevoir

+

Faites un QR code pour recevoir des Moneroj.

+

Renommer

+

Renommez le portefeuille. Les sauvegardes ne sont pas renommées.

+

Sauvegarde

+

Faites une copie du portefeuille dans le sous-répertoire backups de monerujo + remplaçant les copies précédentes s’y trouvant.

+

Archivage

+

Faites une sauvegarde du portefeuille suivi de sa suppression. La copie reste dans le répertoire + backups. Si vous n’avez plus besoin de vos sauvegardes, vous devriez les supprimer avec + une application d’explorateur de fichiers ou une application de suppression sécurisée.

+ ]]>
+ + Le Portefeuille +

Analyse

+ Comme Monero aime garder les choses confidentielles, nous devons scanner la chaîne de blocs + chaque fois que vous ouvrez un portefeuille Monerujo pour voir si de nouveau Moneroj ont été + envoyés à votre portefeuille, cela ne stock sur votre appareil que les informations appartenant + à votre portefeuille. Parfois cela peut prendre un moment si vous n’avez pas synchronisé depuis + longtemps. +

Le Solde

+

Au secours ! Le solde de mon portefeuille à disparu ou est non confirmé !
+ Ne paniquez pas ! lorsque vous envoyez des fonds sur votre portefeuille, une partie de votre + solde sera temporairement affichée comme non confirmée. + Cela se produit à cause de la façon dont Monero est échangé sur la chaîne de blocs et du + fonctionnement de la monnaie dans Monero. Aprenez-en plus à propos de la monnaie dans Monero + sur https://getmonero.org/fr/resources/moneropedia/change.html +

Liste des Transactions

+

Une listes des transactions du portefeuille. Dans un portefeuille d’Audit, seules les + transactions entrantes sont affichées.

+ ]]>
+ + Détails de la Transaction +

Destination

+ C’est l’adresse publique du portefeuille auquel vous avez envoyé des Moneroj +

ID de Paiement

+ Vous pouvez utiliser un ID de paiement pour identifier la raison pour laquelle vous avez + envoyé des Moneroj entre deux parties. C’est totallement privé et optionnel. Il permet par + exemple à une société de faire concorder votre transaction avec un article que vous avez + acheté. +

ID TX

+ C’est votre ID de transaction, vous pouvez l’utiliser pour identifier vos transaction masquées + sur un explorateur de la chaîne de blocs Monero comme https://xmrchain.net/ +

Clef TX (Clef de Transaction)

+ C’est la clef privée de votre transaction, conservez là en sécurité car la révéler à un + tiers révèlerait quelle signature est la votre dans un cercle, et donc rendrait votre + transaction transparente. +

Bloc

+ C’est le bloc dans lequel votre transaction a été insérée. + ]]>
+ + Envoyer +

Adresse de Destinataire

+

C’est l’adresse publique du portefeuille auquel vous allez envoyer des Moneroj, vous pouvez + la copier/coller, scanner un QR code ou la saisir manuellement. Vérifiez là bien trois fois + afin de vous assurer que vous n’envoyez pas de pièces à la mauvaise adresse.

+

En plus d’envoyer des XMR, vous pouvez envoyer des BTC via le service XMR.TO (voir https://xmr.to + pour plus de détails). Consultez la rubrique sur l’envoie de BTC ci-dessous.

+

ID de Paiement

+

Vous pouvez utiliser un ID de paiement pour identifier la raison pour laquelle vous avez + envoyé des Moneroj entre deux parties. C’est totallement privé et optionnel. Il permet par + exemple à une société de faire concorder votre transaction avec un article que vous avez + acheté.

+

Taille du Cercle (Ring Size)

+

Il y a une taill de cercle à choisir dans Monerujo. Si vous êtes un utilisateur novice + nous vous recommandons de rester à la taille de cercle de 7. Augmenter la taille de cerlce + au delà de 7 augmente le nombre de signataires dans la signature de cercle, fournissant + théoriquement une plus grande dénégation plausible. Cependant, configurer de grandes tailles + de cercle peut également faire ressortir votre transaction sur la chaîne de blocs.

+

Priorité

+

Ce paramètre détermine la vitesse à laquelle votre transaction sera insérée dans la chaîne + de blocs. Une priorité plus élevée sera en lien direct avec des frais de transaction plus + élevés, et l’inverse est vrai pour une faible priorité. Veuillez noter que si vous configurez + une priorité faible, votre transaction pourrait mettre des heures pour être insérée sur la + chaîne de blocs. La priorité par défaut est \"Moyenne\".

+

Envoyer des BTC

+

XMR.TO

+

XMR.TO est un service tierce-partie qui agit commme un change depuis Monero vers Bitcoin. + Nous utilisons l’API XMR.TO pour intégrer les paiements Bitcoin dans Monerujo. Veuillez + consulter https://xmr.to et décidez vous-même si vous souhaitez l’utiliser. L’équipe Monerujo + n’est pas affiliée à XMR.TO et ne peut pas vous aider concernant leurs services.

+

Taux de change XMR.TO

+

Sur l’écran \"Montant\" vous seront indiqué les paramètres actuels du serive XMR.TO. Cela + inclus le taux de change actuel, ainsi que les limites BTC hautes et basses. Notez que ce taux + n’est pas garantit à ce stade. Vous verrez également le montnt jusqu’auquel la transaction BTC + sera exécutée instantanément sans attendre de confirmation XMR (voir la FAQ XMR.TO pour plus de + détails). Veuillez noter que XMR.TO n’ajoute pas de frais additionnels - c’est pas cool ça ?

+

Ordre XMR.TO

+

Sur l’écran \"Confirmation\", vous verez l’ordre XMR.TO actuel. Cette ordre est valide pour + un temps limité - vous pouvez remarquer le compte à rebours sur le bouton \"Dépenser\". Ce taux + de change peut être différent du taux indicatif de l’écran précédent.

+

Clef Secrète XMR.TO

+

Comme Monerujo ne traite que le volet Monero de votre transaction, votre clef secrète + XMR.TO peut être utilisée pour suivre le volet Bitcoin de votre ordre sur la page d’accueil + de XMR.TO.

+

Veuillez noter que cette clef secrète est seulement valable 24h après le lancement de la + transaction !

+

Compte à Rebours XMR.TO !

+

Une fois que le compte à rebours atteint zéro, vous devrez obtenir un nouveau devis depuis + XMR.TO en retournant à l’étape précédente puis en revenant à l’écran \"Confirmation\".

+ ]]>
+ + Envoyer des BTC +

XMR.TO

+

XMR.TO est un service tierce-partie qui agit commme un change depuis Monero vers Bitcoin. + Nous utilisons l’API XMR.TO pour intégrer les paiements Bitcoin dans Monerujo. Veuillez + consulter https://xmr.to et décidez vous-même si vous souhaitez l’utiliser. L’équipe Monerujo + n’est pas affiliée à XMR.TO et ne peut pas vous aider concernant leurs services.

+

Taux de change XMR.TO

+

Sur l’écran \"Montant\" vous seront indiqué les paramètres actuels du serive XMR.TO. Cela + inclus le taux de change actuel, ainsi que les limites BTC hautes et basses. Notez que ce taux + n’est pas garantit à ce stade. Vous verrez également le montnt jusqu’auquel la transaction BTC + sera exécutée instantanément sans attendre de confirmation XMR (voir la FAQ XMR.TO pour plus de + détails). Veuillez noter que XMR.TO n’ajoute pas de frais additionnels - c’est pas cool ça ?

+

Ordre XMR.TO

+

Sur l’écran \"Confirmation\", vous verez l’ordre XMR.TO actuel. Cette ordre est valide pour + un temps limité - vous pouvez remarquer le compte à rebours sur le bouton \"Dépenser\". Ce taux + de change peut être différent du taux indicatif de l’écran précédent.

+

Clef Secrète XMR.TO

+

Comme Monerujo ne traite que le volet Monero de votre transaction, votre clef secrète + XMR.TO peut être utilisée pour suivre le volet Bitcoin de votre ordre sur la page d’accueil + de XMR.TO.

+

Veuillez noter que cette clef secrète est seulement valable 24h après le lancement de la + transaction !

+

Compte à Rebours XMR.TO !

+

Une fois que le compte à rebours atteint zéro, vous devrez obtenir un nouveau devis depuis + XMR.TO en retournant à l’étape précédente puis en revenant à l’écran \"Confirmation\".

+ ]]>
+ +
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml new file mode 100644 index 0000000000..fe9aa22e2e --- /dev/null +++ b/app/src/main/res/values-fr/strings.xml @@ -0,0 +1,314 @@ + + Portefeuille + + Testnet + À Propos + Politique de Confidentialité + + Partage + Aide + Détails + Recevoir + Renommer … + Archiver + Sauvegarder + Modifier Phrase secrète + + Continuez de taper … + Bof … + Allez, vous pouvez mieux faire! + On y arrive … + Yeah baby, h4ck3r style ! + + Portefeuilles + Crédits + OK + Annuler + Fermer + Toucher pour plus d\'infos + + Envoi réussi + Fait + + Toucher pour le QR Code + Plus Prioritaire = Plus de Frais + + Paiement BTC activé, tapez pour plus d\'infos. + + CrAzYpass activé, tapez pour plus d\'infos. + + Vous avez entré une adresse Bitcoin.
+ Vous envoyez des XMR et le destinataire recevra des BTC via le service XMR.TO. + ]]>
+ + Ordres XMR.TO + + %1$s BTC + + + En Attente de Confirmation + En Attente de Paiement + Erreur XMR.TO (%1$s) + BTC Envoyé ! + Interrogation … + + Vous pouvez envoyer %1$s — %2$s BTC.
+ XMR.TO vous donne un taux de change de %3$s BTC actuellement. + ]]>
+ Les montant n\'excédant pas %1$s BTC seront envoyés immédiatement! + ]]> + + Solde : %2$s BTC (%1$s XMR) + + ID de Paiement intégré + Préparation de votre transaction + + Création de l\'ordre XMR.TO + Interrogation de l\'ordre XMR.TO + Préparation de la Transaction Monero + + Interrogation des paramètres xmr.to + + ERREUR XMR.TO + Code : %1$d + + Touchez pour réessayer + Maintenant on est coincé ici ! + Oh-oh, XMR.TO n\'a pas l\'air disponible pour le moment ! + + %1$s BTC = %2$s XMR + (Taux : %1$s BTC/XMR) + + Avancé : + + Visitez xmr.to pour l\'assistance & le suivi + Clef Secrète\nXMR.TO + Clef Secrète XMR.TO + Adresse BTC Destination + Montant + + ID de Transaction + Adresse Destination + ID de Paiement + Notes + + Sauvegarde en cours + Archivage en cours + Renommage en cours + Vérification de la connexion au démon + Modification du mot de passe en cours + + Récapitulation …\nCela peut prendre un moment ! + + Sauvegarde Échouée ! + Archivage Échouée ! + Renommage Échoué ! + Modification du mot de passe Échouée ! + Modification du mot de passe réussie + + Nœud + ([<utilisateur>:<mdp>@]<démon>[:<port>]) + Chargement du Portefeuille … + Portefeuille Sauvegardé + Sauvegarde du Portefeuille Échouée ! + Connexion … + Connexion au nœud échouée !\nVérifiez utilisateur/mot de passe + Connexion au nœud sans réponse !\nEssayez à nouveau ou un autre. + Nœud invalide !\nEssayez un autre. + Nœud injoignable !\nEssayez à nouveau ou un autre. + + Déconnecté + + Transaction échouée : %1$s + + Vous avez attendu trop longtemps l\'ami ! + + Je suis toujours occupé avec votre dernier portefeuille … + + Renommer %1$s + + Nouvelle Phase secrète pour %1$s + Répéter la Phase secrète pour %1$s + Mot de passe pour %1$s + Vous pouvez également ouvrir le portefeuille avec votre empreinte digitale.\nMerci de toucher le capteur. + Confirmez le mot de passe + Empreinte digitale non reconnue. Résessayez. + Mot de passe incorrect ! + Portefeuille inexistant ! + L\'adresse du démon ne peut pas être configurée ! + Portefeuille incompatible avec le réseau sélectionné + + (Audit) + + Recevoir + Envoyer + + + %1$s XMR non confirmés + + Service monerujo + + Synchronisé : + Blocs restant + Analyse : + + Stockage Externe non inscriptible ! Panique ! + On a vraiment besoin de ces permissions de Stockage Externe ! + Pas de camera = Pas de Scan QR ! + + Clef d\'Audit + Adresse Publique + Clef XMR.TO + Clef d\'audit copiée ! + Clef XMR.TO copiée ! + Adresse du Portefeuille copiée ! + ID de Transaction copié ! + Copie désactivée par sécurité ! + + Taux de change introuvable !\nUtilisez XMR/XMR ou essayez à nouveau + + Créer un Portefeuille + Nom du Portefeuille + Mot de Passe du Portefeuille + Allow to open wallet using fingerprint + Authentification par empreinte dgitale +

En activant l\'authentification par empreinte digitale, vous pouvez voir le solde de + votre portefeuille et recevoir des fonds sans entrer de mot de passe.

+

Mais pour plus de sécurité, monerujo continuera de vous demander votre mot de passe + lorsque vous afficherez les détails du portefeuille ou enverez des fonds.

+ Avertissement de Sécurité +

Enfin, monerujo vous rappel que quiconque pouvant obtenir votre empreinte digitale + sera capable de jeter un coup d\'œil au solde de votre portefeuille.

+

Par exemple, un utilisateur malveillant à vos côtés pourrait ouvrir votre portefeuille + pendant votre sommeil.

+ Êtes vous certain de vouloir activer cette fonctionnalité ? + ]]>
+ Phrases secrètes non correspondantes + La Phrase secrète ne doit pas être vide + Faites moi un Portefeuille déjà ! + J\'ai noté ces 25 mots ! + + Donnez-moi un nom ! + Le Portefeuille existe ! + Ne peut pas commencer par . + Création du Portefeuille + Portefeuille créé + Création du Portefeuille échouée + + Entrer un nombre ou une date (YYYY-MM-DD) + + Clefs + Nouveau + Phrase Mnémonique + Audit + + Adresse Publique + Clef d\'audit + Clef de dépense + Phrase Mnémonique + Hauteur ou date de restauration (YYYY-MM-DD) + + Adresse publique + Clef d\'audit + Clef de dépense + Phrase Mnémonique + Mdp de restauration des fichiers Portefeuille + + Entrez une clef valide + Entrez une Adresse valide + Entrez votre phrase Mnémonique + + %1$s (indicatif) + + Adresse XMR ou BTC du Destinataire + ID de Paiement (optionnel) + 0.00 + Notes Privées (optionnelles) + Générer + Scanner + Dépenser mes beaux Moneroj + Dépenser mes beaux Moneroj (%1$s) + QR Code invalide + QR code de paiement invalide + Adresse invalide + Envoi + Solde : %1$s XMR + Adresse + Montant + Paramètres + Confirmation + Terminé + + Montant + Frais (XMR) + Frais + Total (XMR) + Total + + %1$s XMR + +%1$s Frais + + Erreur de Création de Transaction + + - Frais %1$s + (%1$s) + Echoué + - %1$s + + %1$s + + Horodatage + ID TX + Clef TX + Destination + Destination\n(BTC) + ID de Paiement + Bloc + Montant + Montant\n(BTC) + Frais + Transferts + Notes + (optionnelles) + Sauvegarder + Sauvegarde de Notes échouée + Détails de la Transaction + + EN ATTENTE + ÉCHOUÉ + + ID de Paiement (optionnel) + Montant + Ouverture du portefeuille impossible ! + 16 ou 64 caractères héxadécimaux (0–9,a–f) + Doit être vide avec une adresse intégrée + + Max. %1$s + Min. 0 + XMR pas un nombre + + Recevoir + + Des données sensible vont être affichées.\nRegardez autour de vous ! + C\'est bon + Non merci ! + Détails + + Le portefeuille sera sauvegardé puis supprimé ! + Oui, procéder ! + Non merci ! + + + Priority Défaut + Priority Faible + Priority Moyenne + Priority Élevée + + + Créer un nouveau portefeuille + Restaurer un portefeuille d\'audit + Restaurer un portefeuille depuis la clef privée + Restaurer un portefeuille depuis la phrase mnémonique +
diff --git a/app/src/main/res/values-it/about.xml b/app/src/main/res/values-it/about.xml index 752ecc0060..e3e1c5fbbd 100644 --- a/app/src/main/res/values-it/about.xml +++ b/app/src/main/res/values-it/about.xml @@ -1,6 +1,5 @@ - [About] Chiudi Io sono monerujo Versione %1$s (%2$d) diff --git a/app/src/main/res/values-it/help.xml b/app/src/main/res/values-it/help.xml index f63ce38232..f446dfaf30 100644 --- a/app/src/main/res/values-it/help.xml +++ b/app/src/main/res/values-it/help.xml @@ -51,32 +51,32 @@ Dettagli del Portafoglio

Indirizzo pubblico

- Il tuo indirizzo pubblico Monero equivale al tuo IBAN. Puoi condividerlo con chiunque senza temere di perdere i tuoi Moneroj. Gli altri invieranno Moneroj al tuo portafoglio utilizzando questo indirizzo. + Il tuo indirizzo pubblico Monero equivale al tuo IBAN. Puoi condividerlo con chiunque senza temere di perdere i tuoi Moneroj. I Moneroj verranno inviati al tuo portafoglio utilizzando questo indirizzo.

Seed Mnemonico

Questa è l'unica informazione necessaria per recuperare il tuo portafoglio in futuro e avere pieno accesso ai tuoi fondi. E' molto importante mantenerlo privato e conservarlo in un luogo sicuro, poiché può concedere a chiunque pieno accesso ai tuoi Moneroj! Se non lo hai già fatto, annotati il Seed Mnemonico e conservalo in un luogo sicuro! -

Wallet Files Recovery Password

- Make sure you write this password down. If you reset your device or uninstall the app, you - will need it to access your wallet again.
+

Password di ripristino dei file del portafoglio

+ Assicurati di aver salvato questa password. Se resetti il tuo dispositivo o disinstalli l'app + ne avrai bisogno per accedere di nuovo al tuo portafoglio.

CrAzYpass

- If the password displayed here is 52 alphanumeric characters in groups of 4 - congratulations! - Your wallet files are secured with a 256-bit key generated by your device's security - features based on the passphrase you chose (on creation or by changing it). This makes it - extremenly difficult to hack!
- This feature is mandatory for all newly created wallets. -

Legacy Password

- If you see your passphrase here, your wallet files are not as secure as when using - a CrAzYpass. To fix this, simply select \"Change Passphrase\" from the menu. After entering - a new passphrase (maybe even the same one as before) the app will generate a CrAzYpass for - you and secure your wallet files with it. Write it down! -

CrAzYpass wallets

- If you ever need to reinstall Monerujo (for example after resetting your phone or switching - to a new one) or you want to use your wallet files on a different device or PC, you have to - use this Recovery Password in order to access your wallet again.
- By selecting \"Change Passphrase\" from the menu, you can choose another passphrase. Beware - that this will generate a new Recovery Password. Write it down! + Se la password visualizzata qui contiene 52 caratteri alfanumerici in gruppi di 4 - Congratulazioni! + I file del tuo portafoglio sono criptati con una chiave a 256-bit generata dal tuo dispositivo + e basata sulla passphrase che hai scelto (alla creazione o quando l'hai modificata). Questo la rende estremamente + difficile da hackerare!
+ Questa funzionalità è obbligatoria per tutti i nuovi portafogli. +

Password precedente

+ Se vedi la tua passphrase qui, i file del tuo portaglio non sono così sicuri come + quelli criptati da CrAzYpass. Per adeguare la tua password semplicemente seleziona \"Cambia Passphrase\" dal menu. + Dopo aver inserito una nuova passphrase (eventualmente la stessa usata in precedenza) l'applicazione genererà + una CrAzYpass per te e la userà per mettere al sicuro i file del tuo wallet. Annotala! +

Portafogli CrAzYpass

+ Se dovessi avere bisogno di reinstallare Monerujo (per esempio dopo aver resettato il tuo telefono + o dopo averlo sostituito) o vuoi usare i file del tuo portafoglio su un diverso dispositivo o PC, devi + usare questa password di recupero per poter accedere nuovamente al tuo portafoglio.
+ Selezionando \'Cambia Passphrase\' dal menu, potrai scegliere un'altra passphrase. Questa azione + creerà una nuova password di recupero. Ricordati di annotarla!

Chiave di Visualizzazione

La tua chiave di visualizzazione può essere usata per monitorare le transazioni in ingresso al tuo portafoglio senza concedere il permesso di spendere i fondi.

Chiave di Spesa

diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 0762b5d069..3e7b2ee8b2 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -12,7 +12,7 @@ Rinomina … Archivia Backup - [Change Passphrase] + Cambia passphrase Continua a scrivere … Mah … @@ -34,6 +34,7 @@ Priorità più alta = Commissioni più alte Pagamento BTC abilitato, tocca per maggiori informazioni. + CrAzYpass abilitato, tocca per maggiori informazioni. Hai inserito un indirizzo Bitcoin.
@@ -42,14 +43,8 @@ Ordine XMR.TO - Invio in corso %1$s BTC - Chiave: - Indirizzo: - Stato: - %1$s BTC - In attesa di conferma In attesa del pagamento @@ -88,16 +83,11 @@ Avanzate: - Clicca per più dettagli Visita xmr.to per supporto e tracciamento - Vedi dettagli TX per più dettagli Chiave segreta\nXMR.TO Chiave segreta XMR.TO Indirizzo BTC di destinazione Ammontare - Creando ordine XMR.TO - - Tocca per riprovare ID Transazione Indirizzo di Destinazione @@ -108,28 +98,19 @@ Archiviazione in corso Rinomina in corso Controllando connessione con daemon - [Change Password in progress] + Modifica password in corso Rimettendo le cose a posto …\nPuò richiedere del tempo! - Backup effettuato con successo Backup fallito! - Archiviazione effettuata con successo Archiviazione fallita! - Cancellazione fallita! Rinomina fallita! - [Change Password failed!] - [Password changed] + Modifica password fallita! + Password cambiata Nodo ([<utente>:<password>@]<daemon>[:<porta>]) - Selezione della rete - StageNet - TestNet - MainNet - Caricando la lista dei portafogli Caricando portafoglio … - Salvando portafoglio Portafoglio salvato Salvataggio portafoglio fallito! In connessione … @@ -138,12 +119,9 @@ Nodo invalido!\nProvane un altro. Impossibile raggiungere il nodo!\nProva di nuovo o provane un altro. - Lavorandoci su … Disconnesso - Transazione inviata! Transazione fallita: %1$s - Impossibile creare la transazione! Amico/a, hai aspettato troppo a lungo! @@ -151,41 +129,30 @@ Rinomina %1$s - [New Passphrase for %1$s] - [Repeat Passphrase for %1$s] + Nuova passphrase per %1$s + Ripeti passphrase per %1$s Password per %1$s + Puoi aprire il portafoglio anche usando la tua impronta digitale./nTocca il sensore. Conferma Password + Impronta digitale non riconosciuta. Prova di nuovo. Password errata! Il portafoglio non esiste! - Questo non è un portafoglio! Deve essere impostato l\'indirizzo del Daemon! Il portafoglio non si abbina con la rete selezionata - Impossibile connettersi al daemon! Prova di nuovo. - Qualcosa è sbagliato! (solo-visualizzazione) Ricevi Invia - Ammontare - Data + %1$s XMR non confermati - Transazioni - Daemon connesso! Servizio monerujo - Servizio monerujo attivo - Servizio monerujo fermato - Servizio monerujo - Servizio monerujo connesso - Servizio monerujo Disconnesso Sincronizzati: Blocchi rimanenti Scansionando: - Problemi L\'unità di memoria esterna non è scrivibile! Aiuto! Abbiamo veramente bisogno di questi permessi sull\'unità di memoria esterna! Nessuna telecamera = Nessuna scansione QR! @@ -197,8 +164,6 @@ Chiave XMR.TO copiata negli appunti! Indirizzo del portafoglio copiato negli appunti! ID transazione copiato negli appunti! - Selezione del seed disabilitata per ragioni di sicurezza! - Selezione della chiave di spesa disabilitata per ragioni di sicurezza! Copia disabilitata per ragioni di sicurezza! Impossibile recuperare il tasso di cambio!\nUsa XMR/XMR o prova di nuovo @@ -206,15 +171,23 @@ Crea portafoglio Nome del portafoglio Passphrase del portafoglio - [Passphrases do not match] - [Passphrase may not be empty] + Permetti di aprire il portafoglio usando la tua impronta digitale + [Autenticazione tramite impronta digitale +

Abilitando l'autenticazione tramite impronta digitale, puoi visualizzare il tuo bilancio e ricevere fondi + senza inserire la password.

+

Per sicurezza aggiuntiva, Monerujo richiederà comunque di inserire la password per visualizzare i dettagli + del tuo portafoglio o inviare denaro.

+ Avviso di sicurezza +

Infine, monerujo vuole ricordati che chiunque sia in grado di procurarsi la tua impronta digitale + sarà in grado di sbirciare il bilancio del tuo portafoglio.

+

Per esempio, un utente malevolo potrebbe aprire il tuo portafoglio mentre dormi.

+ Sei sicuro/a di voler abilitare questa funzione? + ]]>]
+ Le passphrase non corrispondono + La passphrase potrebbe non essere vuota Fammi subito un portafoglio! - Seed mnemonico - [I have noted the above info!] - - Backup - Esporta chiavi - ELIMINA + Ho annotato le informazioni qui sopra! Dammi un nome! Il portafoglio esiste! @@ -236,14 +209,11 @@ Seed mnemonico da 25 parole Altezza o data (AAAA-MM-GG) di ripristino - Portafoglio - Password Indirizzo pubblico Chiave di visualizzazione Chiave di spesa Seed mnemonico - Altezza di ripristino: - [Wallet Files Restore Password] + Password di ripristino dei file del portafoglio Inserisci una chiave valida Inserisci un indirizzo valido @@ -255,20 +225,13 @@ ID pagamento (opzionale) 0,00 Note private (opzionali) - Priorità Tx - Mixin - Spazza Genera Scansiona - Prepara - Disfati (Undo) Spendi i miei bei Moneroj Spendi i miei bei Moneroj (%1$s) - Ultimi passo - Conferma! Non è un codice QR Non è un codice QR pagamento valido Non è un indirizzo valido - Preparando la transazione Invia Saldo: %1$s XMR Indirizzo @@ -276,13 +239,10 @@ Impostazioni Conferma Fatto - Riassunto - Ammontare > Fondi Ammontare Commissione (XMR) Commissione - Polvere Totale (XMR) Totale @@ -291,18 +251,14 @@ Errore nella creazione della transazione - incl. %1$s di commissione - Commissione %1$s (%1$s) fallita - %1$s + %1$s - Status - Indirizzo Timestamp ID TX - ID TX\n(BTC) Chiave TX Destinazione Destinazione\n(BTC) @@ -313,30 +269,20 @@ Commissione Trasferimenti Note - Copia negli appunti - Copiata negli appunti - Dettagli transazione (opzionale) Salva - Note salvate Salvataggio note fallito Dettagli della transazione IN ATTESA FALLITA - Mostrami il codice QR - Genera ID pagamento (opzionale) Ammontare - XMR Impossibile aprire il portafoglio! 16 o 64 caratteri esadecimali (0–9,a–f) Deve essere vuoto con un indirizzo integrato - Deve essere vuoto con un indirizzo Bitcoin - Deve essere > 0 - Inserisci valore Max. %1$s Min. 0 XMR non è un numero diff --git a/app/src/main/res/values-nb/about.xml b/app/src/main/res/values-nb/about.xml new file mode 100644 index 0000000000..5c7a357aaf --- /dev/null +++ b/app/src/main/res/values-nb/about.xml @@ -0,0 +1,62 @@ + + + Lukk + Jeg er monerujo + Versjon %1$s (%2$d) + + Credits +
+ m2049r, baltsar777, anhdres, keejef, + rehrar, EarlOfEgo og andre. +

+ monerujo.io + ]]>
+ + Privacy Policy +

This page informs you of our policies regarding the collection, + use and disclosure of personal information we receive from users of our + app (monerujo: Monero Wallet). +

+

By using the app, you agree to the collection and use of information in + accordance with this policy. +

+

Data Collected

+

Personal data is any kind of data that could identify an individual. +

+

Monero keys and public addresses are collected and processed by the app locally + for the purpose of processing transactions and transmitted into the Monero Network + in encrypted form. +

+

Other personal data is not collected by the app.

+

If you use the USD/EUR exchange (optional) functionality, monerujo fetches the exchange + rate through the public API of kraken.com. + See their privacy policy at https://www.kraken.com/legal/privacy for + details on how data in your requests is collected (especially the + section "Information We Collect Automatically").

+

If you use the app to pay to BTC addresses, you will be using the XMR.TO service. + See their privacy policy at https://xmr.to/ for details. Monerujo send them the BTC + destination address and amount. Your IP will also be collectable.

+

App Permissions

+
    +
  • INTERNET : Connect to the Monero Network via a Monero Daemon Node
  • +
  • READ_EXTERNAL_STORAGE : Read wallet files stored on the device
  • +
  • WRITE_EXTERNAL_STORAGE : Write wallet files stored on the device
  • +
  • WAKE_LOCK : Keep device awake while syncing
  • +
  • CAMERA : Scan QR Codes for receiving Monero
  • +
+

Changes to this Privacy Policy

+

We may update this privacy policy from time to time. We will notify + you of any changes by posting the new privacy policy in the app and on the + website (www.monerujo.io) + You are advised to review this privacy policy periodically for any changes. +

This Privacy Policy was last updated: 10th November, 2017. +

+

Contact Us

+

If you have any questions about our privacy policy, + or how your data is being collected and processed, + please e-mail privacy@monerujo.io. +

+ ]]>
+
\ No newline at end of file diff --git a/app/src/main/res/values-nb/help.xml b/app/src/main/res/values-nb/help.xml new file mode 100644 index 0000000000..226efa940a --- /dev/null +++ b/app/src/main/res/values-nb/help.xml @@ -0,0 +1,236 @@ + + + Lage lommebok - Ny +

Hvis du trenger en ny Monero addresse!

+

Skriv inn et unikt lommebok navn og passord. + Passordet blir brukt til å sikre lommebokdataene på enheten. Bruk et sterkt passord - + helst en passordfrase.

+

Noter ditt mnemoniske seed!

+

På neste side vil du finne ditt 25 ord lange \"Mnemonisk Seed\". + Dette er den eneste dataen du trenger for å gjenopprette lommeboken din senere, + og få tilgang til alle pengene dine. + Det er veldig viktig å holde dette sikkert, siden det gir hvem som helst + full tilgang på pengene dine!

+

Hvis du mister lommebokpassordet ditt, kan du fortsatt gjenoprette lommeboka med den mnemoniske seeden din.

+

Det finnes ingen måte å gjennoprette ditt mnemoniske seed, så hvis du mister det er alle pengene dine tapt. + Det mnemoniske seedet kan heller aldri forandres, og hvis det blir stjelt eller har blitt kompromittert, + må du flytte pengene dine til en ny lommebok (med et ny mnemonisk seed). Derfor er det best + at du backer opp ditt mnemoniske seed, ved å skrive det ned og lagre det i flere trygge + og sikre plasser.

+ ]]>
+ + Lage lommebook - Seed +

Hvis du allerede har en Monero addresse og vil gjennoprette transaksjonene fra blokkjeden!

+

Skriv inn et unikt lommebok navn og passord. Passordet er brukt for å sikre lommebokdataene på denne enheten. + Bruk et sterkt passord, helst en passordfrase.

+

Skriv inn seedet ditt i feltet \"Mnemonisk Seed\".

+

Hvis du kjenner til blokkhøyden til den første transaksjonen til denne addressen, + skriv det inn i feltet \"Gjenopprettelseshøyde\" - hvis det er tomt vil hele blokkjeden skannes etter + transaksjoner som hører til denne addressen. Dette tar veldig lang tid.

+ ]]>
+ + Lage lommebok - Nøkler +

Hvis du gjenoppretter lommeboka di ved hjelp av nøkler!

+

Skriv inn et unikt lommebok navn og passord. Passordet er brukt for å sikre lommebokdataene på denne enheten. + Bruk et sterkt passord, helst en passordfrase.

+

Skriv inn Monero-addressen din i feltet \"Offentlig Addresse\" og fyll ut \"View Key\" and \"Spend Key\".

+

Hvis du kjenner til blokkhøyden til den første transaksjonen til denne addressen, + skriv det inn i feltet \"Gjenopprettelseshøyde\" - hvis det er tomt vil hele blokkjeden skannes etter + transaksjoner som hører til denne addressen. Dette tar veldig lang tid.<

+ ]]>
+ + Lage lommebok - View +

Hvis du bare vil følge med på innkommende transaksjoner til en lommebok!

+

Skriv inn et unikt lommebok navn og passord. Passordet er brukt for å sikre lommebokdataene på denne enheten. + Bruk et sterkt passord, helst en passordfrase.

+

Skriv inn Monero-addressen din i feltet \"Offentlig Addresse\" og fyll ut \"View-nøkkel\".

+

Hvis du kjenner til blokkhøyden til den første transaksjonen til denne addressen, + skriv det inn i feltet \"Gjenopprettelseshøyde\" - hvis det er tomt vil hele blokkjeden skannes etter + transaksjoner som hører til denne addressen. Dette tar veldig lang tid.

+ ]]>
+ + Lommebokdetaljer +

Offentlig nøkkel

+ Den offentlige addressen din er som bankkontonummeret ditt, som du kan dele med folk + uten å være redd for å miste penger. Det er denne folk sender Monero til. +

Mnemonisk Seed

+ Dette er den eneste dataen du trenger for å gjenoprette lommeboka di senere, + og få full tilgang til pengene dine. Å holde denne privat er veldig viktig, siden den gir hvem som helst full + tilgang til dine moneroj! Hvis du ikke har skrevet den ned, vær så snill og gjør det! +

Lommebokfiler gjenoprettelsespassord

+ Vær sikker på at du skriver ned dette passordet. Hvis du nullstiller enheten eller avinstallerer appen, vil + du trenge tilgang til lommeboka di igjen.
+

CrAzYpass

+ Hvis passordet vist her er 52 alfanunmeriske karakterer i grupper av 4 - gratulerer! + Lommebokfilene dine er sikret med en 256-bit nøkkel generert av enheten din sine sikkerhetsfunksjoner + basert på passordet du valgte (når du lagde det eller forandra det) og dette gjør det + utrolig vanskelig å hacke!
+ Denne funksjonen er obligatorisk for nye lommebøker. +

Eldre passord

+ Hvis du ser passordet ditt her, er ikke lommebokfilene dine så sikre som de er ved bruk av + CrAzYpass. For å fikse dette, trykk på \"Change Passphrase\" fra menyen. Etter å ha skrivd inn + ett nytt passord (kanskje til og med det samme som før) vil appen generere et CrAzYpass for + deg og sikre lommebokfilene dine med det. Skriv det ned! +

CrAzYpass lommebøker

+ Hvis du noen gang trenger å reinstallere monerujo (for eksempel etter å ha nullstilt enheten eller bytta + til en ny en) eller du vil bruke lommebokfilene dine på en annen enhet eller PC, må du bruke + dette gjenoppretelsespassordet for å få tilgang til lommeboka di igjen.
+ Ved å velge \"Change Passphrase\" fra menyen, kan du velge et annet passord. Vær oppmerksom + på at dette vil generere et nytt gjenoppretelsespassord. Skriv det ned! +

View-nøkkel

+ View-nøkkelen din gir andre tilgang til å se innkommende transaksjoner, uten å gi dem + tilgang til å bruke penger. +

Spend-nøkkel

+ Spend-nøkkelen gir alle tillatelse til å bruke moneroene dine, så hold den like + trygt som det mnemoniske seedet ditt! + ]]>
+ + Lommebokliste +

Node

+

Monerujo bruker en ekstern node for å kommunisere med Monero-nettverket, uten å måtte + laste ned og oppbevare en kopi av blokkjeden selv. Du kan finne en liste over populære + eksterne noder eller lære hvordan du driver din egen eksterne node her: https://moneroworld.com/

+

Monerujo kommer med noen eksterne noder lagt inn. Den husker de fem siste nodene du har brukt.

+

Lommebøker

+

Her ser du lommebøkene dine. De ligger i monerujo mappa + på den interne lagringa for enheten din. Du kan bruke en filutforsker for å se dem. + Du burde ta backup av denne mappa en gang i blant til en ekstern enhet i tilfelle + enheten din eksploderer eller blir stjelt.

+

Velg en lommebok for å åpne den, eller trykk \"+\" for å lage en ny en. + Eller velg en av disse lommebokoperasjonene:

+

Detaljer

+

Viser lommebokdetaljene, seed og nøkler.

+

Motta

+

Lag en QR-kode for å motta Monero.

+

Gi nytt navn

+

Gi nytt navn til lommeboka. Backuper blir ikke omgjort.

+

Backup

+

Lag en kopi av lommeboka til backups mappa inni monerujo + og overskriv tidligere kopier.

+

Arkiver

+

Lag en backup og slett lommeboka etterpå. Kopien blir igjen i backups + mappa. Hvis du ikke lenger trenger backupsene, burde du slette dem med en filutforsker + eller en sikker sletteapp.

+ ]]>
+ + Lommeboka +

Skanning

+ Fordi Monero liker å holde ting privat, må vi hver gang du åpner en lommebok i Monerujo + skanne blokkjeden for å se om noen nye moneroj har blitt sendt til lommeboka di, som bare + lagrer informasjon til telefonen din som tilhører lommeboka. Noen ganger kan det ta litt + tid fordi du ikke har synkronisert på en stund. +

Saldo

+

Hjelp! Kontosaldoen min har blitt borte, eller noe er ubekrefta!
+ Ikke få panikk! Når du sender penger fra lommeboka di, vil noe av saldoen din bli + vist som ubekrefta en liten periode. + Dette er et resultat av hvordan Monero veksles på blokkjeden og hvordan vekslepenger funker. + Les mer om vekslepenger på https://getmonero.org/resources/moneropedia/change.html +

Transaksjonsliste

+

En liste over lommeboktransaksjonene. In view lommebøker, kan man bare se innkommende transaksjoner.

+ ]]>
+ + Transaksjonsdetaljer +

Destinasjon

+ Dette er den offentlige adressen til lommeboka du sendte Monero til. +

Betalings-ID

+ Du kan bruke betalings-ID til å identifisere hvorfor du sendte Monero mellom to parter. Dette er + helt frivillig og privat. For eksempel lar det en bedrift tilknytte transaksjonen din med + en vare du har kjøpt. +

TX-ID

+ Dette er transaksjons-IDen din, som du kan bruke til å identifisere transaksjonen din på den obfuskerte Monero blokkjeden, ved å bruke en + blokkjedeutforsker som https://xmrchain.net/ +

TX-nøkkel (Transaksjonsnøkkel)

+ Dette er din private transaksjonsnøkkel. Hold den privat, siden å gi den til en tredjepart + avslører hvilken signatur i ringen som er din, og gjør derfor transaksjonen din gjennomsiktig. +

Blokk

+ Dette er blokka som transaksjonen din ligger i. + ]]>
+ + Send +

Mottakers adresse

+

Dette er den offentlige adressen til lommeboka du skal sende moneroj til, som du kan + kopiere fra utklippstavla, skanne fra en QR-kode eller skrive inn manuellt. Vær sikker på at du trippelsjekker dette + for å forsikre deg om at du ikke sender moneroj til feil adresse.

+

I tillegg til å sende XMR, kan du sende BTC gjennom XMR.TO tjenesten (se https://xmr.to + for detaljer). Se seksjonen på å sende BTC under.

+

Betalings-ID

+

Du kan bruke betalings-ID til å identifisere hvorfor du sendte Monero mellom to parter. Dette er + helt frivillig og privat. For eksempel lar det en bedrift tilknytte transaksjonen din med + en vare du har kjøpt.

+

Ringstørrelse

+

Det er noen ringstørrelser å velge mellom i monerujo. Hvis du er en begynner + anbefaler vi å holde seg til en ringstørrelse av 7. Å øke størrelsen over 7 øker antallet + signaturer i en ringsignatur, som teoretisk sett gir mer "plausible deniability". + Derimot vil en større ringstørrelse gjøre at transaksjonen din blir mer synlig + på blokkjeden.

+

Prioritet

+

Denne innstillingen bestemmer hvor raskt transaksjonen din skal bli inkludert i blokkjeden. + En høy transaksjonsprioritet er direkte tilknytta en høy transaksjonsavgift + og det motsatte er sant for lav prioritet. Vær oppmerksom på at hvis du setter prioriteten + til lav kan det ta timer før den blir inkludert, basert på nettverkstrafikk. Standard prioritet er + \"Middels\".

+

Å sende BTC

+

XMR.TO

+

XMR.TO er en tredjepartstjeneste som lar deg veksle Monero til Bitcoin. + Vi bruker XMR.TO-APIen til å integrere BTC-betalinger i Monerujo. Sjekk ut + https://xmr.to og bestem for deg selv om dette er noe du vil bruke. Monerujo-utviklerne + er ikke assosierte med XMR.TO og kan ikke hjelpe deg med deres tjeneste.

+

XMR.TO vekslingskurs

+

På \"Mengde\" skjermen vil du bli vist de nåværende parametrene til XMR.TO-tjenesten. Disse + inkluderer den nåværende vekslingskursen så vel som nedre og øvre BTC-grenser. Vær oppmerksom på at + kursen ikke er garantert på dette punktet. Du vil også se + den øvre grensa for at BTC-transaksjonen skal gå igjennom uten å vente på + XMR-bekreftelser (se XMR.TO-FAQen for fler detaljer). Legg merke til at XMR.TO + ikke har noen ekstra avgifter - hvor kult er ikke det?

+

XMR.TO ordre

+

På \"Bekreft\" skjermen, vil du se den faktiske XMR.TO ordren. Denne ordren er gyldig for + en begrensa tid - du legger kanskje til en nedtelling på \"Bruk\" knappen. Veklingskursen kan være + enn den veiledende kursen vist på de tidligere skjermene.

+

XMR.TO hemmelig nøkkel

+

Fordi Monerujo bare håndterer XMR delen av transaksjonen din, kan din XMR.TO hemmelige nøkkel + bli brukt til å spore BTC-transaksjonen på XMR.TO sine hjemmesider.

+

Vær oppmerksom på at denne nøkkelen kun er tilgjengelig for 24-timer etter transaksjonen + har blitt utført!

+

XMR.TO nedtelling!

+

Når nedtellinga når null, må du få en ny kvote fra XMR.TO ved å gå tilbake til + det tidligere steget og komme tilbake til \"Bekreft\" skjermen.

+ ]]>
+ + Å sende BTC +

XMR.TO

+

XMR.TO er en tredjepartstjeneste som lar deg veksle Monero til Bitcoin. + Vi bruker XMR.TO-APIen til å integrere BTC-betalinger i Monerujo. Sjekk ut + https://xmr.to og bestem for deg selv om dette er noe du vil bruke. Monerujo-utviklerne + er ikke assosierte med XMR.TO og kan ikke hjelpe deg med deres tjeneste.

+

XMR.TO vekslingskurs

+

På \"Mengde\" skjermen vil du bli vist de nåværende parametrene til XMR.TO-tjenesten. Disse + inkluderer den nåværende vekslingskursen så vel som nedre og øvre BTC-grenser. Vær oppmerksom på at + kursen ikke er garantert på dette punktet. Du vil også se + den øvre grensa for at BTC-transaksjonen skal gå igjennom uten å vente på + XMR-bekreftelser (se XMR.TO-FAQen for fler detaljer). Legg merke til at XMR.TO + ikke har noen ekstra avgifter - hvor kult er ikke det?

+

XMR.TO ordre

+

På \"Bekreft\" skjermen, vil du se den faktiske XMR.TO ordren. Denne ordren er gyldig for + en begrensa tid - du legger kanskje til en nedtelling på \"Bruk\" knappen. Veklingskursen kan være + enn den veiledende kursen vist på de tidligere skjermene.

+

XMR.TO hemmelig nøkkel

+

Fordi Monerujo bare håndterer XMR delen av transaksjonen din, kan din XMR.TO hemmelige nøkkel + bli brukt til å spore BTC-transaksjonen på XMR.TO sine hjemmesider.

+

Vær oppmerksom på at denne nøkkelen kun er tilgjengelig for 24-timer etter transaksjonen + har blitt utført!

+

XMR.TO nedtelling!

+

Når nedtellinga når null, må du få en ny kvote fra XMR.TO ved å gå tilbake til + det tidligere steget og komme tilbake til \"Bekreft\" skjermen.

+ ]]>
+ +
diff --git a/app/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml new file mode 100644 index 0000000000..29f48de300 --- /dev/null +++ b/app/src/main/res/values-nb/strings.xml @@ -0,0 +1,310 @@ + + Lommebok + + Testnett + Om + Personvernserklæring + + Del + Hjelp + Detaljer + Motta + Gi nytt navn … + Arkiver + Backup + [Forandre passord] + + Fortsett å skrive … + Meh … + Kom igjen, du kan gjøre det bedre! + Nesten der … + Å ja, h4x0r stil! + + Lommebøker + Credits + OK + Avbryt + Lukk + Trykk for detaljert informasjon + + Sendt suksessfullt! + Ferdig + + Trykk for QR kode + Høyere prioritet = høyere avgifter + + BTC betaling tilgjengelig, trykk for mer info. + CrAzYpass tilgjengelig, trykk for mer info. + + Du skrev inn en Bitcoin addresse.
+ Du vil sende XMR og mottakeren vil få BTC gjennom XMR.TO tjenesten. + ]]>
+ + XMR.TO Ordre + %1$s BTC + + Bekreftelse venter + Betaling venter + XMR.TO error (%1$s) + BTC sendt! + Spør … + + Du kan sende %1$s — %2$s BTC.
+ XMR.TO gir deg en vekslingskurs på %3$s BTC akkurat nå. + ]]>
+ Mengder opp til %1$s BTC vil bli sendt umiddelbart! + ]]> + + Saldo: %2$s BTC (%1$s XMR) + + Betalings ID integrert + Forbereder din transaksjon + + Lager XMR.TO ordre + Spør etter XMR.TO ordre + Forbereder Monero transaksjon + + Spør etter xmr.to parametre + + XMR.TO ERROR + Kode: %1$d + + Trykk for å prøve igjen + Nå sitter vi fast her! + Ops, det ser ikke ut til at XMR.TO er tilgjengelig for øyeblikket! + + %1$s BTC = %2$s XMR + (Rate: %1$s BTC/XMR) + + Avansert: + + Besøk xmr.to for støtte og sporing + Hemmelig nøkkel\nXMR.TO + XMR.TO Hemmelig nøkkel + BTC destinasjonsadresse + Mengde + + Transaksjons-ID + Destinasjonsadresse + Betalings-ID + Notater + + Backup pågår + Arkivering pågår + Nytt navn gis + Sjekker daemon-tilkobling + [Passordforandring i gang] + + Gjør ting ferdig …\nDette kan ta si tid! + + Backup feila! + Arkivering feila! + Kunne ikke gi nytt navn! + [Passordforandring feila!] + [Passord forandra] + + Node + ([<bruker>:<pass>@]<daemon>[:<port>]) + Laster lommebok … + Lommebok lagra + Lommeboklagring feila! + Kobler til … + Node-tiklobling feila!\nSjekk brukernavn/passord + Node-tilkobling tok for lang tid!\nPrøv på nytt eller med en annen. + Noden er ugyldig!\nPrøv en annen. + Kan ikke nå node!\nPrøv på nytt eller med en annen. + + Kobla fra + + Transaksjon feila: %1$s + + Du venta for lenge, min venn! + + Jeg er fortsatt opptatt med din forrige lommebok … + + Gi nytt navn til %1$s + + [Nytt passord for %1$s] + [Gjenta passord for %1$s] + Passord for %1$s + [You can also open wallet using fingerprint.\nPlease touch sensor.] + Bekreft passord + [Fingerprint not recognized. Try again.] + Feil passord! + Lommebok eksisterer ikke! + Daemon-adresse må være gitt! + Lommebok matcher ikke valgt nett + + (Bare se) + + Motta + Gi + + + %1$s XMR ubekrefta + + monerujo tjeneste + + Synkronisert: + Gjenværende blokker + Skanner: + + Ekstern lagring er ikke skrivbar! Panikk! + Vi trenger virkelig de eksternlagrings-rettighetene! + Ikke noe kamera = ikke noe QR-skanning! + + View-nøkkel + Offentlig adresse + XMR.TO nøkkel + View-nøkkel kopiert til utklippstavle! + XMR.TO-nøkkel kopiert til utklippstavle! + Lommebokadresse kopiert til utklippstavle! + Transaksjons-ID kopiert til utklippstavle! + Kopiering skrudd av for sikkerhetsgrunner! + + Kan ikke hente vekslingskurs!\nBruk XMR/XMR eller prøv igjen + + Lag lommebok + Lommeboknavn + Lommebokpassord + [Allow to open wallet using fingerprint] + [Fingerprint Authentication +

With fingerprint authentication enabled, you can view wallet balance and receive funds + without entering password.

+

But for additional security, monerujo will still require you to enter password when + viewing wallet details or sending funds.

+ Security Warning +

Finally, monerujo wants to remind you that anyone who can get your fingerprint will be + able to peep into your wallet balance.

+

For instance, a malicious user around you can open your wallet when you are asleep.

+ Are you sure to enable this function? + ]]>]
+ [Passordene stemmer ikke overens] + [Passord kan ikke være tomt] + Lag meg en lommebok! + Jeg har notert informasjonen ovenfor! + + Gi meg et navn! + Lommebok eksisterer! + Kan ikke begynne med . + Lager lommebok + Lommebok lagd + Klarte ikke å lage lommebok + + Skriv inn nummer eller dato (ÅÅÅÅ-MM-DD) + + Nøkler + Ny + Seed + View + + Offentlig adresse + View-nøkkel + Spend-nøkkel + 25-ord mnemonisk seed + Gjenopprettelseshøyde- eller dato (ÅÅÅÅ-MM-DD) + + Offentlig adresse + View-nøkkel + Spend-nøkkel + Mnemonisk seed + [Lommebokfiler gjenopprettelsespassord] + + Skriv inn gyldig nøkkel + Skriv inn gyldig adresse + Skriv inn ditt 25-ord lange seed + + %1$s (veiledende) + + Mottakers BTC eller XMR adresse + Betalings-ID (valgfritt) + 0,00 + Privat notat (valgfritt) + Generer + Skann + Bruk mine søte moneroj + Bruk mine søte moneroj (%1$s) + Ikke en QR-kode + Ikke en gyldig betalings-QR-kode + Ikke en gyldig adresse + Send + Saldo: %1$s XMR + Adresse + Mengde + Innstillinger + Bekreft + Ferdig + + Antall + Avgift (XMR) + Avgift + Totalt (XMR) + Totalt + + %1$s XMR + +%1$s avgift + + Error med å lage transaksjon + + - Avgift %1$s + (%1$s) + feila + - %1$s + + %1$s + + Tidsstempel + TX ID + TX-nøkkel + Destinasjon + Destinasjon\n(BTC) + Betalings-ID + Blokk + Mengde + Mengde\n(BTC) + Avgift + Overføringer + Notater + (valgfritt) + Lagre + Lagra notater feila + Transaksjonsdetaljer + + VENTENDE + FEILA + + Betalings-ID (valgfritt) + Mengde + Kunne ikke åpne lommebok! + 16 eller 64 heks-karakterer (0–9,a–f) + Må være tom med integrert adresse + + Maks. %1$s + Min. 0 + XMR ikke et tall + + Motta + + Sensitive data vil nå bli vist.\nSe over skulderen din! + Jeg er trygg + Ta meg tilbake! + Detaljer + + Lommeboka vil bli backa opp og så sletta! + Ja, gjør det! + Nei takk! + + + Prioritet Standard + Prioritet Lav + Prioritet Middels + Prioritet Høy + + + Lag ny lommebok + Gjenoprett bare-se lommebok + Gjenoprett lommebok fra private nøkler + Gjenoprett lommebok fra 25-ord seed +
diff --git a/app/src/main/res/values-zh-rTW/about.xml b/app/src/main/res/values-zh-rTW/about.xml index 55b4f7cf00..9457bf4f5b 100644 --- a/app/src/main/res/values-zh-rTW/about.xml +++ b/app/src/main/res/values-zh-rTW/about.xml @@ -1,6 +1,5 @@ - 關於 關閉 I am monerujo 版本 %1$s (%2$d) diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 7f7ebb1e68..a351606d6e 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -34,6 +34,7 @@ 較高優先權 = 較高手續費 BTC付款已啟用, 點選我獲得更多資訊 + CrAzYpass已啟用, 點選我獲得更多資訊 你已輸入Bitcoin地址
@@ -42,14 +43,8 @@ XMR.TO訂單 - 發送中 %1$s BTC - 金鑰: - 地址: - 狀態: - %1$s BTC - 等待確認中 等待付款中 @@ -88,16 +83,11 @@ 進階選項: - 點選查看詳細資訊 參訪 xmr.to 以支援 & 追蹤 - 查看 TX 資料以獲得更多資訊 私鑰\nXMR.TO XMR.TO 私鑰 目的地 BTC 地址 金額 - 建立 XMR.TO 訂單 - - 點選以重試 交易ID 收款地址 @@ -112,24 +102,15 @@ 正在關閉錢包 …\n可能會花費些許時間! - 備份成功 備份失敗! - 封存成功 封存失敗! - 刪除失敗! 重新命名失敗! 密碼更改失敗! 密碼更改成功 節點 ([<名稱>:<密碼>@]<節點>[:<port>]) - 網路選擇 - StageNet - TestNet - 主網路 - 載入錢包列表 載入錢包 … - 儲存錢包 錢包已儲存 儲存錢包失敗! 連接中 … @@ -138,12 +119,9 @@ 節點無效!\n請試試其他節點。 無法連接至節點!\n請試試其他節點。 - 處理中 … 中斷連接 - 交易已發送! 交易失敗: %1$s - 無法建立交易! 等待時間過長! @@ -154,38 +132,27 @@ 為 %1$s 設定新密碼 重複輸入 %1$s 的密碼 %1$s 的密碼 + 你也可以使用指紋來開啟錢包。\n請輕觸你的指紋感應器。 確認密碼 + 無法辨識的指紋,請再試一次。 密碼錯誤! 錢包不存在! - 這不是錢包! 必需要設定節點位置! 錢包不符合選擇的網路 - 無法連接至節點! 請稍後重試。 - 有東西出錯了! (唯讀) 接收 發送 - 金額 - 日期 + %1$s 未確認的 XMR - 交易 - 節點已連接! monerujo 服務 - monerujo 服務運行中 - monerujo 服務已終止 - monerujo 服務 - monerujo 服務已連接 - monerujo 服務已中斷 已同步區塊: 剩餘區塊 掃描中: - 問題 外部儲存空間無法寫入! 我們真的很需要你的外部儲存空間權限! 沒有相機 = 無法使用QR碼掃描! @@ -197,8 +164,6 @@ XMR.TO 金鑰已複製至剪貼簿! 錢包地址已複製至剪貼簿! 交易ID 已複製至剪貼簿! - 選取種子碼因安全性因素已停用選取! - 花費金鑰因安全性因素已停用選取! 因安全性因素已停用複製功能! 無法取得匯率!\n使用 XMR/XMR 或重試 @@ -206,16 +171,21 @@ 建立錢包 錢包名稱 錢包密碼 + 允許使用指紋開啟錢包 + 指紋驗證 +

啟用指紋驗證後,您可以觀看錢包餘額並接收資金,而無需輸入密碼。

+

但為了提高安全性,monerujo 仍然會要求您在觀看錢包詳細資訊或發送資金時輸入密碼。

+ 安全警告 +

最後,monerujo 想提醒您,任何可以取得您指紋的人都能夠窺視您的錢包餘額。

+

例如,您周遭的惡意使用者可以趁您睡著時使用您的指紋開啟錢包。

+ 您確定要啟用本功能嗎? + ]]>
密碼不符 密碼不得空白 建立錢包! - 記憶種子碼 我已抄寫以上資訊! - 備份 - 匯出金鑰 - 刪除 - 取個名稱! 錢包已存在! 無法使用以.作為開頭 @@ -236,13 +206,10 @@ 25字記憶種子碼 從區塊高度或日期(YYYY-MM-DD)回復 - 錢包 - 密碼 公開地址 查看金鑰 花費金鑰 記憶種子碼 - 回復高度: 錢包檔回復密碼 輸入有效的金鑰 @@ -255,20 +222,13 @@ 付款ID (選填) 0.00 註記 (選填) - Tx優先權 - Mixin - Sweep 產生 掃描 - 準備 - Dispose (復原) 發送我的 Moneroj 發送我的 Moneroj (%1$s) - 最後步驟 - 確認! 這不是QR碼 這不是有效的付款QR碼 這不是有效的地址 - 正在準備交易 發送 餘額: %1$s XMR 地址 @@ -276,13 +236,10 @@ 設定 確認 完成 - 總結 - 金額 > 餘額 金額 手續費 (XMR) 手續費 - Dust 總計 (XMR) 總計 @@ -291,18 +248,14 @@ 建立交易錯誤 - 內含 %1$s 手續費 - 手續費 %1$s (%1$s) 失敗 - %1$s + %1$s - 狀態 - 地址 時間戳記 TX ID - TX ID\n(BTC) TX金鑰 收款地址 收款地址\n(BTC) @@ -313,30 +266,20 @@ 手續費 轉帳 附註 - 複製至剪貼簿 - 已複製至剪貼簿 - 交易明細 (選填) 儲存 - 附註已儲存 附註儲存失敗 交易明細 等待確認中 失敗 - 顯示QR碼 - 產生 付款ID (選填) 金額 - XMR 無法開啟錢包! 16 或 64 Hex 字元 (0–9,a–f) 使用整合地址時必須為空白 - 使用BTC地址時必須為空白 - 必須大於0 - 輸入數值 最大值 %1$s 最小值 0 輸入的XMR不是個數字 diff --git a/app/src/main/res/values/about.xml b/app/src/main/res/values/about.xml index 8ad0bb09ac..d7e327115e 100644 --- a/app/src/main/res/values/about.xml +++ b/app/src/main/res/values/about.xml @@ -1,6 +1,5 @@ - About Close I am monerujo Version %1$s (%2$d) diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 1c41294b34..d06d6d41b8 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -8,14 +8,11 @@ #FFFF6105 #FFF0006B - #FFFFD700 - #9B9B9B #FF417505 #FFFF6105 - #cc5100 #ffffff #000000 #1F4E97 @@ -27,15 +24,9 @@ #FF616161 - #cc5100 #61221A - #dcdcdc - #ffffff - #2B4868 @color/gradientPink - #F8CC5A - #ffffff diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index b00382b68c..d12207148c 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,15 +1,7 @@ - 16dp - 16dp - 260dp - - 16dp - 129dp - @dimen/abc_text_size_title_material_toolbar - 12dp 16dp 24dp diff --git a/app/src/main/res/values/integers.xml b/app/src/main/res/values/integers.xml index 68bd3b3308..a6b3daec93 100644 --- a/app/src/main/res/values/integers.xml +++ b/app/src/main/res/values/integers.xml @@ -1,5 +1,2 @@ - - 200 - 1000 - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 14490ed8f7..0eaccb09f8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,6 +1,5 @@ monerujo - monerujo Wallet Testnet @@ -37,6 +36,8 @@ BTC payment enabled, tap for more info. + CrAzYpass enabled, tap for more info. + You entered a Bitcoin address.
You'll send XMR and the receiver will get BTC using the XMR.TO service. @@ -44,14 +45,8 @@ XMR.TO Order - Sending %1$s BTC - Key: - Address: - Status: - %1$s BTC - Confirmation Pending Payment Pending @@ -90,16 +85,11 @@ Advanced: - Click for more details Visit xmr.to for support & tracking - See TX details for more details Secret Key\nXMR.TO XMR.TO Secret Key Destination BTC Address Amount - Creating XMR.TO Order - - Touch to retry Transaction ID Destination Address @@ -114,24 +104,18 @@ Wrapping things up …\nThis can take a while! - Backup successful Backup failed! - Archive successful Archive failed! - Delete failed! Rename failed! Change Password failed! Password changed Node ([<user>:<pass>@]<daemon>[:<port>]) - Net Selection - StageNet - TestNet - MainNet - Loading Wallet List + Stagenet + Testnet + Mainnet Loading Wallet … - Saving Wallet Wallet saved Wallet save failed! Connecting … @@ -140,12 +124,9 @@ Node invalid!\nTry another. Cannot reach node!\nTry again or another. - Working on it … Disconnected - Transaction sent! Transaction failed: %1$s - Could not create transaction! You waited too long my friend! @@ -156,39 +137,27 @@ New Passphrase for %1$s Repeat Passphrase for %1$s Password for %1$s + You can also open wallet using fingerprint.\nPlease touch sensor. Confirm Password + Fingerprint not recognized. Try again. Incorrect password! Wallet does not exist! - This is not a wallet! Daemon address must be set! Wallet does not match selected net - Cannot connect to daemon! Try again. - Something\'s wrong! (Watch Only) Receive Give - Amount - Date + %1$s XMR unconfirmed - XMR - Transactions - Daemon connected! monerujo Service - monerujo Service Running - monerujo Service Stopped - monerujo Service - monerujo Service Connected - monerujo Service Disconnected Synced: Blocks remaining Scanning: - Problems External Storage is not writable! Panic! We really need those External Storage permissions! No camera = No QR scanning! @@ -200,8 +169,6 @@ XMR.TO Key copied to clipboard! Wallet Address copied to clipboard! Transaction ID copied to clipboard! - Selecting seed disabled for security reasons! - Selecting spend key disabled for security reasons! Copy disabled for security reasons! Cannot get exchange rate!\nUse XMR/XMR or try again @@ -209,16 +176,24 @@ Create Wallet Wallet Name Wallet Passphrase + Allow to open wallet using fingerprint + Fingerprint Authentication +

With fingerprint authentication enabled, you can view wallet balance and receive funds + without entering password.

+

But for additional security, monerujo will still require you to enter password when + viewing wallet details or sending funds.

+ Security Warning +

Finally, monerujo wants to remind you that anyone who can get your fingerprint will be + able to peep into your wallet balance.

+

For instance, a malicious user around you can open your wallet when you are asleep.

+ Are you sure to enable this function? + ]]>
Passphrases do not match Passphrase may not be empty Make me a wallet already! - Mnemonic Seed I have noted the mnemonic seed - Backup - Export Keys - DELETE - Give me a name! Wallet exists! Cannot begin with . @@ -239,13 +214,10 @@ 25-Word Mnemonic Seed Restore Height or Date (YYYY-MM-DD) - Wallet - Password Public Address View Key Spend Key Mnemonic Seed - Restore Height: Wallet Files Restore Password Enter valid Key @@ -258,20 +230,13 @@ Payment ID (optional) 0.00 Private Notes (optional) - Tx Priority - Mixin - Sweep Generate Scan - Prepare - Dispose (Undo) Spend my sweet Moneroj Spend my sweet Moneroj (%1$s) - Last Step - Confirm! Not a QR Code Not a valid payment QR code Not a valid address - Preparing transaction Send Balance: %1$s XMR Address @@ -279,13 +244,10 @@ Settings Confirm Done - Summary - Amount > Funds Amount Fee (XMR) Fee - Dust Total (XMR) Total @@ -294,18 +256,14 @@ Create Transaction Error - incl. %1$s fee - Fee %1$s (%1$s) failed - %1$s + %1$s - Status - Address Timestamp TX ID - TX ID\n(BTC) TX Key Destination Destination\n(BTC) @@ -316,30 +274,20 @@ Fee Transfers Notes - Copy to Clipboard - Copied to Clipboard - Transaction Details (optional) Save - Notes saved Notes saved failed Transaction Details PENDING FAILED - Show me the QR Code - Generate Payment ID (optional) Amount - XMR Could not open wallet! 16 or 64 Hex characters (0–9,a–f) Must be empty with integrated address - Must be empty with bitcoin address - Must be > 0 - Enter value Max. %1$s Min. 0 XMR not a number diff --git a/build.gradle b/build.gradle index e1ac1575d8..2cdd145a00 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:3.1.1' + classpath 'com.android.tools.build:gradle:3.1.2' } } diff --git a/external-libs/monero/include/wallet2_api.h b/external-libs/monero/include/wallet2_api.h index d4e41c5aa3..617b6035a7 100644 --- a/external-libs/monero/include/wallet2_api.h +++ b/external-libs/monero/include/wallet2_api.h @@ -956,25 +956,25 @@ struct WalletManager virtual void setDaemonAddress(const std::string &address) = 0; //! returns whether the daemon can be reached, and its version number - virtual bool connected(uint32_t *version = NULL) const = 0; + virtual bool connected(uint32_t *version = NULL) = 0; //! returns current blockchain height - virtual uint64_t blockchainHeight() const = 0; + virtual uint64_t blockchainHeight() = 0; //! returns current blockchain target height - virtual uint64_t blockchainTargetHeight() const = 0; + virtual uint64_t blockchainTargetHeight() = 0; //! returns current network difficulty - virtual uint64_t networkDifficulty() const = 0; + virtual uint64_t networkDifficulty() = 0; //! returns current mining hash rate (0 if not mining) - virtual double miningHashRate() const = 0; + virtual double miningHashRate() = 0; //! returns current block target - virtual uint64_t blockTarget() const = 0; + virtual uint64_t blockTarget() = 0; //! returns true iff mining - virtual bool isMining() const = 0; + virtual bool isMining() = 0; //! starts mining with the set number of threads virtual bool startMining(const std::string &address, uint32_t threads = 1, bool background_mining = false, bool ignore_battery = true) = 0;