Compare commits

..

17 Commits

Author SHA1 Message Date
Philipp Crocoll
f2ca846093 1.07b-r0 offline 2019-10-21 19:29:37 +02:00
Philipp Crocoll
38cee50f34 Merge commit 'cc8cea00491016abea0332799e7f85072a076014' into nonet
# Resolved Conflicts:
#	src/KeePass.sln
#	src/Kp2aBusinessLogic/Kp2aBusinessLogic.csproj
#	src/Kp2aKeyboardBinding/Kp2aKeyboardBinding.csproj
#	src/keepass2android/Properties/AndroidManifest_nonet.xml
#	src/keepass2android/keepass2android.csproj
2019-10-21 10:42:39 +02:00
Philipp Crocoll
d45fd99235 manifest for 1.06g offline 2019-10-21 10:34:59 +02:00
Philipp Crocoll
05eea4aae1 don't show donation notice in Changelog when using the app for one of the first times. Disable link to playstore with additional storage options as required by Google. 2019-10-21 10:34:32 +02:00
Philipp Crocoll
8468049935 manifest for 1.06f release 2018-11-10 08:38:13 +01:00
Philipp Crocoll
7cef6c8566 Merge branch 'nonet' of https://github.com/PhilippC/keepass2android into nonet
# Conflicts:
#	src/keepass2android/Properties/AndroidManifest_nonet.xml
#	src/keepass2android/keepass2android.csproj
2018-11-08 05:23:10 +01:00
Philipp Crocoll
98f2a139e9 Merge remote-tracking branch 'remotes/origin/1.06' into nonet
# Conflicts:
#	src/keepass2android/Properties/AndroidManifest_nonet.xml
2018-11-08 04:55:44 +01:00
Philipp Crocoll
832d3b3a95 1.05d release for nonet 2018-06-23 09:07:47 +02:00
Philipp Crocoll
37867634cd Merge branch 'master' into nonet
Conflicts:
	src/keepass2android/Properties/AndroidManifest_nonet.xml
2018-06-18 13:08:07 +02:00
Philipp Crocoll
d9713f8e18 switch to using Release build type instead of ReleaseNoNet (separation no longer required because a custom branch exists for the offline variant) 2018-02-28 06:06:26 +01:00
Philipp Crocoll
c583b58cb9 adjust manifest version for 1.04b release 2018-02-27 06:06:35 +01:00
Philipp Crocoll
bfeaf5dbf5 Merge branch '1.04' into nonet
Conflicts:
	src/keepass2android/Properties/AndroidManifest_nonet.xml
2018-02-21 05:58:01 +01:00
Philipp Crocoll
0907fa5685 manifest for 1.03-nonet release 2017-12-02 15:30:04 +01:00
Philipp Crocoll
ff8dc76c75 Merge branch 'master' into nonet
Conflicts:
	docs/README.md
2017-12-02 14:25:37 +01:00
Philipp Crocoll
0b09e2790f remove online file storages from project file 2017-10-25 06:49:02 +02:00
Philipp Crocoll
781350aa5f manifest for 1.02 release 2017-10-25 06:24:01 +02:00
Philipp Crocoll
9716130336 remove references to libraries only required for online build, adjust build script and README 2017-10-25 06:23:53 +02:00
137 changed files with 3494 additions and 9467 deletions

3
.gitmodules vendored
View File

@@ -1,6 +1,9 @@
[submodule "src/SamsungPass"]
path = src/SamsungPass
url = https://github.com/PhilippC/Xamarin-Samsung-Pass.git
[submodule "src/netftpandroid"]
path = src/netftpandroid
url = https://github.com/PhilippC/netftpandroid.git
[submodule "src/java/argon2/phc-winner-argon2"]
path = src/java/argon2/phc-winner-argon2
url = https://github.com/P-H-C/phc-winner-argon2

View File

@@ -77,10 +77,6 @@ The KP2A keyboard is meant to quickly "paste" or "type" values from your databas
## Is it safe to store my kdbx file in the cloud?
While it may happen that someone gets access to your kdbx file in the cloud, there is still no need to worry: the purpose of encryption is to protect the data even in case someone gets the kdbx file! As long as you are using a safe master key, you're safe! [Key files](https://keepass.info/help/base/keys.html#keyfiles) can help with securing the database even more.
## Doesn't Keepass2Android create automatic backups?
Yes and no. Yes: Keepass2Android stores the last successfully opened file as a read-only backup locally on the phone (unless you disable this is in the settings). This should make sure that even if the file gets destroyed during a save operation or gets deleted by accident, you should always have a version that can be opened. (Don't mix this up with the internal file cache which is not meant as a backup and can easily be overwritten even with a corrupt file. This internal file cache is meant for providing writable access even when the original file is not reachable, e.g. when you're offline.)
No: The local backup has two shortcomings: It is only one backup and does not allow to revert to older versions. So if you deleted an entry from the database, it might be deleted in the local backup soon as well. The even more important shortcoming is that it is just a local backup. It won't help when your phone gets lost or broken. Please create additional backups on seperate storage!
## How do I backup the database?
If you have stored your database on the cloud, you might rely on your cloud storage providers backups. Make sure they allow you to revert to older revisions in case the file gets corrupted for some reason.
If you are working with a local database file, make sure you create regular backups. I suggest you have an aumotated mechanism, e.g. with FolderSync (Lite) which can copy local files from your device to other locations, e.g. your PC in a local network. You can also use USB or tools like MyPhoneExploror to transfer data to your PC. Or, you use a removable storage like an SD card which you keep in a safe place after making the backup.

View File

@@ -54,7 +54,7 @@ Please also add a few strings in your resource files (e.g. strings.xml) with the
These strings will be displayed to the user when KP2A asks if access should be granted.
## Modifying the entry view
You can add menu options for the full entry or for individual fields of the entry when displayed to the user. This is done, for example, by the QR plugin ([https://play.google.com/store/apps/details?id=keepass2android.plugin.qr](https://play.google.com/store/apps/details?id=keepass2android.plugin.qr)).
You can add menu options for the full entry or for individual fields of the entry when displayed to the user. This is done, for example, by the QR plugin ([https://play.google.com/store/apps/details?id=keepass2android.plugin.qr](https___play.google.com_store_apps_details_id=keepass2android.plugin.qr)).
In addition, it is even possible to add new fields or modify existing fields. Please see the sample plugin "PluginA" in the KP2A repository for a simple example on how to do this:
[https://keepass2android.codeplex.com/SourceControl/latest#src/java/PluginA/src/keepass2android/plugina/PluginAActionReceiver.java](https://keepass2android.codeplex.com/SourceControl/latest#src/java/PluginA/src/keepass2android/plugina/PluginAActionReceiver.java)

View File

@@ -13,10 +13,9 @@ Beta-releases can be obtained by opting in to the [Beta testing channel](https:/
# How can I contribute?
* Help to translate Keepass2Android into your language or improve translations at [our Crowdin page](http://crowdin.net/project/keepass2android)
* Add features by [creating a plugin](How-to-create-a-plug-in_.md) or creating a pull request. You might want to contact me before you start working so I can coordinate efforts.
* [Become a GitHub sponsor to boost 🚀 development](https://github.com/sponsors/PhilippC)
* [Make a donation](http://philipp.crocoll.net/donate.php)
# How do I learn more?
Please see the [documentation](Documentation.md).
[![Build Status](https://www.bitrise.io/app/43a23ab54dee9f7e/status.svg?token=2vryTsMQzTX3XRPikhgRwA&branch=master)](https://www.bitrise.io/app/43a23ab54dee9f7e)
[![Build Status](https://www.bitrise.io/app/43a23ab54dee9f7e/status.svg?token=2vryTsMQzTX3XRPikhgRwA&branch=nonet)](https://www.bitrise.io/app/43a23ab54dee9f7e)

View File

@@ -12,7 +12,6 @@
<FileAlignment>512</FileAlignment>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>

View File

@@ -1,48 +0,0 @@
Additions allow you to add arbitrary C# to the generated classes
before they are compiled. This can be helpful for providing convenience
methods or adding pure C# classes.
== Adding Methods to Generated Classes ==
Let's say the library being bound has a Rectangle class with a constructor
that takes an x and y position, and a width and length size. It will look like
this:
public partial class Rectangle
{
public Rectangle (int x, int y, int width, int height)
{
// JNI bindings
}
}
Imagine we want to add a constructor to this class that takes a Point and
Size structure instead of 4 ints. We can add a new file called Rectangle.cs
with a partial class containing our new method:
public partial class Rectangle
{
public Rectangle (Point location, Size size) :
this (location.X, location.Y, size.Width, size.Height)
{
}
}
At compile time, the additions class will be added to the generated class
and the final assembly will a Rectangle class with both constructors.
== Adding C# Classes ==
Another thing that can be done is adding fully C# managed classes to the
generated library. In the above example, let's assume that there isn't a
Point class available in Java or our library. The one we create doesn't need
to interact with Java, so we'll create it like a normal class in C#.
By adding a Point.cs file with this class, it will end up in the binding library:
public class Point
{
public int X { get; set; }
public int Y { get; set; }
}

View File

@@ -1,70 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}</ProjectGuid>
<ProjectTypeGuids>{10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TemplateGuid>{77efb91c-a7e9-4b0e-a7c5-31eeec3c6d46}</TemplateGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BiometricBinding</RootNamespace>
<AssemblyName>BiometricBinding</AssemblyName>
<FileAlignment>512</FileAlignment>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
<AndroidClassParser>class-parse</AndroidClassParser>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>portable</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>portable</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Android" />
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="Jars\AboutJars.txt" />
<None Include="Additions\AboutAdditions.txt" />
<LibraryProjectZip Include="Jars\biometric-1.0.0-rc02.aar" />
</ItemGroup>
<ItemGroup>
<TransformFile Include="Transforms\Metadata.xml" />
<TransformFile Include="Transforms\EnumFields.xml" />
<TransformFile Include="Transforms\EnumMethods.xml" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Xamarin.AndroidX.Fragment">
<Version>1.0.0-preview02</Version>
</PackageReference>
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.Bindings.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -1,24 +0,0 @@
This directory is for Android .jars.
There are 2 types of jars that are supported:
== Input Jar ==
This is the jar that bindings should be generated for.
For example, if you were binding the Google Maps library, this would
be Google's "maps.jar".
Set the build action for these jars in the properties page to "InputJar".
== Reference Jars ==
These are jars that are referenced by the input jar. C# bindings will
not be created for these jars. These jars will be used to resolve
types used by the input jar.
NOTE: Do not add "android.jar" as a reference jar. It will be added automatically
based on the Target Framework selected.
Set the build action for these jars in the properties page to "ReferenceJar".

View File

@@ -1,30 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Android.App;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("BiometricBinding")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("BiometricBinding")]
[assembly: AssemblyCopyright("Copyright © 2018")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: ComVisible(false)]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,14 +0,0 @@
<enum-field-mappings>
<!--
This example converts the constants Fragment_id, Fragment_name,
and Fragment_tag from android.support.v4.app.FragmentActivity.FragmentTag
to an enum called Android.Support.V4.App.FragmentTagType with values
Id, Name, and Tag.
<mapping jni-class="android/support/v4/app/FragmentActivity$FragmentTag" clr-enum-type="Android.Support.V4.App.FragmentTagType">
<field jni-name="Fragment_name" clr-name="Name" value="0" />
<field jni-name="Fragment_id" clr-name="Id" value="1" />
<field jni-name="Fragment_tag" clr-name="Tag" value="2" />
</mapping>
-->
</enum-field-mappings>

View File

@@ -1,13 +0,0 @@
<enum-method-mappings>
<!--
This example changes the Java method:
android.support.v4.app.Fragment.SavedState.writeToParcel (int flags)
to be:
android.support.v4.app.Fragment.SavedState.writeToParcel (Android.OS.ParcelableWriteFlags flags)
when bound in C#.
<mapping jni-class="android/support/v4/app/Fragment.SavedState">
<method jni-name="writeToParcel" parameter="flags" clr-enum-type="Android.OS.ParcelableWriteFlags" />
</mapping>
-->
</enum-method-mappings>

View File

@@ -1,9 +0,0 @@
<metadata>
<!--
This sample removes the class: android.support.v4.content.AsyncTaskLoader.LoadTask:
<remove-node path="/api/package[@name='android.support.v4.content']/class[@name='AsyncTaskLoader.LoadTask']" />
This sample removes the method: android.support.v4.content.CursorLoader.loadInBackground:
<remove-node path="/api/package[@name='android.support.v4.content']/class[@name='CursorLoader']/method[@name='loadInBackground']" />
-->
</metadata>

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -13,7 +13,6 @@
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
<AndroidClassParser>class-parse</AndroidClassParser>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -85,6 +84,9 @@
<ItemGroup>
<ProjectReference Include="..\PCloudBindings\PCloudBindings.csproj" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okhttp-digest-1.7.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\msa-auth-0.8.6\classes-msa-auth.jar" />
</ItemGroup>
@@ -139,19 +141,16 @@
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\jackson-core-2.7.4.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okhttp-3.9.0.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okio-1.13.0.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedJar Include="Jars\dropbox-core-sdk-3.1.1.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\gson-2.8.1.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okhttp-4.2.2.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okio-2.2.2.jar" />
</ItemGroup>
<ItemGroup>
<EmbeddedReferenceJar Include="Jars\okhttp-digest-2.0.jar" />
</ItemGroup>
</Project>

View File

@@ -12,7 +12,6 @@
<FileAlignment>512</FileAlignment>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>

View File

@@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29418.71
# Visual Studio 15
VisualStudioVersion = 15.0.27130.2010
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeePassLib2Android", "KeePassLib2Android\KeePassLib2Android.csproj", "{545B4A6B-8BBA-4FBE-92FC-4AC060122A54}"
EndProject
@@ -13,8 +13,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kp2aBusinessLogic", "Kp2aBu
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TwofishCipher", "TwofishCipher\TwofishCipher.csproj", "{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JavaFileStorageBindings", "JavaFileStorageBindings\JavaFileStorageBindings.csproj", "{48574278-4779-4B3A-A9E4-9CF1BC285D0B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AndroidFileChooserBinding", "AndroidFileChooserBinding\AndroidFileChooserBinding.csproj", "{3C0F7FE5-639F-4422-A087-8B26CF862D1B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KP2AKdbLibraryBinding", "KP2AKdbLibraryBinding\KP2AKdbLibraryBinding.csproj", "{70D3844A-D9FA-4A64-B205-A84C6A822196}"
@@ -27,8 +25,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SamsungPass", "SamsungPass\
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PCloudBindings", "PCloudBindings\PCloudBindings.csproj", "{2DB80C77-D46F-4970-B967-E9FFA9B2AC2E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BiometricBinding", "BiometricBinding\BiometricBinding.csproj", "{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -111,8 +107,8 @@ Global
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.Release|Win32.Build.0 = Release|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.Release|x64.ActiveCfg = Release|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.Release|x64.Build.0 = Release|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Any CPU.ActiveCfg = Debug|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Any CPU.Build.0 = Debug|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Any CPU.ActiveCfg = ReleaseNoNet|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Any CPU.Build.0 = ReleaseNoNet|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Mixed Platforms.ActiveCfg = ReleaseNoNet|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Mixed Platforms.Build.0 = ReleaseNoNet|Any CPU
{A8779D4D-7C49-4C2F-82BD-2CDC448391DA}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
@@ -189,8 +185,8 @@ Global
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.Release|Win32.ActiveCfg = Release|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.Release|x64.ActiveCfg = Release|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Any CPU.ActiveCfg = ReleaseNoNet|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Any CPU.Build.0 = ReleaseNoNet|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Mixed Platforms.ActiveCfg = ReleaseNoNet|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Mixed Platforms.Build.0 = ReleaseNoNet|Any CPU
{3C0F7FE5-639F-4422-A087-8B26CF862D1B}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
@@ -207,8 +203,8 @@ Global
{70D3844A-D9FA-4A64-B205-A84C6A822196}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.Release|Win32.ActiveCfg = Release|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.Release|x64.ActiveCfg = Release|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Any CPU.ActiveCfg = ReleaseNoNet|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Any CPU.Build.0 = ReleaseNoNet|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Mixed Platforms.ActiveCfg = ReleaseNoNet|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Mixed Platforms.Build.0 = ReleaseNoNet|Any CPU
{70D3844A-D9FA-4A64-B205-A84C6A822196}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
@@ -225,8 +221,8 @@ Global
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.Release|Win32.ActiveCfg = Release|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.Release|x64.ActiveCfg = Release|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Any CPU.ActiveCfg = ReleaseNoNet|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Any CPU.Build.0 = ReleaseNoNet|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Mixed Platforms.ActiveCfg = ReleaseNoNet|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Mixed Platforms.Build.0 = ReleaseNoNet|Any CPU
{3DA3911E-36DE-465E-8F15-F1991B6437E5}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
@@ -297,30 +293,6 @@ Global
{2DB80C77-D46F-4970-B967-E9FFA9B2AC2E}.ReleaseNoNet|Win32.Build.0 = ReleaseNoNet|Any CPU
{2DB80C77-D46F-4970-B967-E9FFA9B2AC2E}.ReleaseNoNet|x64.ActiveCfg = ReleaseNoNet|Any CPU
{2DB80C77-D46F-4970-B967-E9FFA9B2AC2E}.ReleaseNoNet|x64.Build.0 = ReleaseNoNet|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Win32.ActiveCfg = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|Win32.Build.0 = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|x64.ActiveCfg = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Debug|x64.Build.0 = Debug|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Any CPU.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Win32.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|Win32.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|x64.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.Release|x64.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Mixed Platforms.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Mixed Platforms.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
{2B1DE455-BF8E-4F8A-87BE-AE7EA354F3E4}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@@ -375,16 +375,13 @@ namespace KeePassLib.Serialization
// See also KeePassKdb2x3.Export (KDBX 3.1 export module)
uint minVersionForKeys = m_pwDatabase.MasterKey.UserKeys.Select(key => key.GetMinKdbxVersion()).Max();
uint minRequiredVersion = Math.Max(minVersionForKeys, m_uFileVersion); //don't save a version lower than what we read
AesKdf kdfAes = new AesKdf();
if(!kdfAes.Uuid.Equals(m_pwDatabase.KdfParameters.KdfUuid))
return Math.Max(FileVersion32, minRequiredVersion);
return Math.Max(FileVersion32, minVersionForKeys);
if(m_pwDatabase.PublicCustomData.Count > 0)
return Math.Max(FileVersion32, minRequiredVersion);
return Math.Max(FileVersion32, minVersionForKeys);
@@ -404,9 +401,9 @@ namespace KeePassLib.Serialization
gh(m_pwDatabase.RootGroup);
m_pwDatabase.RootGroup.TraverseTree(TraversalMethod.PreOrder, gh, eh);
if(bCustomData)
return Math.Max(FileVersion32, minRequiredVersion);
return Math.Max(FileVersion32, minVersionForKeys);
return Math.Max(FileVersion32_3, minRequiredVersion); ; // KDBX 3.1 is sufficient
return Math.Max(FileVersion32_3, minVersionForKeys); ; // KDBX 3.1 is sufficient
}
private void ComputeKeys(out byte[] pbCipherKey, int cbCipherKey,

View File

@@ -333,13 +333,12 @@ namespace keepass2android.Io
public void CommitWrite()
{
ParcelFileDescriptor fileDescriptor = _ctx.ContentResolver.OpenFileDescriptor(Android.Net.Uri.Parse(_path), "rwt");
ParcelFileDescriptor fileDescriptor = _ctx.ContentResolver.OpenFileDescriptor(Android.Net.Uri.Parse(_path), "w");
using (var outputStream = new FileOutputStream(fileDescriptor.FileDescriptor))
{
byte[] data = _memoryStream.ToArray();
outputStream.Write(data);
outputStream.Write(data, 0, data.Length);
outputStream.Close();
}
fileDescriptor.Close();

View File

@@ -3,12 +3,12 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Net.FtpClient;
using System.Reflection;
using System.Threading;
using Android.Content;
using Android.OS;
using Android.Preferences;
using FluentFTP;
using KeePassLib;
using KeePassLib.Serialization;
using KeePassLib.Utility;
@@ -17,6 +17,73 @@ namespace keepass2android.Io
{
public class NetFtpFileStorage: IFileStorage
{
class RetryConnectFtpClient : FtpClient
{
protected override FtpClient CloneConnection()
{
RetryConnectFtpClient conn = new RetryConnectFtpClient();
conn.m_isClone = true;
foreach (PropertyInfo prop in GetType().GetProperties())
{
object[] attributes = prop.GetCustomAttributes(typeof(FtpControlConnectionClone), true);
if (attributes != null && attributes.Length > 0)
{
prop.SetValue(conn, prop.GetValue(this, null), null);
}
}
// always accept certficate no matter what because if code execution ever
// gets here it means the certificate on the control connection object being
// cloned was already accepted.
conn.ValidateCertificate += new FtpSslValidation(
delegate(FtpClient obj, FtpSslValidationEventArgs e)
{
e.Accept = true;
});
return conn;
}
private static T DoInRetryLoop<T>(Func<T> func)
{
double timeout = 30.0;
double timePerRequest = 1.0;
var startTime = DateTime.Now;
while (true)
{
var attemptStartTime = DateTime.Now;
try
{
return func();
}
catch (System.Net.Sockets.SocketException e)
{
if ((e.ErrorCode != 10061) || (DateTime.Now > startTime.AddSeconds(timeout)))
{
throw;
}
double secondsSinceAttemptStart = (DateTime.Now - attemptStartTime).TotalSeconds;
if (secondsSinceAttemptStart < timePerRequest)
{
Thread.Sleep(TimeSpan.FromSeconds(timePerRequest - secondsSinceAttemptStart));
}
}
}
}
public override void Connect()
{
DoInRetryLoop(() =>
{
base.Connect();
return true;
}
);
}
}
public struct ConnectionSettings
{
public FtpEncryptionMode EncryptionMode {get; set; }
@@ -80,8 +147,9 @@ namespace keepass2android.Io
public NetFtpFileStorage(Context context, ICertificateValidationHandler app)
{
_app = app;
_app = app;
traceStream = new MemoryStream();
FtpTrace.AddListener(new System.Diagnostics.TextWriterTraceListener(traceStream));
}
@@ -104,9 +172,9 @@ namespace keepass2android.Io
{
using (FtpClient client = GetClient(ioc))
{
string localPath = IocToLocalPath(ioc);
string localPath = IocToUri(ioc).PathAndQuery;
if (client.DirectoryExists(localPath))
client.DeleteDirectory(localPath);
client.DeleteDirectory(localPath, true);
else
client.DeleteFile(localPath);
}
@@ -137,8 +205,7 @@ namespace keepass2android.Io
{
var settings = ConnectionSettings.FromIoc(ioc);
FtpClient client = new FtpClient();
client.RetryAttempts = 3;
FtpClient client = new RetryConnectFtpClient();
if ((settings.Username.Length > 0) || (settings.Password.Length > 0))
client.Credentials = new NetworkCredential(settings.Username, settings.Password);
else
@@ -183,22 +250,20 @@ namespace keepass2android.Io
path = path.Substring(settings.Length + 1);
}
Kp2aLog.Log("FTP: IocToUri out = " + scheme + "://" + path);
return new Uri(scheme + "://" + path);
return new Uri(scheme + "://" + path);
}
private string IocPathFromUri(IOConnectionInfo baseIoc, string uri)
private string IocPathFromUri(IOConnectionInfo baseIoc, Uri uri)
{
string basePath = baseIoc.Path;
string basePath = baseIoc.Path;
int schemeLength = basePath.IndexOf("://", StringComparison.Ordinal);
string scheme = basePath.Substring(0, schemeLength);
basePath = basePath.Substring(schemeLength + 3);
string baseSettings = basePath.Substring(0, basePath.IndexOf(ConnectionSettings.SettingsPostFix, StringComparison.Ordinal));
basePath = basePath.Substring(baseSettings.Length+1);
string baseHost = basePath.Substring(0, basePath.IndexOf("/", StringComparison.Ordinal));
string result = scheme + "://" + baseSettings + ConnectionSettings.SettingsPostFix + baseHost + uri; //TODO does this contain Query?
return result;
}
return scheme + "://" + baseSettings + ConnectionSettings.SettingsPostFix + baseHost + uri.AbsolutePath; //TODO does this contain Query?
}
public bool CheckForFileChangeFast(IOConnectionInfo ioc, string previousFileVersion)
@@ -217,7 +282,7 @@ namespace keepass2android.Io
{
using (var cl = GetClient(ioc))
{
return cl.OpenRead(IocToLocalPath(ioc), FtpDataType.Binary, 0);
return cl.OpenRead(IocToUri(ioc).PathAndQuery, FtpDataType.Binary, 0);
}
}
catch (FtpCommandException ex)
@@ -265,7 +330,7 @@ namespace keepass2android.Io
{
using (var client = GetClient(ioc))
{
client.CreateDirectory(IocToLocalPath(GetFilePath(ioc, newDirName)));
client.CreateDirectory(IocToUri(GetFilePath(ioc, newDirName)).PathAndQuery);
}
}
catch (FtpCommandException ex)
@@ -274,19 +339,14 @@ namespace keepass2android.Io
}
}
public static string IocToLocalPath(IOConnectionInfo ioc)
{
return WebUtility.UrlDecode(IocToUri(ioc).PathAndQuery);
}
public IEnumerable<FileDescription> ListContents(IOConnectionInfo ioc)
public IEnumerable<FileDescription> ListContents(IOConnectionInfo ioc)
{
try
{
using (var client = GetClient(ioc))
using (var client = GetClient(ioc))
{
List<FileDescription> files = new List<FileDescription>();
foreach (FtpListItem item in client.GetListing(IocToLocalPath(ioc),
foreach (FtpListItem item in client.GetListing(IocToUri(ioc).PathAndQuery,
FtpListOption.Modify | FtpListOption.Size | FtpListOption.DerefLinks))
{
@@ -300,7 +360,7 @@ namespace keepass2android.Io
DisplayName = item.Name,
IsDirectory = true,
LastModified = item.Modified,
Path = IocPathFromUri(ioc, item.FullName)
Path = IocPathFromUri(ioc, new Uri(item.FullName))
});
break;
case FtpFileSystemObjectType.File:
@@ -311,7 +371,7 @@ namespace keepass2android.Io
DisplayName = item.Name,
IsDirectory = false,
LastModified = item.Modified,
Path = IocPathFromUri(ioc, item.FullName),
Path = IocPathFromUri(ioc, new Uri(item.FullName)),
SizeInBytes = item.Size
});
break;
@@ -336,10 +396,10 @@ namespace keepass2android.Io
//is it very inefficient to connect for each description?
using (FtpClient client = GetClient(ioc))
{
string path = IocToLocalPath(ioc);
{
var uri = IocToUri(ioc);
string path = uri.PathAndQuery;
if (!client.FileExists(path) && (!client.DirectoryExists(path)))
throw new FileNotFoundException();
var fileDesc = new FileDescription()
@@ -451,7 +511,7 @@ namespace keepass2android.Io
{
using (var client = GetClient(ioc))
{
return client.OpenWrite(IocToLocalPath(ioc));
return client.OpenWrite(IocToUri(ioc).PathAndQuery);
}
}
@@ -520,7 +580,7 @@ namespace keepass2android.Io
{
_client = _fileStorage.GetClient(_ioc, false);
_stream = _client.OpenWrite(NetFtpFileStorage.IocToLocalPath(_iocTemp));
_stream = _client.OpenWrite(NetFtpFileStorage.IocToUri(_iocTemp).PathAndQuery);
return _stream;
}
catch (FtpCommandException ex)
@@ -535,11 +595,22 @@ namespace keepass2android.Io
{
Android.Util.Log.Debug("NETFTP","connected: " + _client.IsConnected.ToString());
_stream.Close();
_stream.Dispose();
_client.GetReply();
Android.Util.Log.Debug("NETFTP", "connected: " + _client.IsConnected.ToString());
_client.MoveFile(NetFtpFileStorage.IocToLocalPath(_iocTemp),
NetFtpFileStorage.IocToLocalPath(_ioc));
//make sure target file does not exist:
//try
{
if (_client.FileExists(NetFtpFileStorage.IocToUri(_ioc).PathAndQuery))
_client.DeleteFile(NetFtpFileStorage.IocToUri(_ioc).PathAndQuery);
}
//catch (FtpCommandException)
{
//TODO get a new clien? might be stale
}
_client.Rename(NetFtpFileStorage.IocToUri(_iocTemp).PathAndQuery,
NetFtpFileStorage.IocToUri(_ioc).PathAndQuery);
}
catch (FtpCommandException ex)

View File

@@ -204,7 +204,6 @@ namespace keepass2android.Io
private readonly string _specialFolder;
public IGraphServiceClient client;
public OneDrive2ItemLocation<OneDrive2PrefixContainerType> itemLocation;
public bool verbose;
public PathItemBuilder(string specialFolder)
{
@@ -214,7 +213,6 @@ namespace keepass2android.Io
public IDriveItemRequestBuilder getPathItem()
{
Kp2aLog.Log("getPathItem for " + itemLocation.ToString());
IDriveItemRequestBuilder pathItem;
if (!hasShare())
{
@@ -222,33 +220,20 @@ namespace keepass2android.Io
}
if ("me".Equals(itemLocation.Share.Id))
{
if (verbose) Kp2aLog.Log("Path share is me");
if (_specialFolder == null)
{
if (verbose) Kp2aLog.Log("No special folder. Use drive root.");
pathItem = client.Me.Drive.Root;
}
else
{
if (verbose) Kp2aLog.Log("Special folder = " + _specialFolder);
pathItem = client.Me.Drive.Special[_specialFolder];
}
if (itemLocation.LocalPath.Any())
{
if (verbose) Kp2aLog.Log("LocalPath = " + itemLocation.LocalPathString);
pathItem = pathItem.ItemWithPath(itemLocation.LocalPathString);
}
}
else
{
if (verbose) Kp2aLog.Log("Path share is not me");
if (!itemLocation.LocalPath.Any())
{
String webUrl = itemLocation.Share.WebUrl;
if (verbose) Kp2aLog.Log("Share WebUrl = " + webUrl);
var encodedShareId = CalculateEncodedShareId(webUrl);
return client.Shares[encodedShareId].Root;
}
@@ -264,7 +249,6 @@ namespace keepass2android.Io
Android.Util.Log.Debug("KP2A", "encodedShareId = " + encodedShareId);
pathItem = client.Shares[encodedShareId].Root;
*/
if (verbose) Kp2aLog.Log("Using driveId=" + itemLocation.DriveId + " and item id=" + itemLocation.LocalPath.Last().Id);
return client.Drives[itemLocation.DriveId].Items[itemLocation.LocalPath.Last().Id];
}
@@ -530,25 +514,18 @@ namespace keepass2android.Io
{
Task.Run(async () =>
{
PathItemBuilder pathItemBuilder = await GetPathItemBuilder(path);
return await
pathItemBuilder
.getPathItem()
.Content
.Request()
.PutAsync<DriveItem>(stream);
PathItemBuilder pathItemBuilder = await GetPathItemBuilder(path);
return await
pathItemBuilder
.getPathItem()
.Content
.Request()
.PutAsync<DriveItem>(stream);
}).Wait();
}
catch (Exception e)
{
Task.Run(async () =>
{
PathItemBuilder pathItemBuilder = await GetPathItemBuilder(path);
pathItemBuilder.verbose = true;
pathItemBuilder.getPathItem();
}).Wait();
throw convertException(e);
}
}
@@ -1051,6 +1028,9 @@ namespace keepass2android.Io
private async Task<string> CreateFilePathAsync(string parent, string newFilename)
{
DriveItem driveItem = new DriveItem();
driveItem.Name = newFilename;
driveItem.File = new File();
PathItemBuilder pathItemBuilder = await GetPathItemBuilder(parent);
//see if such a file exists already:
@@ -1064,11 +1044,9 @@ namespace keepass2android.Io
logDebug("building request for " + pathItemBuilder.itemLocation);
DriveItem res = await pathItemBuilder.getPathItem()
.ItemWithPath(newFilename)
.Content
.Children
.Request()
.PutAsync<DriveItem>(new MemoryStream());
.AddAsync(driveItem);
return pathItemBuilder.itemLocation.BuildLocalChildLocation(res.Name, res.Id, res.ParentReference?.DriveId)
.ToString();

View File

@@ -12,7 +12,7 @@
<FileAlignment>512</FileAlignment>
<AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
<TargetFrameworkVersion>v9.0</TargetFrameworkVersion>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<NuGetPackageImportStamp>
</NuGetPackageImportStamp>
@@ -31,7 +31,7 @@
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<DefineConstants>TRACE;NoNet;EXCLUDE_JAVAFILESTORAGE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>
@@ -53,7 +53,6 @@
<Reference Include="mscorlib" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Xml" />
</ItemGroup>
@@ -77,23 +76,13 @@
<Compile Include="Io\AndroidContentStorage.cs" />
<Compile Include="Io\BuiltInFileStorage.cs" />
<Compile Include="Io\CachingFileStorage.cs" />
<Compile Include="Io\DropboxFileStorage.cs" />
<Compile Include="Io\DropboxFileStorageKeys.cs" />
<Compile Include="Io\FileDescription.cs" />
<Compile Include="Io\FileStorageSetupActivity.cs" />
<Compile Include="Io\FileStorageSetupInitiatorActivity.cs" />
<Compile Include="Io\GDriveFileStorage.cs" />
<Compile Include="Io\IFileStorage.cs" />
<Compile Include="Io\IoUtil.cs" />
<Compile Include="Io\JavaFileStorage.cs" />
<Compile Include="Io\NetFtpFileStorage.cs" />
<Compile Include="Io\OfflineSwitchableFileStorage.cs" />
<Compile Include="Io\OneDrive2FileStorage.cs" />
<Compile Include="Io\OneDrive2PrefixContainer.cs" />
<Compile Include="Io\PCloudFileStorage.cs" />
<Compile Include="Io\SftpFileStorage.cs" />
<Compile Include="Io\OneDriveFileStorage.cs" />
<Compile Include="Io\WebDavFileStorage.cs" />
<Compile Include="IProgressDialog.cs" />
<Compile Include="PreferenceKey.cs" />
<Compile Include="SelectStorageLocationActivityBase.cs" />
@@ -129,10 +118,6 @@
<Compile Include="Utils\Spr\SprEngine.PickChars.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\JavaFileStorageBindings\JavaFileStorageBindings.csproj">
<Project>{48574278-4779-4b3a-a9e4-9cf1bc285d0b}</Project>
<Name>JavaFileStorageBindings</Name>
</ProjectReference>
<ProjectReference Include="..\KeePassLib2Android\KeePassLib2Android.csproj">
<Project>{545B4A6B-8BBA-4FBE-92FC-4AC060122A54}</Project>
<Name>KeePassLib2Android</Name>
@@ -141,6 +126,7 @@
<Project>{70D3844A-D9FA-4A64-B205-A84C6A822196}</Project>
<Name>KP2AKdbLibraryBinding</Name>
</ProjectReference>
<ProjectReference Include="..\TwofishCipher\TwofishCipher.csproj">
<Project>{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}</Project>
<Name>TwofishCipher</Name>
@@ -153,18 +139,6 @@
<None Include="app.config" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="FluentFTP">
<Version>27.1.3</Version>
</PackageReference>
<PackageReference Include="Microsoft.Graph">
<Version>1.17.0</Version>
</PackageReference>
<PackageReference Include="Microsoft.Graph.Auth">
<Version>1.0.0-preview.1</Version>
</PackageReference>
<PackageReference Include="Microsoft.Identity.Client">
<Version>4.4.0</Version>
</PackageReference>
<PackageReference Include="Xamarin.Android.Arch.Core.Common">
<Version>1.1.1.1</Version>
</PackageReference>

File diff suppressed because it is too large Load Diff

View File

@@ -72,8 +72,8 @@ namespace keepass2android
SearchParameters sp = SearchParameters.None;
sp.SearchInUrls = true;
sp.SearchString = url;
if(sp.RegularExpression) // Validate regular expression
if(sp.RegularExpression) // Validate regular expression
{
new Regex(sp.SearchString);
}
@@ -104,9 +104,7 @@ namespace keepass2android
if (String.IsNullOrWhiteSpace(host))
return pgResults;
foreach (PwEntry entry in database.EntriesById.Values)
{
if (!entry.GetSearchingEnabled())
continue;
{
string otherUrl = entry.Strings.ReadSafe(PwDefs.UrlField);
otherUrl = SprEngine.Compile(otherUrl, new SprContext(entry, database.KpDatabase, SprCompileFlags.References));
String otherHost = ExtractHost(otherUrl);

View File

@@ -31,17 +31,15 @@ namespace keepass2android
private readonly PwEntry _entry;
private readonly PwGroup _parentGroup;
private readonly Activity _ctx;
private readonly Database _db;
public static AddEntry GetInstance(Activity ctx, IKp2aApp app, PwEntry entry, PwGroup parentGroup, OnFinish finish) {
public static AddEntry GetInstance(Activity ctx, IKp2aApp app, PwEntry entry, PwGroup parentGroup, OnFinish finish, Database db) {
return new AddEntry(ctx, db, app, entry, parentGroup, finish);
return new AddEntry(ctx, app, entry, parentGroup, finish);
}
public AddEntry(Activity ctx, Database db, IKp2aApp app, PwEntry entry, PwGroup parentGroup, OnFinish finish):base(ctx, finish) {
public AddEntry(Activity ctx, IKp2aApp app, PwEntry entry, PwGroup parentGroup, OnFinish finish):base(ctx, finish) {
_ctx = ctx;
_db = db;
_parentGroup = parentGroup;
_parentGroup = parentGroup;
_app = app;
_entry = entry;
@@ -59,13 +57,10 @@ namespace keepass2android
{
_parentGroup.AddEntry(_entry, true);
}
// Add entry to global
_db.EntriesById[_entry.Uuid] = _entry;
_db.Elements.Add(_entry);
// Commit to disk
SaveDb save = new SaveDb(_ctx, _app, _app.CurrentDb, OnFinishToRun);
// Commit to disk
SaveDb save = new SaveDb(_ctx, _app, _app.CurrentDb, OnFinishToRun);
save.SetStatusLogger(StatusLogger);
save.Run();
}
@@ -91,7 +86,9 @@ namespace keepass2android
// Mark parent group dirty
_app.DirtyGroups.Add(parent);
// Add entry to global
_db.EntriesById[_entry.Uuid] = _entry;
_db.Elements.Add(_entry);
} else
{

View File

@@ -16,8 +16,8 @@ namespace keepass2android.database.edit
{
public class CopyEntry: AddEntry
{
public CopyEntry(Activity ctx, IKp2aApp app, PwEntry entry, OnFinish finish, Database db)
: base(ctx, db, app, CreateCopy(entry, app), entry.ParentGroup, finish)
public CopyEntry(Activity ctx, IKp2aApp app, PwEntry entry, OnFinish finish)
: base(ctx, app, CreateCopy(entry, app), entry.ParentGroup, finish)
{
}

View File

@@ -11,8 +11,7 @@
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<AssemblyName>Kp2aKeyboardBinding</AssemblyName>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>

View File

@@ -12,7 +12,6 @@
<FileAlignment>512</FileAlignment>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>

View File

@@ -12,7 +12,6 @@
<FileAlignment>512</FileAlignment>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
<AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>

View File

@@ -6,11 +6,11 @@ if exist "DropboxFileStorageKeys.cs" (
)
cd ..\..\keepass2android
call UseManifestDebug.bat
call UseManifestNoNet.bat
cd ..
call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
msbuild KeePass.sln /target:keepass2android /p:BuildProjectReferences=true /p:Configuration="Debug" /p:Platform="Any CPU"
msbuild KeePass.sln /target:keepass2android /p:BuildProjectReferences=true /p:Configuration="Release" /p:Platform="Any CPU"
cd build-scripts

View File

@@ -26,8 +26,8 @@ NOTE: If you change dependencies here, don't forget to update the jar files in J
*/
dependencies {
compile 'com.squareup.okhttp3:okhttp:4.2.2'
compile 'com.burgstaller:okhttp-digest:2.0'
compile 'com.squareup.okhttp3:okhttp:3.9.0'
compile 'com.burgstaller:okhttp-digest:1.7'
compile 'com.google.android.gms:play-services:4.0.30'
compile 'com.google.http-client:google-http-client-gson:1.20.0'
compile('com.google.api-client:google-api-client-android:1.16.0-rc') {

View File

@@ -447,20 +447,10 @@ public class WebDavStorage extends JavaFileStorageBase {
if (href.endsWith("/"))
href = href.substring(0, href.length()-1);
int lastIndex = href.lastIndexOf("/");
String displayName;
if (lastIndex >= 0)
displayName = href.substring(lastIndex + 1);
return href.substring(lastIndex + 1);
else
displayName = href;
try {
displayName = java.net.URLDecoder.decode(displayName, UTF_8);
} catch (UnsupportedEncodingException e) {
}
return displayName;
return href;
}
@Override

View File

@@ -26,7 +26,6 @@ import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Region.Op;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
@@ -775,9 +774,7 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
mKeyboardChanged = false;
}
final Canvas canvas = mCanvas;
canvas.save();
canvas.clipRect(new RectF(mDirtyRect));
canvas.clipRect(mDirtyRect, Op.REPLACE);
if (mKeyboard == null) return;
@@ -910,8 +907,6 @@ public class LatinKeyboardBaseView extends View implements PointerTracker.UIProx
}
}
canvas.restore();
mDrawPending = false;
mDirtyRect.setEmpty();
}

View File

@@ -1,550 +0,0 @@
using System;
using Android.Content;
using Javax.Crypto;
using Java.Security;
using Java.Lang;
using Android.Views.InputMethods;
using Android.App;
using Android.OS;
using Android.Security.Keystore;
using Android.Preferences;
using Android.Util;
using Android.Widget;
using Androidx.Biometric;
using AndroidX.Fragment.App;
using Java.IO;
using Java.Security.Cert;
using Java.Util.Concurrent;
using Javax.Crypto.Spec;
using Exception = System.Exception;
using File = System.IO.File;
namespace keepass2android
{
public static class Kp2aLog
{
private static bool? _logToFile;
private static object _fileLocker = new object();
public static void Log(string message)
{
if (message != null)
Android.Util.Log.Debug("KP2A", message);
if (LogToFile)
{
lock (_fileLocker)
{
try
{
using (var streamWriter = System.IO.File.AppendText(LogFilename))
{
string stringToLog = DateTime.Now + ":" + DateTime.Now.Millisecond + " -- " + message;
streamWriter.WriteLine(stringToLog);
}
}
catch (Exception e)
{
Android.Util.Log.Debug("KP2A", "Couldn't write to log file. " + e);
}
}
}
}
private static string LogFilename
{
get { return Application.Context.FilesDir.CanonicalPath + "/keepass2android.log"; }
}
private static bool LogToFile
{
get
{
if (_logToFile == null)
_logToFile = System.IO.File.Exists(LogFilename);
return (bool)_logToFile;
}
}
public static event EventHandler<Exception> OnUnexpectedError;
public static void LogUnexpectedError(Exception exception)
{
Log(exception.ToString());
if (OnUnexpectedError != null)
OnUnexpectedError(null, exception);
}
public static void CreateLogFile()
{
if (!System.IO.File.Exists(LogFilename))
{
System.IO.File.Create(LogFilename).Dispose();
_logToFile = true;
}
}
public static void FinishLogFile()
{
if (System.IO.File.Exists(LogFilename))
{
_logToFile = false;
int count = 0;
while (System.IO.File.Exists(LogFilename + "." + count))
count++;
System.IO.File.Move(LogFilename, LogFilename + "." + count);
}
}
public static void SendLog(Context ctx)
{
if (!System.IO.File.Exists(LogFilename))
return;
Intent sendIntent = new Intent();
sendIntent.SetAction(Intent.ActionSend);
sendIntent.PutExtra(Intent.ExtraText, File.ReadAllText(LogFilename));
sendIntent.PutExtra(Intent.ExtraEmail, "crocoapps@gmail.com");
sendIntent.PutExtra(Intent.ExtraSubject, "Keepass2Android log");
sendIntent.SetType("text/plain");
ctx.StartActivity(Intent.CreateChooser(sendIntent, "Send log to..."));
}
}
public interface IBiometricAuthCallback
{
void OnBiometricAuthSucceeded();
void OnBiometricError(string toString);
}
public class BiometricModule
{
public AndroidX.Fragment.App.FragmentActivity Activity { get; set; }
public BiometricModule(AndroidX.Fragment.App.FragmentActivity activity)
{
Activity = activity;
}
public KeyguardManager KeyguardManager
{
get
{
return (KeyguardManager)Activity.GetSystemService("keyguard");
}
}
public KeyStore Keystore
{
get
{
try
{
return KeyStore.GetInstance("AndroidKeyStore");
}
catch (KeyStoreException e)
{
throw new RuntimeException("Failed to get an instance of KeyStore", e);
}
}
}
public KeyGenerator KeyGenerator
{
get
{
try
{
return KeyGenerator.GetInstance(KeyProperties.KeyAlgorithmAes, "AndroidKeyStore");
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException("Failed to get an instance of KeyGenerator", e);
}
catch (NoSuchProviderException e)
{
throw new RuntimeException("Failed to get an instance of KeyGenerator", e);
}
}
}
public Cipher Cipher
{
get
{
try
{
return Cipher.GetInstance(KeyProperties.KeyAlgorithmAes + "/"
+ KeyProperties.BlockModeCbc + "/"
+ KeyProperties.EncryptionPaddingPkcs7);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException("Failed to get an instance of Cipher", e);
}
catch (NoSuchPaddingException e)
{
throw new RuntimeException("Failed to get an instance of Cipher", e);
}
}
}
public ISharedPreferences SharedPreferences
{
get { return PreferenceManager.GetDefaultSharedPreferences(Activity); }
}
public bool IsAvailable
{
get
{
return BiometricManager.From(Activity).CanAuthenticate() ==
BiometricManager.BiometricSuccess;
}
}
public bool IsHardwareAvailable
{
get
{
var result = BiometricManager.From(Activity).CanAuthenticate();
return result == BiometricManager.BiometricSuccess
|| result == BiometricManager.BiometricErrorNoneEnrolled;
}
}
}
public abstract class BiometricCrypt : IBiometricIdentifier
{
protected const string FailedToInitCipher = "Failed to init Cipher";
protected readonly string _keyId;
protected Cipher _cipher;
private CancellationSignal _cancellationSignal;
protected BiometricPrompt.CryptoObject _cryptoObject;
protected KeyStore _keystore;
private BiometricPrompt _biometricPrompt;
private FragmentActivity _activity;
public BiometricCrypt(BiometricModule biometric, string keyId)
{
Kp2aLog.Log("FP: Create " + this.GetType().Name);
_keyId = keyId;
_cipher = biometric.Cipher;
_keystore = biometric.Keystore;
_activity = biometric.Activity;
}
public abstract bool Init();
protected static string GetAlias(string keyId)
{
return "keepass2android." + keyId;
}
protected static string GetIvPrefKey(string prefKey)
{
return prefKey + "_iv";
}
public void StartListening(IBiometricAuthCallback callback)
{
StartListening(new BiometricAuthCallbackAdapter(callback, _activity));
}
public void StopListening()
{
}
public bool HasUserInterface
{
get { return true; }
}
public void StartListening(BiometricPrompt.AuthenticationCallback callback)
{
Kp2aLog.Log("Fingerprint: StartListening ");
var executor = Executors.NewSingleThreadExecutor();
_biometricPrompt = new Androidx.Biometric.BiometricPrompt(_activity, executor, callback);
BiometricPrompt.PromptInfo promptInfo = new BiometricPrompt.PromptInfo.Builder()
.SetTitle(_activity.GetString(AppNames.AppNameResource))
.SetSubtitle(_activity.GetString(Resource.String.unlock_database_title))
.SetNegativeButtonText(_activity.GetString(Android.Resource.String.Cancel))
.SetConfirmationRequired(false)
.Build();
_biometricPrompt.Authenticate(promptInfo, _cryptoObject);
}
public string Encrypt(string textToEncrypt)
{
Kp2aLog.Log("FP: Encrypting");
return Base64.EncodeToString(_cipher.DoFinal(System.Text.Encoding.UTF8.GetBytes(textToEncrypt)), 0);
}
public void StoreEncrypted(string textToEncrypt, string prefKey, Context context)
{
var edit = PreferenceManager.GetDefaultSharedPreferences(context).Edit();
StoreEncrypted(textToEncrypt, prefKey, edit);
edit.Commit();
}
public void StoreEncrypted(string textToEncrypt, string prefKey, ISharedPreferencesEditor edit)
{
edit.PutString(prefKey, Encrypt(textToEncrypt));
edit.PutString(GetIvPrefKey(prefKey), Base64.EncodeToString(CipherIv, 0));
}
private byte[] CipherIv
{
get { return _cipher.GetIV(); }
}
}
public interface IBiometricIdentifier
{
bool Init();
void StartListening(IBiometricAuthCallback callback);
void StopListening();
bool HasUserInterface { get; }
}
public class BiometricDecryption : BiometricCrypt
{
private readonly Context _context;
private readonly byte[] _iv;
public BiometricDecryption(BiometricModule biometric, string keyId, byte[] iv) : base(biometric, keyId)
{
_iv = iv;
}
public BiometricDecryption(BiometricModule biometric, string keyId, Context context, string prefKey)
: base(biometric, keyId)
{
_context = context;
_iv = Base64.Decode(PreferenceManager.GetDefaultSharedPreferences(context).GetString(GetIvPrefKey(prefKey), null), 0);
}
public static bool IsSetUp(Context context, string prefKey)
{
return PreferenceManager.GetDefaultSharedPreferences(context).GetString(GetIvPrefKey(prefKey), null) != null;
}
public override bool Init()
{
Kp2aLog.Log("FP: Init for Dec");
try
{
_keystore.Load(null);
var key = _keystore.GetKey(GetAlias(_keyId), null);
var ivParams = new IvParameterSpec(_iv);
_cipher.Init(CipherMode.DecryptMode, key, ivParams);
_cryptoObject = new BiometricPrompt.CryptoObject(_cipher);
return true;
}
catch (KeyPermanentlyInvalidatedException e)
{
Kp2aLog.Log("FP: KeyPermanentlyInvalidatedException." + e.ToString());
return false;
}
catch (KeyStoreException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (CertificateException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (UnrecoverableKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (IOException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (InvalidKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
}
public string Decrypt(string encryted)
{
Kp2aLog.Log("FP: Decrypting ");
byte[] encryptedBytes = Base64.Decode(encryted, 0);
return System.Text.Encoding.UTF8.GetString(_cipher.DoFinal(encryptedBytes));
}
public string DecryptStored(string prefKey)
{
string enc = PreferenceManager.GetDefaultSharedPreferences(_context).GetString(prefKey, null);
return Decrypt(enc);
}
}
public class BiometricEncryption : BiometricCrypt
{
private KeyGenerator _keyGen;
public BiometricEncryption(BiometricModule biometric, string keyId) :
base(biometric, keyId)
{
_keyGen = biometric.KeyGenerator;
Kp2aLog.Log("FP: CreateKey ");
CreateKey();
}
/// <summary>
/// Creates a symmetric key in the Android Key Store which can only be used after the user
/// has authenticated with biometry.
/// </summary>
private void CreateKey()
{
try
{
_keystore.Load(null);
_keyGen.Init(new KeyGenParameterSpec.Builder(GetAlias(_keyId),
KeyStorePurpose.Encrypt | KeyStorePurpose.Decrypt)
.SetBlockModes(KeyProperties.BlockModeCbc)
// Require the user to authenticate with biometry to authorize every use
// of the key
.SetEncryptionPaddings(KeyProperties.EncryptionPaddingPkcs7)
.SetUserAuthenticationRequired(true)
.Build());
_keyGen.GenerateKey();
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(e);
}
catch (InvalidAlgorithmParameterException e)
{
throw new RuntimeException(e);
}
catch (CertificateException e)
{
throw new RuntimeException(e);
}
catch (IOException e)
{
throw new RuntimeException(e);
}
catch (System.Exception e)
{
Kp2aLog.LogUnexpectedError(e);
}
}
public override bool Init()
{
Kp2aLog.Log("FP: Init for Enc ");
try
{
_keystore.Load(null);
var key = _keystore.GetKey(GetAlias(_keyId), null);
_cipher.Init(CipherMode.EncryptMode, key);
_cryptoObject = new BiometricPrompt.CryptoObject(_cipher);
return true;
}
catch (KeyPermanentlyInvalidatedException)
{
return false;
}
catch (KeyStoreException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (CertificateException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (UnrecoverableKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (IOException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (InvalidKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
}
}
public class BiometricAuthCallbackAdapter : BiometricPrompt.AuthenticationCallback
{
private readonly IBiometricAuthCallback _callback;
private readonly Context _context;
public BiometricAuthCallbackAdapter(IBiometricAuthCallback callback, Context context)
{
_callback = callback;
_context = context;
}
public override void OnAuthenticationSucceeded(BiometricPrompt.AuthenticationResult result)
{
new Handler(Looper.MainLooper).Post(() => _callback.OnBiometricAuthSucceeded());
}
public override void OnAuthenticationError(int errorCode, ICharSequence errString)
{
new Handler(Looper.MainLooper).Post(() => _callback.OnBiometricError(errString.ToString()));
}
public override void OnAuthenticationFailed()
{
new Handler(Looper.MainLooper).Post(() => _callback.OnBiometricError(_context.Resources.GetString(Resource.String.fingerprint_not_recognized)));
}
}
}

View File

@@ -27,7 +27,6 @@ namespace keepass2android
AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(ctx, Android.Resource.Style.ThemeHoloLightDialog));
builder.SetTitle(ctx.GetString(Resource.String.ChangeLog_title));
List<string> changeLog = new List<string>{
BuildChangelogString(ctx, Resource.Array.ChangeLog_1_08, "1.08-pre"),
ctx.GetString(Resource.String.ChangeLog_1_07b),
ctx.GetString(Resource.String.ChangeLog_1_07),
ctx.GetString(Resource.String.ChangeLog_1_06),
@@ -112,18 +111,7 @@ namespace keepass2android
}
private static string BuildChangelogString(Context ctx, int changeLogResId, string version)
{
string result = "Version " + version + "\n";
foreach (var item in ctx.Resources.GetStringArray(changeLogResId))
{
result += " * " + item + "\n";
}
return result;
}
private const string HtmlStart = @"<html>
private const string HtmlStart = @"<html>
<head>
<style type='text/css'>
a { color:#000000 }
@@ -159,36 +147,36 @@ namespace keepass2android
{
string versionLog2 = versionLog;
bool title = true;
if (isFirst)
{
if (isFirst)
{
bool showDonateOption = true;
ISharedPreferences prefs = PreferenceManager.GetDefaultSharedPreferences(ctx);
if (prefs.GetBoolean(ctx.GetString(Resource.String.NoDonationReminder_key), false))
showDonateOption = false;
bool showDonateOption = true;
ISharedPreferences prefs = PreferenceManager.GetDefaultSharedPreferences(ctx);
if (prefs.GetBoolean(ctx.GetString(Resource.String.NoDonationReminder_key), false))
showDonateOption = false;
long usageCount = prefs.GetLong(ctx.GetString(Resource.String.UsageCount_key), 0);
long usageCount = prefs.GetLong(ctx.GetString(Resource.String.UsageCount_key), 0);
if (usageCount <= 5)
showDonateOption = false;
if (usageCount <= 5)
showDonateOption = false;
if (showDonateOption)
{
if (versionLog2.EndsWith("\n") == false)
versionLog2 += "\n";
string donateUrl = ctx.GetString(Resource.String.donate_url,
new Java.Lang.Object[]{ctx.Resources.Configuration.Locale.Language,
ctx.PackageName
});
if (showDonateOption)
{
if (versionLog2.EndsWith("\n") == false)
versionLog2 += "\n";
string donateUrl = ctx.GetString(Resource.String.donate_url,
new Java.Lang.Object[]{ctx.Resources.Configuration.Locale.Language,
ctx.PackageName
});
versionLog2 += " * <a href=\"" + donateUrl
+ "\">" +
ctx.GetString(Resource.String.ChangeLog_keptDonate)
+ "<a/>";
}
isFirst = false;
}
foreach (string line in versionLog2.Split('\n'))
versionLog2 += " * <a href=\"" + donateUrl
+ "\">" +
ctx.GetString(Resource.String.ChangeLog_keptDonate)
+ "<a/>";
}
isFirst = false;
}
foreach (string line in versionLog2.Split('\n'))
{
string w = line.Trim();
if (title)

View File

@@ -15,7 +15,7 @@ using Android.Widget;
namespace keepass2android
{
[Activity(Label = AppNames.AppName, Theme = "@style/MyTheme_ActionBar", ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.Keyboard | ConfigChanges.KeyboardHidden)]
public class CloseImmediatelyActivity : AndroidX.AppCompat.App.AppCompatActivity
public class CloseImmediatelyActivity : AppCompatActivity
{
protected override void OnResume()
{

View File

@@ -227,7 +227,7 @@ namespace keepass2android
newEntry.SetUuid(new PwUuid(true), true); // Create new UUID
string strTitle = newEntry.Strings.ReadSafe(PwDefs.TitleField);
newEntry.Strings.Set(PwDefs.TitleField, new ProtectedString(false, strTitle + " (" + Android.OS.Build.Model + ")"));
var addTask = new AddEntry(this, App.Kp2a.CurrentDb, App.Kp2a, newEntry,item.Entry.ParentGroup,new ActionOnFinish(this, (success, message, activity) => ((ConfigureChildDatabasesActivity)activity).Update()));
var addTask = new AddEntry(this, App.Kp2a, newEntry,item.Entry.ParentGroup,new ActionOnFinish(this, (success, message, activity) => ((ConfigureChildDatabasesActivity)activity).Update()));
ProgressTask pt = new ProgressTask(App.Kp2a, this, addTask);
pt.Run();
@@ -284,7 +284,7 @@ namespace keepass2android
var listView = FindViewById<ListView>(Android.Resource.Id.List);
listView.Adapter = _adapter;
SetSupportActionBar(FindViewById<AndroidX.AppCompat.Widget.Toolbar>(Resource.Id.mytoolbar));
SetSupportActionBar(FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.mytoolbar));
FindViewById<Button>(Resource.Id.add_child_db_button).Click += (sender, args) =>
{
@@ -366,7 +366,7 @@ namespace keepass2android
{KeeAutoExecExt.ThisDeviceId, true}
})));
var addTask = new AddEntry(this, db, App.Kp2a, newEntry, autoOpenGroup, new ActionOnFinish(this, (success, message, activity) => (activity as ConfigureChildDatabasesActivity)?.Update()));
var addTask = new AddEntry(this, App.Kp2a, newEntry, autoOpenGroup, new ActionOnFinish(this, (success, message, activity) => (activity as ConfigureChildDatabasesActivity)?.Update()));
ProgressTask pt = new ProgressTask(App.Kp2a, this, addTask);
pt.Run();

View File

@@ -21,7 +21,7 @@ namespace keepass2android
[Activity(Label = "@string/app_name",
ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.KeyboardHidden,
Theme = "@style/MyTheme_ActionBar")]
public class CreateDatabaseActivity : AndroidX.AppCompat.App.AppCompatActivity
public class CreateDatabaseActivity : AppCompatActivity
{
private IOConnectionInfo _ioc;
private string _keyfileFilename;
@@ -141,9 +141,8 @@ namespace keepass2android
Android.Graphics.Color color = new Android.Graphics.Color (224, 224, 224);
btnTogglePassword.SetColorFilter (color, mMode);
Util.SetNoPersonalizedLearning(FindViewById(Resource.Id.root));
}
}
readonly PasswordFont _passwordFont = new PasswordFont();

View File

@@ -829,7 +829,7 @@ namespace keepass2android
PopulateStandardText(Resource.Id.entry_comment, Resource.Id.entryfield_container_comment, PwDefs.NotesField);
RegisterTextPopup(FindViewById<RelativeLayout>(Resource.Id.comment_container),
FindViewById(Resource.Id.comment_vdots), PwDefs.NotesField);
PopulateText(Resource.Id.entry_tags, Resource.Id.entryfield_container_tags, concatTags(Entry.Tags));
PopulateText(Resource.Id.entry_override_url, Resource.Id.entryfield_container_overrideurl, Entry.OverrideUrl);

View File

@@ -111,8 +111,6 @@ namespace keepass2android
SetContentView(Resource.Layout.entry_edit);
_closeForReload = false;
Util.SetNoPersonalizedLearning(FindViewById(Resource.Id.entry_scroll));
// Likely the app has been killed exit the activity
if (!App.Kp2a.DatabaseIsUnlocked)
{
@@ -293,10 +291,8 @@ namespace keepass2android
State.EntryModified = true;
};
}
}
protected override void OnStart()
{
@@ -510,7 +506,7 @@ namespace keepass2android
},closeOrShowError);
if ( State.IsNew ) {
runnable = AddEntry.GetInstance(this, App.Kp2a, newEntry, State.ParentGroup, afterAddEntry, db);
runnable = AddEntry.GetInstance(this, App.Kp2a, newEntry, State.ParentGroup, afterAddEntry);
} else {
runnable = new UpdateEntry(this, App.Kp2a, initialEntry, newEntry, closeOrShowError);
}
@@ -919,15 +915,7 @@ namespace keepass2android
item.SetVisible(false);
foreach (View v in _editModeHiddenViews)
v.Visibility = ViewStates.Visible;
State.EditMode.ShowAddAttachments = true;
State.EditMode.ShowAddExtras = true;
ViewGroup binariesGroup = (ViewGroup)FindViewById(Resource.Id.binaries);
binariesGroup.Visibility = ViewStates.Visible;
FindViewById(Resource.Id.entry_binaries_container).Visibility = ViewStates.Visible;
((Button)FindViewById(Resource.Id.add_advanced)).Visibility = ViewStates.Visible;
FindViewById(Resource.Id.entry_extras_container).Visibility = ViewStates.Visible;
return true;
return true;
case Android.Resource.Id.Home:
OnBackPressed();
return true;
@@ -1105,8 +1093,7 @@ namespace keepass2android
View ees = (View) sender.Parent;
dlgView.FindViewById<TextView>(Resource.Id.title).Text = ees.FindViewById<TextView>(Resource.Id.extrakey).Text;
dlgView.FindViewById<EditText>(Resource.Id.value).Text = ees.FindViewById<EditText>(Resource.Id.value).Text;
Util.SetNoPersonalizedLearning(dlgView);
dlgView.FindViewById<CheckBox>(Resource.Id.protection).Checked = ees.FindViewById<CheckBox>(Resource.Id.protection).Checked;
dlgView.FindViewById<CheckBox>(Resource.Id.protection).Checked = ees.FindViewById<CheckBox>(Resource.Id.protection).Checked;
var titleView = ((AutoCompleteTextView)dlgView.FindViewById(Resource.Id.title));
titleView.Adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1, Android.Resource.Id.Text1, AdditionalKeys);

View File

@@ -18,31 +18,17 @@ namespace keepass2android
return keys;
}
protected bool? manualShowAddAttachments = null;
public virtual bool ShowAddAttachments
{
get { return true; }
}
public virtual bool ShowAddAttachments
{
get
{
if (manualShowAddAttachments != null) return (bool)manualShowAddAttachments;
return true; }
set { manualShowAddAttachments = value; }
}
public virtual bool ShowAddExtras
{
get { return true; }
}
protected bool? manualShowAddExtras = null;
public virtual bool ShowAddExtras
{
get
{
if (manualShowAddExtras != null) return (bool) manualShowAddExtras;
return true;
}
set { manualShowAddExtras = value; }
}
public virtual string GetTitle(string key)
public virtual string GetTitle(string key)
{
return key;
}

View File

@@ -1,9 +1,10 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
#if !NoNet
using FluentFTP;
using System.Net.FtpClient;
using Keepass2android.Javafilestorage;
#endif
using System.Text;
@@ -13,10 +14,8 @@ using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Java.IO;
using keepass2android.Io;
using Keepass2android.Javafilestorage;
using KeePassLib.Serialization;
using KeePassLib.Utility;
@@ -186,7 +185,7 @@ namespace keepass2android
string pathAndQuery = uri.PathAndQuery;
var host = uri.Host;
var localPath = WebUtility.UrlDecode(pathAndQuery);
var localPath = pathAndQuery;
if (!uri.IsDefaultPort)

View File

@@ -23,7 +23,7 @@ using Object = Java.Lang.Object;
namespace keepass2android
{
[Activity(Label = "@string/app_name", ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.KeyboardHidden, Theme = "@style/MyTheme_Blue")]
public class FileStorageSelectionActivity : AndroidX.AppCompat.App.AppCompatActivity
public class FileStorageSelectionActivity : AppCompatActivity
{
private readonly ActivityDesign _design;
@@ -84,7 +84,8 @@ namespace keepass2android
if (context.Intent.GetBooleanExtra(AllowThirdPartyAppSend, false))
_displayedProtocolIds.Add("androidsend");
#if NoNet
_displayedProtocolIds.Add("kp2a");
//don't display "get regular version", is classified as deceptive ad by Google. Haha.
//_displayedProtocolIds.Add("kp2a");
#endif
_displayedProtocolIds = _displayedProtocolIds.GroupBy(p => App.Kp2a.GetStorageMainTypeDisplayName(p))
.Select(g => string.Join(",", g)).ToList();
@@ -238,7 +239,7 @@ namespace keepass2android
SetContentView(Resource.Layout.filestorage_selection);
var toolbar = FindViewById<AndroidX.AppCompat.Widget.Toolbar>(Resource.Id.mytoolbar);
var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.mytoolbar);
SetSupportActionBar(toolbar);

View File

@@ -0,0 +1,472 @@
using System;
using Android.Content;
using Javax.Crypto;
using Java.Security;
using Java.Lang;
using Android.Views.InputMethods;
using Android.App;
using Android.Hardware.Fingerprints;
using Android.OS;
using Android.Security.Keystore;
using Android.Preferences;
using Android.Util;
using Android.Widget;
using Java.IO;
using Java.Security.Cert;
using Javax.Crypto.Spec;
namespace keepass2android
{
public interface IFingerprintAuthCallback
{
void OnFingerprintAuthSucceeded();
void OnFingerprintError(string toString);
}
public class FingerprintModule
{
public Context Context { get; set; }
public FingerprintModule (Context context)
{
Context = context;
}
public FingerprintManager FingerprintManager
{
get { return Context.GetSystemService(Context.FingerprintService) as FingerprintManager; }
}
public KeyguardManager KeyguardManager
{
get
{
return (KeyguardManager) Context.GetSystemService("keyguard");
}
}
public KeyStore Keystore
{
get
{
try
{
return KeyStore.GetInstance("AndroidKeyStore");
}
catch (KeyStoreException e)
{
throw new RuntimeException("Failed to get an instance of KeyStore", e);
}
}
}
public KeyGenerator KeyGenerator
{
get
{
try
{
return KeyGenerator.GetInstance(KeyProperties.KeyAlgorithmAes, "AndroidKeyStore");
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException("Failed to get an instance of KeyGenerator", e);
}
catch (NoSuchProviderException e)
{
throw new RuntimeException("Failed to get an instance of KeyGenerator", e);
}
}
}
public Cipher Cipher
{
get
{
try
{
return Cipher.GetInstance(KeyProperties.KeyAlgorithmAes + "/"
+ KeyProperties.BlockModeCbc + "/"
+ KeyProperties.EncryptionPaddingPkcs7);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException("Failed to get an instance of Cipher", e);
}
catch (NoSuchPaddingException e)
{
throw new RuntimeException("Failed to get an instance of Cipher", e);
}
}
}
public InputMethodManager InputMethodManager
{
get { return (InputMethodManager) Context.GetSystemService(Context.InputMethodService); }
}
public ISharedPreferences SharedPreferences
{
get { return PreferenceManager.GetDefaultSharedPreferences(Context); }
}
}
public abstract class FingerprintCrypt: FingerprintManager.AuthenticationCallback, IFingerprintIdentifier
{
protected const string FailedToInitCipher = "Failed to init Cipher";
public override void OnAuthenticationError(FingerprintState errorCode, ICharSequence errString)
{
Kp2aLog.Log("FP: OnAuthenticationError: " + errString + ", " + _selfCancelled);
if (!_selfCancelled)
_callback.OnAuthenticationError(errorCode, errString);
}
public override void OnAuthenticationFailed()
{
Kp2aLog.Log("FP: OnAuthenticationFailed " + _selfCancelled);
_callback.OnAuthenticationFailed();
}
public override void OnAuthenticationHelp(FingerprintState helpCode, ICharSequence helpString)
{
_callback.OnAuthenticationHelp(helpCode, helpString);
}
public override void OnAuthenticationSucceeded(FingerprintManager.AuthenticationResult result)
{
Kp2aLog.Log("FP: OnAuthenticationSucceeded ");
StopListening();
_callback.OnAuthenticationSucceeded(result);
}
protected readonly string _keyId;
protected Cipher _cipher;
private bool _selfCancelled;
private CancellationSignal _cancellationSignal;
protected FingerprintManager.CryptoObject _cryptoObject;
private FingerprintManager.AuthenticationCallback _callback;
protected KeyStore _keystore;
private FingerprintManager _fingerprintManager;
public FingerprintCrypt(FingerprintModule fingerprint, string keyId)
{
Kp2aLog.Log("FP: Create " + this.GetType().Name);
_keyId = keyId;
_cipher = fingerprint.Cipher;
_keystore = fingerprint.Keystore;
_fingerprintManager = fingerprint.FingerprintManager;
}
public abstract bool Init();
protected static string GetAlias(string keyId)
{
return "keepass2android." + keyId;
}
protected static string GetIvPrefKey(string prefKey)
{
return prefKey + "_iv";
}
public bool IsFingerprintAuthAvailable
{
get
{
return _fingerprintManager.IsHardwareDetected
&& _fingerprintManager.HasEnrolledFingerprints;
}
}
public void StartListening(Context ctx, IFingerprintAuthCallback callback)
{
StartListening(new FingerprintAuthCallbackAdapter(callback, ctx));
}
public void StartListening(FingerprintManager.AuthenticationCallback callback)
{
if (!IsFingerprintAuthAvailable)
return;
Kp2aLog.Log("FP: StartListening ");
var thisSignal = new CancellationSignal();
_cancellationSignal = thisSignal;
_cancellationSignal.CancelEvent += (sender, args) =>
{
if (_cancellationSignal == thisSignal) _cancellationSignal = null;
};
_selfCancelled = false;
_callback = callback;
_fingerprintManager.Authenticate(_cryptoObject, _cancellationSignal, 0 /* flags */, this, null);
}
public void StopListening()
{
if (_cancellationSignal != null)
{
Kp2aLog.Log("FP: StopListening ");
_selfCancelled = true;
try
{
_cancellationSignal.Cancel();
}
catch (System.Exception e)
{
Kp2aLog.LogUnexpectedError(e);
}
_cancellationSignal = null;
}
}
public string Encrypt(string textToEncrypt)
{
Kp2aLog.Log("FP: Encrypting");
return Base64.EncodeToString(_cipher.DoFinal(System.Text.Encoding.UTF8.GetBytes(textToEncrypt)), 0);
}
public void StoreEncrypted(string textToEncrypt, string prefKey, Context context)
{
var edit = PreferenceManager.GetDefaultSharedPreferences(context).Edit();
StoreEncrypted(textToEncrypt, prefKey, edit);
edit.Commit();
}
public void StoreEncrypted(string textToEncrypt, string prefKey, ISharedPreferencesEditor edit)
{
edit.PutString(prefKey, Encrypt(textToEncrypt));
edit.PutString(GetIvPrefKey(prefKey), Base64.EncodeToString(CipherIv, 0));
}
private byte[] CipherIv
{
get { return _cipher.GetIV(); }
}
}
public interface IFingerprintIdentifier
{
bool Init();
void StartListening(Context ctx, IFingerprintAuthCallback callback);
void StopListening();
}
public class FingerprintDecryption : FingerprintCrypt
{
private readonly Context _context;
private readonly byte[] _iv;
public FingerprintDecryption(FingerprintModule fingerprint, string keyId, byte[] iv) : base(fingerprint, keyId)
{
_iv = iv;
}
public FingerprintDecryption(FingerprintModule fingerprint, string keyId, Context context, string prefKey)
: base(fingerprint, keyId)
{
_context = context;
_iv = Base64.Decode(PreferenceManager.GetDefaultSharedPreferences(context).GetString(GetIvPrefKey(prefKey), null), 0);
}
public static bool IsSetUp(Context context, string prefKey)
{
return PreferenceManager.GetDefaultSharedPreferences(context).GetString(GetIvPrefKey(prefKey), null) != null;
}
public override bool Init()
{
Kp2aLog.Log("FP: Init for Dec");
try
{
_keystore.Load(null);
var key = _keystore.GetKey(GetAlias(_keyId), null);
var ivParams = new IvParameterSpec(_iv);
_cipher.Init(CipherMode.DecryptMode, key, ivParams);
_cryptoObject = new FingerprintManager.CryptoObject(_cipher);
return true;
}
catch (KeyPermanentlyInvalidatedException e)
{
Kp2aLog.Log("FP: KeyPermanentlyInvalidatedException." + e.ToString());
return false;
}
catch (KeyStoreException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (CertificateException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (UnrecoverableKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (IOException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (InvalidKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
}
public string Decrypt(string encryted)
{
Kp2aLog.Log("FP: Decrypting ");
byte[] encryptedBytes = Base64.Decode(encryted, 0);
return System.Text.Encoding.UTF8.GetString(_cipher.DoFinal(encryptedBytes));
}
public string DecryptStored(string prefKey)
{
string enc = PreferenceManager.GetDefaultSharedPreferences(_context).GetString(prefKey, null);
return Decrypt(enc);
}
}
public class FingerprintEncryption : FingerprintCrypt
{
private KeyGenerator _keyGen;
public FingerprintEncryption(FingerprintModule fingerprint, string keyId) :
base(fingerprint, keyId)
{
_keyGen = fingerprint.KeyGenerator;
Kp2aLog.Log("FP: CreateKey ");
CreateKey();
}
/// <summary>
/// Creates a symmetric key in the Android Key Store which can only be used after the user
/// has authenticated with fingerprint.
/// </summary>
private void CreateKey()
{
try
{
_keystore.Load(null);
_keyGen.Init(new KeyGenParameterSpec.Builder(GetAlias(_keyId),
KeyStorePurpose.Encrypt | KeyStorePurpose.Decrypt)
.SetBlockModes(KeyProperties.BlockModeCbc)
// Require the user to authenticate with a fingerprint to authorize every use
// of the key
.SetUserAuthenticationRequired(true)
.SetEncryptionPaddings(KeyProperties.EncryptionPaddingPkcs7)
.Build());
_keyGen.GenerateKey();
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(e);
}
catch (InvalidAlgorithmParameterException e)
{
throw new RuntimeException(e);
}
catch (CertificateException e)
{
throw new RuntimeException(e);
}
catch (IOException e)
{
throw new RuntimeException(e);
}
}
public override bool Init()
{
Kp2aLog.Log("FP: Init for Enc ");
try
{
_keystore.Load(null);
var key = _keystore.GetKey(GetAlias(_keyId), null);
_cipher.Init(CipherMode.EncryptMode, key);
_cryptoObject = new FingerprintManager.CryptoObject(_cipher);
return true;
}
catch (KeyPermanentlyInvalidatedException)
{
return false;
}
catch (KeyStoreException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (CertificateException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (UnrecoverableKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (IOException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (NoSuchAlgorithmException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
catch (InvalidKeyException e)
{
throw new RuntimeException(FailedToInitCipher, e);
}
}
}
public class FingerprintAuthCallbackAdapter : FingerprintManager.AuthenticationCallback
{
private readonly IFingerprintAuthCallback _callback;
private readonly Context _context;
public FingerprintAuthCallbackAdapter(IFingerprintAuthCallback callback, Context context)
{
_callback = callback;
_context = context;
}
public override void OnAuthenticationSucceeded(FingerprintManager.AuthenticationResult result)
{
_callback.OnFingerprintAuthSucceeded();
}
public override void OnAuthenticationError(FingerprintState errorCode, ICharSequence errString)
{
_callback.OnFingerprintError(errString.ToString());
}
public override void OnAuthenticationHelp(FingerprintState helpCode, ICharSequence helpString)
{
_callback.OnFingerprintError(helpString.ToString());
}
public override void OnAuthenticationFailed()
{
_callback.OnFingerprintError(
_context.Resources.GetString(Resource.String.fingerprint_not_recognized));
}
}
}

View File

@@ -5,7 +5,6 @@ using System.Text;
using Android.App;
using Android.Content;
using Android.Hardware.Biometrics;
using Android.OS;
using Android.Runtime;
using Android.Util;
@@ -17,15 +16,13 @@ using Java.Lang;
namespace keepass2android
{
class BiometrySamsungIdentifier: IBiometricIdentifier
class FingerprintSamsungIdentifier: IFingerprintIdentifier
{
private readonly Context _context;
SpassFingerprint _spassFingerprint;
SpassFingerprint _spassFingerprint;
Spass _spass;
public BiometrySamsungIdentifier(Context context)
public FingerprintSamsungIdentifier(Context context)
{
_context = context;
_spass = new Spass();
_spass = new Spass();
try
{
@@ -64,12 +61,12 @@ namespace keepass2android
}
class IdentifyListener : Java.Lang.Object, IIdentifyListener
{
private readonly IBiometricAuthCallback _callback;
private readonly IFingerprintAuthCallback _callback;
private readonly Context _context;
private readonly BiometrySamsungIdentifier _id;
private readonly FingerprintSamsungIdentifier _id;
public IdentifyListener(IBiometricAuthCallback callback, Context context, BiometrySamsungIdentifier id)
public IdentifyListener(IFingerprintAuthCallback callback, Context context, FingerprintSamsungIdentifier id)
{
_callback = callback;
_context = context;
@@ -83,11 +80,11 @@ namespace keepass2android
_id.Listening = false;
if (responseCode == SpassFingerprint.StatusAuthentificationSuccess)
{
_callback.OnBiometricAuthSucceeded();
_callback.OnFingerprintAuthSucceeded();
}
else if (responseCode == SpassFingerprint.StatusAuthentificationPasswordSuccess)
{
_callback.OnBiometricAuthSucceeded();
_callback.OnFingerprintAuthSucceeded();
}
}
@@ -109,22 +106,22 @@ namespace keepass2android
}
public void StartListening(IBiometricAuthCallback callback)
public void StartListening(Context ctx, IFingerprintAuthCallback callback)
{
if (Listening) return;
try
{
_spassFingerprint.StartIdentifyWithDialog(_context, new IdentifyListener(callback, _context, this), false);
_spassFingerprint.StartIdentifyWithDialog(ctx, new IdentifyListener(callback, ctx, this), false);
Listening = true;
}
catch (SpassInvalidStateException m)
{
callback.OnBiometricError(m.Message);
callback.OnFingerprintError(m.Message);
}
catch (IllegalStateException ex)
{
callback.OnBiometricError(ex.Message);
callback.OnFingerprintError(ex.Message);
}
}
@@ -144,10 +141,5 @@ namespace keepass2android
Kp2aLog.LogUnexpectedError(e);
}
}
public bool HasUserInterface
{
get { return false; }
}
}
}
}

View File

@@ -15,7 +15,6 @@ using Android.Widget;
using Java.Lang;
using KeePassLib.Keys;
using KeePassLib.Utility;
using Kotlin.Text;
using Enum = System.Enum;
using Exception = System.Exception;
@@ -25,16 +24,16 @@ namespace keepass2android
ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.Keyboard | ConfigChanges.KeyboardHidden,
Theme = "@style/MyTheme_ActionBar", MainLauncher = false)]
[IntentFilter(new[] { "kp2a.action.FingerprintSetupActivity" }, Categories = new[] { Intent.CategoryDefault })]
public class BiometricSetupActivity : LockCloseActivity, IBiometricAuthCallback
public class FingerprintSetupActivity : LockCloseActivity, IFingerprintAuthCallback
{
private readonly ActivityDesign _activityDesign;
public BiometricSetupActivity(IntPtr javaReference, JniHandleOwnership transfer)
public FingerprintSetupActivity(IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
{
_activityDesign = new ActivityDesign(this);
}
public BiometricSetupActivity()
public FingerprintSetupActivity()
{
_activityDesign = new ActivityDesign(this);
}
@@ -43,7 +42,7 @@ namespace keepass2android
private FingerprintUnlockMode _unlockMode = FingerprintUnlockMode.Disabled;
private FingerprintUnlockMode _desiredUnlockMode;
private BiometricEncryption _enc;
private FingerprintEncryption _enc;
private RadioButton[] _radioButtons;
public override bool OnOptionsItemSelected(IMenuItem item)
{
@@ -71,7 +70,6 @@ namespace keepass2android
_fpIcon = FindViewById<ImageView>(Resource.Id.fingerprint_icon);
_fpTextView = FindViewById<TextView>(Resource.Id.fingerprint_status);
SupportActionBar.SetDisplayHomeAsUpEnabled(true);
SupportActionBar.SetHomeButtonEnabled(true);
@@ -130,8 +128,14 @@ namespace keepass2android
.PutBoolean(GetString(Resource.String.ShowKeyboardWhileFingerprint_key), args.IsChecked)
.Commit();
};
if ((int)Build.VERSION.SdkInt >= 23)
RequestPermissions(new[] {Manifest.Permission.UseFingerprint}, FingerprintPermissionRequestCode);
else
{
TrySetupSamsung();
}
UpdateKeyboardCheckboxVisibility();
@@ -139,7 +143,10 @@ namespace keepass2android
private void UpdateKeyboardCheckboxVisibility()
{
FindViewById(Resource.Id.show_keyboard_while_fingerprint).Visibility = ViewStates.Gone;
FindViewById(Resource.Id.show_keyboard_while_fingerprint).Visibility = (_unlockMode == FingerprintUnlockMode.Disabled) ||
(_samsungFingerprint != null)
? ViewStates.Gone
: ViewStates.Visible;
}
private bool TrySetupSamsung()
@@ -147,20 +154,20 @@ namespace keepass2android
try
{
//try to create a Samsung ID object
_samsungBiometry = new BiometrySamsungIdentifier(this);
if (!_samsungBiometry.Init())
_samsungFingerprint = new FingerprintSamsungIdentifier(this);
if (!_samsungFingerprint.Init())
{
SetError(Resource.String.fingerprint_no_enrolled);
}
ShowRadioButtons();
FindViewById(Resource.Id.container_fingerprint_unlock).Visibility = _samsungBiometry == null
FindViewById(Resource.Id.container_fingerprint_unlock).Visibility = _samsungFingerprint == null
? ViewStates.Visible
: ViewStates.Gone;
return true;
}
catch (Exception)
{
_samsungBiometry = null;
_samsungFingerprint = null;
return false;
}
}
@@ -224,7 +231,30 @@ namespace keepass2android
tv.Visibility = ViewStates.Visible;
}
const int FingerprintPermissionRequestCode = 0;
public override void OnRequestPermissionsResult (int requestCode, string[] permissions, Permission[] grantResults)
{
if (requestCode == FingerprintPermissionRequestCode && grantResults[0] == Permission.Granted)
{
FingerprintModule fpModule = new FingerprintModule(this);
if (fpModule.FingerprintManager == null || (!fpModule.FingerprintManager.IsHardwareDetected))
{
//seems like not all Samsung Devices (e.g. Note 4) don't support the Android 6 fingerprint API
if (!TrySetupSamsung())
SetError(Resource.String.fingerprint_hardware_error);
UpdateKeyboardCheckboxVisibility();
return;
}
if (!fpModule.FingerprintManager.HasEnrolledFingerprints)
{
SetError(Resource.String.fingerprint_no_enrolled);
return;
}
ShowRadioButtons();
UpdateKeyboardCheckboxVisibility();
}
}
private void ShowRadioButtons()
{
FindViewById<TextView>(Resource.Id.tvFatalError).Visibility = ViewStates.Gone;
@@ -232,21 +262,14 @@ namespace keepass2android
FindViewById(Resource.Id.fingerprint_auth_container).Visibility = ViewStates.Gone;
}
private void HideRadioButtons()
{
FindViewById<TextView>(Resource.Id.tvFatalError).Visibility = ViewStates.Gone;
FindViewById(Resource.Id.radio_buttons).Visibility = ViewStates.Gone;
FindViewById(Resource.Id.fingerprint_auth_container).Visibility = ViewStates.Gone;
}
private void ChangeUnlockMode(FingerprintUnlockMode oldMode, FingerprintUnlockMode newMode)
private void ChangeUnlockMode(FingerprintUnlockMode oldMode, FingerprintUnlockMode newMode)
{
if (oldMode == newMode)
return;
if (_samsungBiometry != null)
if (_samsungFingerprint != null)
{
_unlockMode = newMode;
UpdateKeyboardCheckboxVisibility();
@@ -271,15 +294,14 @@ namespace keepass2android
FindViewById(Resource.Id.show_keyboard_while_fingerprint).Visibility = ViewStates.Gone;
FindViewById(Resource.Id.fingerprint_auth_container).Visibility = ViewStates.Visible;
try
_enc = new FingerprintEncryption(new FingerprintModule(this), CurrentPreferenceKey);
try
{
_enc = new BiometricEncryption(new BiometricModule(this), CurrentPreferenceKey);
if (!_enc.Init())
if (!_enc.Init())
throw new Exception("Failed to initialize cipher");
ResetErrorTextRunnable();
_enc.StartListening(new BiometricAuthCallbackAdapter(this, this));
}
_enc.StartListening(new FingerprintAuthCallbackAdapter(this, this));
}
catch (Exception e)
{
CheckCurrentRadioButton();
@@ -296,9 +318,9 @@ namespace keepass2android
private ImageView _fpIcon;
private TextView _fpTextView;
private BiometrySamsungIdentifier _samsungBiometry;
private FingerprintSamsungIdentifier _samsungFingerprint;
public void OnBiometricAuthSucceeded()
public void OnFingerprintAuthSucceeded()
{
_unlockMode = _desiredUnlockMode;
@@ -322,7 +344,7 @@ namespace keepass2android
public void OnBiometricError(string error)
public void OnFingerprintError(string error)
{
_fpIcon.SetImageResource(Resource.Drawable.ic_fingerprint_error);
_fpTextView.Text = error;
@@ -336,33 +358,16 @@ namespace keepass2android
{
_fpTextView.SetTextColor(
_fpTextView.Resources.GetColor(Resource.Color.hint_color, null));
_fpTextView.Text = "";
_fpTextView.Text = _fpTextView.Resources.GetString(Resource.String.fingerprint_hint);
_fpIcon.SetImageResource(Resource.Drawable.ic_fp_40px);
}
protected override void OnResume()
{
base.OnResume();
BiometricModule fpModule = new BiometricModule(this);
HideRadioButtons();
if (!fpModule.IsHardwareAvailable)
{
//seems like not all Samsung Devices (e.g. Note 4) don't support the Android 6 fingerprint API
if (!TrySetupSamsung())
SetError(Resource.String.fingerprint_hardware_error);
UpdateKeyboardCheckboxVisibility();
return;
}
if (!fpModule.IsAvailable)
{
SetError(Resource.String.fingerprint_no_enrolled);
return;
}
ShowRadioButtons();
UpdateKeyboardCheckboxVisibility();
}
if (_enc != null)
_enc.StartListening(new FingerprintAuthCallbackAdapter(this, this));
}
protected override void OnPause()
{

View File

@@ -495,7 +495,7 @@ namespace keepass2android
{
FindViewById(Resource.Id.enable_fingerprint).Click += (sender, args) =>
{
StartActivity(typeof(BiometricSetupActivity));
StartActivity(typeof(FingerprintSetupActivity));
};
}
@@ -689,8 +689,8 @@ namespace keepass2android
if (!disabledForAll && !disabledForDatabase && !App.Kp2a.IsChildDatabase(App.Kp2a.CurrentDb))
{
BiometricModule biometricModule = new BiometricModule(this);
if (biometricModule.IsAvailable)
FingerprintModule fpModule = new FingerprintModule(this);
if (fpModule.FingerprintManager != null && fpModule.FingerprintManager.IsHardwareDetected)
{
FingerprintUnlockMode um;
Enum.TryParse(_prefs.GetString(Database.GetFingerprintModePrefKey(App.Kp2a.CurrentDb.Ioc), ""), out um);
@@ -1390,7 +1390,7 @@ namespace keepass2android
case Resource.Id.menu_copy:
var copyTask = new CopyEntry((GroupBaseActivity)Activity, App.Kp2a, (PwEntry)checkedItems.First(),
new GroupBaseActivity.RefreshTask(handler, ((GroupBaseActivity)Activity)), App.Kp2a.CurrentDb);
new GroupBaseActivity.RefreshTask(handler, ((GroupBaseActivity)Activity)));
ProgressTask pt = new ProgressTask(App.Kp2a, Activity, copyTask);
pt.Run();

View File

@@ -138,21 +138,14 @@ namespace keepass2android
return keys.OrderBy(s => s, c);
}
public override bool ShowAddAttachments
{
get
{
if (manualShowAddAttachments != null) return (bool)manualShowAddAttachments;
return false;
}
}
public override bool ShowAddExtras
public override bool ShowAddAttachments
{
get {
if (manualShowAddExtras != null) return (bool)manualShowAddExtras;
return false;
}
get { return false; }
}
public override bool ShowAddExtras
{
get { return false; }
}
public override string GetTitle(string key)

View File

@@ -24,8 +24,8 @@ using Android.Support.V7.App;
namespace keepass2android
{
public abstract class LifecycleAwareActivity : AndroidX.AppCompat.App.AppCompatActivity
{
public abstract class LifecycleAwareActivity : AppCompatActivity
{
protected LifecycleAwareActivity (IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
{

View File

@@ -54,9 +54,13 @@ namespace keepass2android
{
_design.ApplyTheme();
base.OnCreate(savedInstanceState);
Util.MakeSecureDisplay(this);
if (PreferenceManager.GetDefaultSharedPreferences(this).GetBoolean(
GetString(Resource.String.ViewDatabaseSecure_key), true))
{
Window.SetFlags(WindowManagerFlags.Secure, WindowManagerFlags.Secure);
}
_ioc = App.Kp2a.CurrentDb?.Ioc;

View File

@@ -43,9 +43,13 @@ namespace keepass2android
{
_design.ApplyTheme();
base.OnCreate(savedInstanceState);
Util.MakeSecureDisplay(this);
if (PreferenceManager.GetDefaultSharedPreferences(this).GetBoolean(
GetString(Resource.String.ViewDatabaseSecure_key), true))
{
Window.SetFlags(WindowManagerFlags.Secure, WindowManagerFlags.Secure);
}
_ioc = App.Kp2a.CurrentDb.Ioc;

View File

@@ -1,54 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.Content.PM;
using Android.OS;
using Android.Runtime;
using Android.Support.V7.App;
using Android.Views;
using Android.Widget;
namespace keepass2android
{
[Activity(Label = AppNames.AppName, ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.KeyboardHidden, Theme = "@style/MyTheme_Blue",
LaunchMode = LaunchMode.SingleInstance)]
public class NoSecureDisplayActivity : AndroidX.AppCompat.App.AppCompatActivity
{
private readonly ActivityDesign _design;
public NoSecureDisplayActivity()
{
_design = new ActivityDesign(this);
}
protected override void OnCreate(Bundle savedInstanceState)
{
_design.ApplyTheme();
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.no_secure_display_layout);
FindViewById<Button>(Resource.Id.btn_goto_settings).Click += (sender, args) =>
{
AppSettingsActivity.Launch(this);
};
var toolbar = FindViewById<AndroidX.AppCompat.Widget.Toolbar>(Resource.Id.mytoolbar);
SetSupportActionBar(toolbar);
SupportActionBar.Title = AppNames.AppName;
}
protected override void OnResume()
{
base.OnResume();
_design.ReapplyTheme();
//close if displays changed
if (!Util.SecureDisplayConfigured(this) || !Util.HasUnsecureDisplay(this))
Finish();
}
}
}

View File

@@ -69,7 +69,7 @@ namespace keepass2android
LaunchMode = LaunchMode.SingleInstance,
WindowSoftInputMode = SoftInput.AdjustResize,
Theme = "@style/MyTheme_Blue")]
public class PasswordActivity : LockingActivity, IBiometricAuthCallback
public class PasswordActivity : LockingActivity, IFingerprintAuthCallback
{
enum KeyProviders
@@ -86,10 +86,8 @@ namespace keepass2android
public const String KeyKeyfile = "keyFile";
public const String KeyPassword = "password";
public const String LaunchImmediately = "launchImmediately";
private const string ShowpasswordKey = "ShowPassword";
private const string ShowpasswordKey = "ShowPassword";
private const string KeyProviderIdOtp = "KP2A-OTP";
private const string KeyProviderIdOtpRecovery = "KP2A-OTPSecret";
private const string KeyProviderIdChallenge = "KP2A-Chal";
@@ -581,7 +579,7 @@ namespace keepass2android
private string mDrawerTitle;
private MeasuringRelativeLayout.MeasureArgs _measureArgs;
private ActivityDesign _activityDesign;
private BiometricDecryption _biometricDec;
private FingerprintDecryption _fingerprintDec;
private bool _fingerprintPermissionGranted;
private PasswordActivityBroadcastReceiver _intentReceiver;
private int _appnameclickCount;
@@ -648,12 +646,16 @@ namespace keepass2android
IntentFilter filter = new IntentFilter();
filter.AddAction(Intent.ActionScreenOff);
RegisterReceiver(_intentReceiver, filter);
//use FlagSecure to make sure the last (revealed) character of the master password is not visible in recent apps
if (PreferenceManager.GetDefaultSharedPreferences(this).GetBoolean(
GetString(Resource.String.ViewDatabaseSecure_key), true))
{
Window.SetFlags(WindowManagerFlags.Secure, WindowManagerFlags.Secure);
}
//use FlagSecure to make sure the last (revealed) character of the master password is not visible in recent apps
Util.MakeSecureDisplay(this);
Intent i = Intent;
Intent i = Intent;
String action = i.Action;
@@ -761,33 +763,19 @@ namespace keepass2android
mDrawerTitle = Title;
InitializeToolbarCollapsing();
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
btn.Click += (sender, args) =>
{
if (!string.IsNullOrEmpty((string)btn.Tag))
{
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle(Resource.String.fingerprint_prefs);
b.SetMessage(btn.Tag.ToString());
b.SetPositiveButton(Android.Resource.String.Ok, (o, eventArgs) => ((Dialog)o).Dismiss());
b.SetOnDismissListener(new Util.DismissListener(() => _biometricDec?.StartListening(this)));
b.Show();
}
else _biometricDec?.StartListening(this);
if ((int)Build.VERSION.SdkInt >= 23)
RequestPermissions(new[] { Manifest.Permission.UseFingerprint }, FingerprintPermissionRequestCode);
};
if (App.Kp2a.TrySelectCurrentDb(_ioConnection))
if (App.Kp2a.TrySelectCurrentDb(_ioConnection))
{
//database already opened. return the ioc and we're good.
LaunchNextActivity();
}
}
Util.SetNoPersonalizedLearning(FindViewById<EditText>(Resource.Id.password_edit));
}
private void InitializeToolbarCollapsing()
private void InitializeToolbarCollapsing()
{
var rootview = FindViewById<MeasuringRelativeLayout>(Resource.Id.relative_layout);
rootview.ViewTreeObserver.GlobalLayout += (sender, args2) =>
@@ -903,8 +891,41 @@ namespace keepass2android
}
}
const int FingerprintPermissionRequestCode = 99;
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults)
{
if ((requestCode == FingerprintPermissionRequestCode) && (grantResults.Length > 0) && (grantResults[0] == Permission.Granted))
{
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
btn.Click += (sender, args) =>
{
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle(Resource.String.fingerprint_prefs);
b.SetMessage(btn.Tag.ToString());
b.SetPositiveButton(Android.Resource.String.Ok, (o, eventArgs) => ((Dialog)o).Dismiss());
if (_fingerprintDec != null)
{
b.SetNegativeButton(Resource.String.disable_sensor, (senderAlert, alertArgs) =>
{
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
_fingerprintDec?.StopListening();
_fingerprintDec = null;
});
}
else
{
b.SetNegativeButton(Resource.String.enable_sensor, (senderAlert, alertArgs) =>
{
InitFingerprintUnlock();
});
}
b.Show();
};
_fingerprintPermissionGranted = true;
}
}
private void ClearFingerprintUnlockData()
{
@@ -914,7 +935,7 @@ namespace keepass2android
edit.Commit();
}
public void OnBiometricError(string message)
public void OnFingerprintError(string message)
{
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
@@ -922,11 +943,12 @@ namespace keepass2android
btn.PostDelayed(() =>
{
btn.SetImageResource(Resource.Drawable.ic_fp_40px);
}, 1300);
btn.Tag = GetString(Resource.String.fingerprint_unlock_hint);
}, 1300);
Toast.MakeText(this, message, ToastLength.Long).Show();
}
public void OnBiometricAuthSucceeded()
public void OnFingerprintAuthSucceeded()
{
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
@@ -934,7 +956,7 @@ namespace keepass2android
try
{
var masterPassword = _biometricDec.DecryptStored(Database.GetFingerprintPrefKey(_ioConnection));
var masterPassword = _fingerprintDec.DecryptStored(Database.GetFingerprintPrefKey(_ioConnection));
_password = FindViewById<EditText>(Resource.Id.password_edit).Text = masterPassword;
FindViewById<EditText>(Resource.Id.password_edit).Enabled = false; //prevent accidental modification of password
@@ -1002,7 +1024,7 @@ namespace keepass2android
private void InitializeToolbar()
{
var toolbar = FindViewById<AndroidX.AppCompat.Widget.Toolbar>(Resource.Id.mytoolbar);
var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.mytoolbar);
SetSupportActionBar(toolbar);
@@ -1506,16 +1528,13 @@ namespace keepass2android
protected override void OnPause()
{
_biometricDec?.StopListening();
_fingerprintDec?.StopListening();
_lastOnPauseTime = DateTime.Now;
base.OnPause();
}
private bool fingerprintInitialized;
protected override void OnStart()
protected override void OnStart()
{
base.OnStart();
_starting = true;
@@ -1527,14 +1546,9 @@ namespace keepass2android
}
DonateReminder.ShowDonateReminderIfAppropriate(this);
if (compositeKeyForImmediateLoad == null && !fingerprintInitialized)
{
fingerprintInitialized = InitFingerprintUnlock();
}
}
}
private MemoryStream PreloadDbFile()
{
@@ -1764,10 +1778,16 @@ namespace keepass2android
bool showKeyboard = (Util.GetShowKeyboardDuringFingerprintUnlock(this));
if (!fingerprintInitialized)
if (_fingerprintPermissionGranted)
{
if (!InitFingerprintUnlock())
showKeyboard = true;
}
else
{
FindViewById<ImageButton>(Resource.Id.fingerprintbtn).Visibility = ViewStates.Gone;
showKeyboard = true;
}
EditText pwd = (EditText) FindViewById(Resource.Id.password_edit);
@@ -1845,14 +1865,16 @@ namespace keepass2android
return false;
}
BiometricModule fpModule = new BiometricModule(this);
_biometricDec = new BiometricDecryption(fpModule, Database.GetFingerprintPrefKey(_ioConnection), this,
FingerprintModule fpModule = new FingerprintModule(this);
_fingerprintDec = new FingerprintDecryption(fpModule, Database.GetFingerprintPrefKey(_ioConnection), this,
Database.GetFingerprintPrefKey(_ioConnection));
if (_biometricDec.Init())
btn.Tag = GetString(Resource.String.fingerprint_unlock_hint);
if (_fingerprintDec.Init())
{
btn.SetImageResource(Resource.Drawable.ic_fp_40px);
_biometricDec.StartListening(new BiometricAuthCallbackAdapter(this, this));
_fingerprintDec.StartListening(new FingerprintAuthCallbackAdapter(this, this));
return true;
}
else
@@ -1873,7 +1895,7 @@ namespace keepass2android
Toast.MakeText(this, Resource.String.fingerprint_reenable2, ToastLength.Long).Show();
_biometricDec = null;
_fingerprintDec = null;
return false;
}
@@ -1886,7 +1908,7 @@ namespace keepass2android
//key invalidated permanently
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
btn.Tag = GetString(Resource.String.fingerprint_unlock_failed) + " " + GetString(Resource.String.fingerprint_reenable2);
_biometricDec = null;
_fingerprintDec = null;
ClearFingerprintUnlockData();
}
@@ -2125,7 +2147,7 @@ namespace keepass2android
KeyProviderQueryContext ctx = new KeyProviderQueryContext(_act._ioConnection, false, false);
if (!OathHotpKeyProv.CreateAuxFile(_act._otpInfo, ctx, _act._otpAuxIoc))
ShowError(_act.GetString(Resource.String.ErrorUpdatingOtpAuxFile));
Toast.MakeText(_act, _act.GetString(Resource.String.ErrorUpdatingOtpAuxFile), ToastLength.Long).Show();
}
@@ -2133,7 +2155,8 @@ namespace keepass2android
{
Kp2aLog.LogUnexpectedError(e);
ShowError( _act.GetString(Resource.String.ErrorUpdatingOtpAuxFile) + " " + e.Message);
Toast.MakeText(_act, _act.GetString(Resource.String.ErrorUpdatingOtpAuxFile) + " " + e.Message,
ToastLength.Long).Show();
}
@@ -2146,11 +2169,7 @@ namespace keepass2android
}
private void ShowError(string message)
{
App.Kp2a.ShowToast(message);
}
}
private class PasswordActivityBroadcastReceiver : BroadcastReceiver
{
@@ -2173,8 +2192,8 @@ namespace keepass2android
private void OnScreenLocked()
{
if (_biometricDec != null)
_biometricDec.StopListening();
if (_fingerprintDec != null)
_fingerprintDec.StopListening();
}

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="46" android:versionName="0.9.3-release-3" package="keepass2android.keepass2android_debug" android:installLocation="auto">
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="29" />
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="26" />
<permission android:description="@string/permission_desc2" android:icon="@drawable/ic_notify_locked" android:label="KP2A entry search" android:name="keepass2android.keepass2android_debug.permission.KP2aInternalSearch" android:protectionLevel="signature" />
<permission android:description="@string/permission_desc3" android:icon="@drawable/ic_launcher" android:label="KP2A choose autofill dataset" android:name="keepass2android.keepass2android_debug.permission.Kp2aChooseAutofill" android:protectionLevel="signature" />
<application android:label="keepass2android"
@@ -135,7 +135,6 @@
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="keepass2android.keepass2android_debug.permission.KP2aInternalFileBrowsing" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<!-- Samsung Pass permission -->
<uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="145"
android:versionName="1.08-r0"
android:versionCode="141"
android:versionName="1.07b-r0"
package="keepass2android.keepass2android"
android:installLocation="auto">
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="29" />
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="26" />
<permission android:description="@string/permission_desc2" android:icon="@drawable/ic_launcher" android:label="KP2A entry search" android:name="keepass2android.keepass2android.permission.KP2aInternalSearch" android:protectionLevel="signature" />
<permission android:description="@string/permission_desc3" android:icon="@drawable/ic_launcher" android:label="KP2A choose autofill dataset" android:name="keepass2android.keepass2android.permission.Kp2aChooseAutofill" android:protectionLevel="signature" />
@@ -163,7 +163,6 @@
<uses-permission android:name="keepass2android.keepass2android.permission.KP2aInternalFileBrowsing" />
<uses-permission android:name="keepass2android.keepass2android.permission.KP2aInternalSearch" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<!-- Samsung Pass permission -->
<uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="93"
android:versionName="1.01-g"
android:versionCode="141"
android:versionName="1.07b-r0"
package="keepass2android.keepass2android_nonet"
android:installLocation="auto">
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="29" />
<permission android:description="@string/permission_desc2" android:icon="@drawable/ic_launcher" android:label="KP2A entry search" android:name="keepass2android.keepass2android_nonet.permission.KP2aInternalSearch" android:protectionLevel="signature" />
<permission android:description="@string/permission_desc3" android:icon="@drawable/ic_launcher" android:label="KP2A choose autofill dataset" android:name="keepass2android.keepass2android_nonet.permission.Kp2aChooseAutofill" android:protectionLevel="signature" />
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="26" />
<permission android:description="@string/permission_desc2" android:icon="@drawable/ic_launcher_offline" android:label="KP2A entry search" android:name="keepass2android.keepass2android_nonet.permission.KP2aInternalSearch" android:protectionLevel="signature" />
<permission android:description="@string/permission_desc3" android:icon="@drawable/ic_launcher_offline" android:label="KP2A choose autofill dataset" android:name="keepass2android.keepass2android_nonet.permission.Kp2aChooseAutofill" android:protectionLevel="signature" />
<application
android:label="keepass2android"
android:icon="@mipmap/ic_launcher_offline"
@@ -44,7 +44,6 @@
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:configChanges="orientation|keyboard|keyboardHidden" android:label="@string/app_name" android:theme="@style/MyTheme_Blue" android:name="keepass2android.SelectCurrentDbActivity" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.VIEW" />
@@ -54,12 +53,13 @@
<data android:mimeType="application/octet-stream" />
<data android:host="*" />
</intent-filter>
<intent-filter>
<action android:name="kp2a.action.SelectCurrentDbActivity" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SEND_MULTIPLE" />
@@ -137,11 +137,9 @@
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<uses-permission android:name="keepass2android.keepass2android.permission.KP2aInternalFileBrowsing" />
<uses-permission android:name="keepass2android.keepass2android.permission.KP2aInternalSearch" />
<uses-permission android:name="keepass2android.keepass2android_nonet.permission.KP2aInternalFileBrowsing" />
<uses-permission android:name="keepass2android.keepass2android_nonet.permission.KP2aInternalSearch" />
<!-- Samsung Pass permission -->
<uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />
</manifest>

View File

@@ -120,7 +120,7 @@ namespace keepass2android
String nameX = x.Strings.ReadSafe(PwDefs.TitleField);
String nameY = y.Strings.ReadSafe(PwDefs.TitleField);
if (nameX.ToLower() != nameY.ToLower())
return String.Compare(nameX, nameY, StringComparison.CurrentCultureIgnoreCase);
return String.Compare(nameX, nameY, StringComparison.OrdinalIgnoreCase);
else
{
if (PwDefs.IsTanEntry(x) && PwDefs.IsTanEntry(y))
@@ -138,7 +138,7 @@ namespace keepass2android
{
//ignore
}
return String.Compare(userX, userY, StringComparison.CurrentCultureIgnoreCase);
return String.Compare(userX, userY, StringComparison.OrdinalIgnoreCase);
}
}
@@ -150,7 +150,7 @@ namespace keepass2android
public int CompareGroups(PwGroup a, PwGroup b)
{
return String.Compare(a.Name, b.Name, StringComparison.CurrentCultureIgnoreCase);
return String.Compare(a.Name, b.Name, StringComparison.OrdinalIgnoreCase);
}
}

View File

@@ -38,13 +38,13 @@ namespace keepass2android
WindowSoftInputMode = SoftInput.AdjustResize,
MainLauncher = false,
Theme = "@style/MyTheme_Blue")]
public class QuickUnlock : LifecycleAwareActivity, IBiometricAuthCallback
public class QuickUnlock : LifecycleAwareActivity, IFingerprintAuthCallback
{
private IOConnectionInfo _ioc;
private QuickUnlockBroadcastReceiver _intentReceiver;
private ActivityDesign _design;
private bool _fingerprintPermissionGranted;
private IBiometricIdentifier _biometryIdentifier;
private IFingerprintIdentifier _fingerprintIdentifier;
private int _quickUnlockLength;
private const int FingerprintPermissionRequestCode = 0;
@@ -59,7 +59,11 @@ namespace keepass2android
base.OnCreate(bundle);
//use FlagSecure to make sure the last (revealed) character of the password is not visible in recent apps
Util.MakeSecureDisplay(this);
if (PreferenceManager.GetDefaultSharedPreferences(this).GetBoolean(
GetString(Resource.String.ViewDatabaseSecure_key), true))
{
Window.SetFlags(WindowManagerFlags.Secure, WindowManagerFlags.Secure);
}
_ioc = App.Kp2a.GetDbForQuickUnlock()?.Ioc;
@@ -71,7 +75,7 @@ namespace keepass2android
SetContentView(Resource.Layout.QuickUnlock);
var toolbar = FindViewById<AndroidX.AppCompat.Widget.Toolbar>(Resource.Id.mytoolbar);
var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.mytoolbar);
SetSupportActionBar(toolbar);
@@ -145,11 +149,17 @@ namespace keepass2android
filter.AddAction(Intents.DatabaseLocked);
RegisterReceiver(_intentReceiver, filter);
Util.SetNoPersonalizedLearning(FindViewById<EditText>(Resource.Id.QuickUnlock_password));
if ((int) Build.VERSION.SdkInt >= 23)
{
Kp2aLog.Log("requesting fingerprint permission");
RequestPermissions(new[] { Manifest.Permission.UseFingerprint }, FingerprintPermissionRequestCode);
}
else
{
}
}
}
protected override void OnStart()
{
@@ -158,9 +168,51 @@ namespace keepass2android
}
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults)
{
Kp2aLog.Log("OnRequestPermissionsResult " + (requestCode == FingerprintPermissionRequestCode) +
((grantResults.Length > 0) && (grantResults[0] == Permission.Granted)));
if ((requestCode == FingerprintPermissionRequestCode) && (grantResults.Length > 0) && (grantResults[0] == Permission.Granted))
{
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
btn.Click += (sender, args) =>
{
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle(Resource.String.fingerprint_prefs);
b.SetMessage(btn.Tag.ToString());
b.SetPositiveButton(Android.Resource.String.Ok, (o, eventArgs) => ((Dialog)o).Dismiss());
if (_fingerprintIdentifier != null)
{
b.SetNegativeButton(Resource.String.disable_sensor, (senderAlert, alertArgs) =>
{
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
_fingerprintIdentifier?.StopListening();
_fingerprintIdentifier = null;
});
}
else
{
b.SetNegativeButton(Resource.String.enable_sensor, (senderAlert, alertArgs) =>
{
InitFingerprintUnlock();
});
}
b.Show();
};
_fingerprintPermissionGranted = true;
Kp2aLog.Log("_fingerprintPermissionGranted");
if (_onResumeDone)
{
//it seems the permission result is called after onResume sometimes. Repeat fingerprint unlock then.
InitFingerprintUnlock();
}
}
}
public void OnBiometricError(string message)
bool _onResumeDone = false;
public void OnFingerprintError(string message)
{
Kp2aLog.Log("fingerprint error: " + message);
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
@@ -169,15 +221,15 @@ namespace keepass2android
btn.PostDelayed(() =>
{
btn.SetImageResource(Resource.Drawable.ic_fp_40px);
btn.Tag = GetString(Resource.String.fingerprint_unlock_hint);
}, 1300);
Toast.MakeText(this, message, ToastLength.Long).Show();
}
public void OnBiometricAuthSucceeded()
public void OnFingerprintAuthSucceeded()
{
Kp2aLog.Log("OnFingerprintAuthSucceeded");
_biometryIdentifier.StopListening();
_fingerprintIdentifier.StopListening();
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
btn.SetImageResource(Resource.Drawable.ic_fingerprint_success);
@@ -198,7 +250,7 @@ namespace keepass2android
{
Kp2aLog.Log("InitFingerprintUnlock");
if (_biometryIdentifier != null)
if (_fingerprintIdentifier != null)
{
Kp2aLog.Log("Already listening for fingerprint!");
return true;
@@ -214,47 +266,49 @@ namespace keepass2android
if (um == FingerprintUnlockMode.Disabled)
{
_biometryIdentifier = null;
_fingerprintIdentifier = null;
return false;
}
BiometricModule fpModule = new BiometricModule(this);
Kp2aLog.Log("fpModule.IsHardwareAvailable=" + fpModule.IsHardwareAvailable);
if (fpModule.IsHardwareAvailable) //see FingerprintSetupActivity
_biometryIdentifier = new BiometricDecryption(fpModule, App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey, this,
App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey);
if ((_biometryIdentifier == null) && (!BiometricDecryption.IsSetUp(this, App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey)))
if (_fingerprintPermissionGranted)
{
FingerprintModule fpModule = new FingerprintModule(this);
Kp2aLog.Log("fpModule.FingerprintManager.IsHardwareDetected=" + fpModule.FingerprintManager.IsHardwareDetected);
if (fpModule.FingerprintManager.IsHardwareDetected) //see FingerprintSetupActivity
_fingerprintIdentifier = new FingerprintDecryption(fpModule, App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey, this,
App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey);
}
if ((_fingerprintIdentifier == null) && (!FingerprintDecryption.IsSetUp(this, App.Kp2a.GetDbForQuickUnlock().CurrentFingerprintPrefKey)))
{
try
{
Kp2aLog.Log("trying Samsung Fingerprint API...");
_biometryIdentifier = new BiometrySamsungIdentifier(this);
_fingerprintIdentifier = new FingerprintSamsungIdentifier(this);
btn.Click += (sender, args) =>
{
if (_biometryIdentifier.Init())
_biometryIdentifier.StartListening(this);
if (_fingerprintIdentifier.Init())
_fingerprintIdentifier.StartListening(this, this);
};
Kp2aLog.Log("trying Samsung Fingerprint API...Seems to work!");
}
catch (Exception)
{
Kp2aLog.Log("trying Samsung Fingerprint API...failed.");
_biometryIdentifier = null;
_fingerprintIdentifier = null;
}
}
if (_biometryIdentifier == null)
if (_fingerprintIdentifier == null)
{
FindViewById<ImageButton>(Resource.Id.fingerprintbtn).Visibility = ViewStates.Gone;
return false;
}
btn.Tag = GetString(Resource.String.fingerprint_unlock_hint);
if (_biometryIdentifier.Init())
if (_fingerprintIdentifier.Init())
{
Kp2aLog.Log("successfully initialized fingerprint.");
btn.SetImageResource(Resource.Drawable.ic_fp_40px);
_biometryIdentifier.StartListening(this);
_fingerprintIdentifier.StartListening(this, this);
return true;
}
else
@@ -269,7 +323,7 @@ namespace keepass2android
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
btn.Tag = "Error initializing Fingerprint Unlock: " + e;
_biometryIdentifier = null;
_fingerprintIdentifier = null;
}
return false;
@@ -281,7 +335,7 @@ namespace keepass2android
//key invalidated permanently
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
btn.Tag = GetString(Resource.String.fingerprint_unlock_failed) + " " + GetString(Resource.String.fingerprint_reenable2);
_biometryIdentifier = null;
_fingerprintIdentifier = null;
}
private void OnUnlock(int quickUnlockLength, EditText pwd)
@@ -343,59 +397,25 @@ namespace keepass2android
keyboard.HideSoftInputFromWindow(pwd.WindowToken, HideSoftInputFlags.ImplicitOnly);
}, 50);
var btn = FindViewById<ImageButton>(Resource.Id.fingerprintbtn);
btn.Click += (sender, args) =>
{
if (_biometryIdentifier.HasUserInterface|| string.IsNullOrEmpty((string)btn.Tag) )
{
_biometryIdentifier.StartListening(this);
}
else
{
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle(Resource.String.fingerprint_prefs);
b.SetMessage(btn.Tag.ToString());
b.SetPositiveButton(Android.Resource.String.Ok, (o, eventArgs) => ((Dialog)o).Dismiss());
if (_biometryIdentifier != null)
{
b.SetNegativeButton(Resource.String.disable_sensor, (senderAlert, alertArgs) =>
{
btn.SetImageResource(Resource.Drawable.ic_fingerprint_error);
_biometryIdentifier?.StopListening();
_biometryIdentifier = null;
});
}
else
{
b.SetNegativeButton(Resource.String.enable_sensor, (senderAlert, alertArgs) =>
{
InitFingerprintUnlock();
});
}
b.Show();
}
};
_onResumeDone = true;
}
}
protected override void OnPause()
{
if (_biometryIdentifier != null && !_biometryIdentifier.HasUserInterface)
if (_fingerprintIdentifier != null)
{
Kp2aLog.Log("FP: Stop listening");
_biometryIdentifier.StopListening();
}
_fingerprintIdentifier.StopListening();
_fingerprintIdentifier = null;
}
base.OnPause();
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -92,7 +92,7 @@ android:fitsSystemWindows="true">
android:textSize="10sp"
android:text="/storage/emulated/0/keepass/keepass/database.kdbx" />
</RelativeLayout>
<androidx.appcompat.widget.Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/mytoolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"

View File

@@ -6,7 +6,7 @@
android:fitsSystemWindows="true"
android:layout_height="fill_parent"
android:gravity="center_horizontal">
<androidx.appcompat.widget.Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/mytoolbar"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"

View File

@@ -3,7 +3,6 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/root"
android:layout_margin="12dip">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"

View File

@@ -221,7 +221,6 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/comment_vdots"
android:textIsSelectable="true"
style="@style/EntryItem" />
</RelativeLayout>
</LinearLayout>

View File

@@ -7,7 +7,7 @@
android:fitsSystemWindows="true"
android:layout_height="fill_parent"
android:gravity="center_horizontal">
<androidx.appcompat.widget.Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/mytoolbar"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"

View File

@@ -109,7 +109,7 @@
android:layout_marginStart="16dp"
android:layout_toEndOf="@+id/fingerprint_icon"
android:gravity="center_vertical"
android:text=""
android:text="@string/fingerprint_hint"
android:textColor="@color/hint_color" />
<Button
android:id="@+id/cancel_button"

View File

@@ -1,25 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="16dp"
android:paddingStart="24dp"
android:paddingEnd="24dp"
android:paddingTop="16dp">
<androidx.appcompat.widget.Toolbar android:id="@+id/mytoolbar"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:titleTextStyle="@style/MyTitleTextStyle"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:minHeight="?attr/actionBarSize"
android:background="#00000000" />
<TextView android:text="@string/no_secure_display" android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button android:id="@+id/btn_goto_settings" android:text="@string/IconVisibilityInfo_Android8_btnSettings" android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>

View File

@@ -7,7 +7,7 @@
android:fitsSystemWindows="true"
android:layout_height="fill_parent"
android:gravity="center_horizontal">
<androidx.appcompat.widget.Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/mytoolbar"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"

View File

@@ -89,7 +89,7 @@
android:textSize="10sp"
android:text="/storage/emulated/0/keepass/keepass/database.kdbx" />
</RelativeLayout>
<androidx.appcompat.widget.Toolbar
<android.support.v7.widget.Toolbar
android:id="@+id/mytoolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:id="@+id/mytoolbar"

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">التعليقات</string>
@@ -29,10 +30,6 @@
<string name="ShowGroupnameInSearchResult_title">عرض اسم المجموعة في نتيجة البحث</string>
<string name="ShowGroupnameInSearchResult_resume">عرض اسم المجموعة تحت عناوين القيود في نتائج البحث. هذا مفيد في حال وجود عدة قيود بنفس الاسم.</string>
<string name="NavigationToGroupCompleted_message">عرض المجموعة الآن: %1$s</string>
<string name="AutofillDisabledQueriesPreference_title">Deshabilitar objetivos de autocompletado</string>
<string name="AutofillDisabledQueriesPreference_summary">مشاهدة قائمة التطبيقات والمواقع التي تم تعطيل التعبئة التلقائية لها</string>
<string name="OfferSaveCredentials_summary">في حالة التمكين، سوف يسأل أندرويد إذا كنت ترغب في حفظ بيانات الاعتماد بعد إدخال البيانات يدويًا في حقول يمكن ملؤها تلقائيًا.</string>
<string name="OfferSaveCredentials_title">عرض حفظ وثائق التفويض</string>
<string name="ShowGroupInEntry_title">إظهار اسم المجموعة في عرض القيد</string>
<string name="unknown_uri_scheme">المعذرة! Keepass2Android لا يمكنه معالجة الرابط %1$s الذي تم الحصول عليه. الرجاء التواصل مع المطور!</string>
<string name="Entry_singular">إدخال واحد</string>
@@ -46,7 +43,7 @@
<string name="FileHandling_prefs">الملفات التي يمكن استخدامها</string>
<string name="keyboard_prefs">لوحة المفاتيح</string>
<string name="export_prefs">تصدير قاعدة البيانات...</string>
<string name="fingerprint_prefs">فتح القفل الحيوي</string>
<string name="fingerprint_prefs">فك القفل بالبصمة</string>
<string name="import_db_prefs">استيراد قاعدة البيانات إلى مجلد داخلي</string>
<string name="import_keyfile_prefs">استيراد ملف المفتاح إلى المجلد الداخلية</string>
<string name="keyboardswitch_prefs">تبديل لوحة المفاتيح</string>
@@ -60,14 +57,11 @@
<string name="brackets">أقواس</string>
<string name="cancel">إلغاء</string>
<string name="Ok">موافق</string>
<string name="disable_sensor">تعطيل المستشعر</string>
<string name="enable_sensor">تمكين المستشعر</string>
<string name="ClearClipboard">مسح حافظة لوحة المفاتيح.</string>
<string name="clipboard_timeout">مهلة حافظة لوحة المفاتيح</string>
<string name="clipboard_timeout_summary">المدة الزمنية قبل مسح حافظة لوحة المفاتيح بعد نسخ اسم المستخدم أو كلمة المرور</string>
<string name="copy_username">حدد لنسخ اسم المستخدم إلى حافظة لوحة المفاتيح</string>
<string name="copy_password">حدد لنسخ كلموة المرور إلى حافظة لوحة المفاتيح</string>
<string name="copy_totp">حدد لنسخ اسم المستخدم إلى حافظة لوحة المفاتيح</string>
<string name="available_through_keyboard">القيد متوفر من خلال لوحة مفاتيح KP2A</string>
<string name="entry_is_available">متوفر</string>
<string name="not_possible_im_picker">لا يمكن فتح صندوق الحوار لتحديد طريقة الإدخال. يرجى تفعيل لوحة المفاتيح يدويًا.</string>
@@ -80,13 +74,24 @@
<string name="disclaimer_formal">Keepass2Android يأتي دون أدنى ضمان، هذا البرنامج مجاني، وإعادة توزيعه مرحب بها تحت شروط GPL الإصدار 2 أو ما بعده.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">نسخ إلى حافظة لوحة المفاتيح</string>
<string name="fingerprint_description">الرجاء المصادقة للمتابعة</string>
<string name="fingerprint_hint">مستشعر اللمس</string>
<string name="fingerprint_description">قم بتأكيد بصمتك للمتابعة</string>
<string name="fingerprint_fatal">لا يمكن إعداد \"فتح القفل بالبصمة\":</string>
<string name="fingerprint_not_recognized">فشل المصادقة البيومترية. حاول مرة أخرى</string>
<string name="fingerprint_success">تمت المصادقة الإحيائية بنجاح</string>
<string name="fingerprint_not_recognized">لم يتم التعرف على البصمة. حاول مجددا</string>
<string name="fingerprint_success">تم التعرف على البصمة</string>
<string name="fingerprint_os_error">\"فتح القفل بالبصمة\" يتطلب Android 6.0 أو أحدث.</string>
<string name="fingerprint_hardware_error">لا يوجد حساس البصمة.</string>
<string name="fingerprint_no_enrolled">لا يوجد بصمات مسجلة على الجهاز. الرجاء الذهاب لاعدادات الجهاز اولا.</string>
<string name="disable_fingerprint_unlock">تعطيل \"فتح القفل بالبصمة\"</string>
<string name="enable_fingerprint_unlock">تفعيل \"فتح القفل بالبصمة\" الكامل</string>
<string name="enable_fingerprint_quickunlock">تفعيل \"فتح القفل بالبصمة\" لـ \"فتح القفل السريع\"</string>
<string name="fingerprint_unlock_hint">إلمس الحساس لفتح قاعدة البيانات</string>
<string name="fingerprint_reenable">الرجاء إعادة تفعيل \"فتح القفل بالبصمة\" لكلمة المرور الرئيسية الجديدة.</string>
<string name="enable_fingerprint_unlock_Info">هذا سيقوم بتخزين كلمة السر الرئيسية على هذا الجهاز،
مشفرة بـ Android Keystore و محمية
ببصمة الاصبع. يسمح لك هذا بفتح
قاعدة بياناتك فقط ببصمة إصبعك. </string>
<string name="enable_fingerprint_quickunlock_Info">يسمح باستخدام بصمتك للتصديق بدلاً من \"فتح القفل السريع\". لا يتطلب تخزين أي معلومات متعلقة بكلمة السر الرئيسية الخاصة بك.</string>
<string name="enter_filename">أدخل اسم ملف قاعدة البيانات</string>
<string name="entry_accessed">تم الوصول</string>
<string name="entry_cancel">إلغاء</string>
@@ -246,6 +251,7 @@
<string name="ShowUsernameInList_summary">عرض أسماء المستخدمين أسفل عناوين القيود.. مفيدة للحسابات أو \"أرقام العمليات\" المتعددة.</string>
<string name="RememberRecentFiles_title">تذكر قواعد البيانات</string>
<string name="RememberRecentFiles_summary">تذكر قواعد البيانات المفتوحة حديثا وأظهرها في شاشة \"فتح قاعدة البيانات\".</string>
<string name="kp2a_findUrl">Keepass2Android: البحث عن كلمة السر</string>
<string name="excludeExpiredEntries">استبعاد المدخالات المنتهية الصلاحية</string>
<string name="search_options">خيارات البحث</string>
<string name="caseSensitive">حساسية حالة الأحرف</string>
@@ -453,8 +459,6 @@
<string name="TrayTotp_SettingsField_title">اسم الحقل \"إعدادات TOTP\"</string>
<string name="TrayTotp_SettingsField_summary">أدخل اسمًا لحقل \"إعدادات TrayTotp\" هنا.</string>
<string name="TrayTotp_prefs">TrayTotp</string>
<string name="DebugLog_title">استخدم ملف المفتاح</string>
<string name="DebugLog_summary">كتابة إخراج التطبيق إلى ملف سجل محلي</string>
<string name="loading">جاري التحميل…</string>
<string name="plugins">الإضافات</string>
<string name="plugin_packagename">اسم الحزمة:</string>
@@ -488,7 +492,6 @@
<string name="ReadOnlyReason_PreKitKat">يبدو أنك قمت بفتح الملف من تطبيق خارجي. هذه الطريقة لا تدعم الكتابة. إذا كنت ترغب في إجراء تغييرات على قاعدة البيانات، الرجاء إغلاق قاعدة البيانات وحدد \"تعديل قاعدة البيانات\". ثم افتح الملف من أحد الخيارات المتاحة إذا كان ذلك ممكناً.</string>
<string name="ReadOnlyReason_ReadOnlyFlag">تم تعيين علامة للقراءة فقط. قم بإزالة هذه العلامة إذا كنت ترغب في إجراء تغييرات على قاعدة البيانات.</string>
<string name="ReadOnlyReason_ReadOnlyKitKat">الكتابة غير ممكنة بسبب القيود التي أدخلت في نظام \"Android Kitkat\". إذا كنت ترغب في إجراء تغييرات على قاعدة البيانات، قم بإغلاق قاعدة البيانات وحدد \"تعديل قاعدة البيانات\". ثم قم بفتح الملف باستخدام أحد برامج النظام.</string>
<string name="ReadOnlyReason_LocalBackup">لا يمكن تعديل النسخ الاحتياطية المحلية. يمكنك استخدام إعدادات قاعدة البيانات - تصدير قاعدة البيانات لتصدير هذه النسخة الاحتياطية إلى موقع آخر يمكنك إعادة فتحها منه. وعندئذ ستكون قابلة للكتابة مرة أخرى.</string>
<string name="AddCustomIcon">إضافة أيقونة من ملف...</string>
<string name="CopyingFile">جاري نسخ الملف...</string>
<string name="DuplicateTitle">نسخة</string>
@@ -524,6 +527,7 @@
<string name="CorruptDatabaseHelp">الملف معطوب.\n
هنا هي بعض التلميحات التي قد تساعد على تشخيص المسألة: \n إن قمت بنسخ الملف عبر USB (وضع الخطة المتوسطة الأجل)، الرجاء المحاولة مرة أخرى باستخدام أدوات مثل MyPhoneExplorer. الخطة المتوسطة الأجل تقتطع الملفات في بعض الحالات. \n • إذا تعذر عليك فتح الملف من نفس الموقع على جهاز الكمبيوتر الخاص بك، فمن المحتمل جداً أن الملف معطوب فعلا. الرجاء استخدام نسخة احتياطية من قاعدة البيانات. إذا كنت تفترض أن Keepass2Android قد أتلف الملف، الرجاء الاتصال بالمساعدة. \n • إذا تمكنت من فتح الملف على جهاز الكمبيوتر الخاص بك، الرجاء الاتصال بالمساعدة. يمكنك محاولة حفظه باستخدام إعدادات مختلفة (مثلا، غير مضغوط) على جهاز الكمبيوتر وإعادة محاولة فتحه في Keepass2Android. </string>
<string name="DbQuicklockedChannel_name">QuickUnlock</string>
<string name="ShowKeyboardDuringFingerprintAuth">إظهار لوحة المفاتيح على الشاشة لإدخال كلمة السر عند استعمال ماسح بصمات الأصابع.</string>
<string name="ChangeLog_0_9_8c">الإصدار 0.9.8c
* إصلاح مشكلة ضعف طبقة المقابس الآمنة (SSL) في Microsoft Live SDK (تستخدم عند الوصول إلى الملفات عبر OneDrive)
* إصلاح بعض الأخطاء: الإصدار السابق يحتوي على طرقتين للإدخال (واحدة تحطمت) </string>
@@ -648,10 +652,4 @@
<item>لا تقبل شهادات غير صالحة</item>
</string-array>
<string name="PluginDescription">الوصف المقدم من العنصر الإضافي :</string>
<string name="dont_show_again">لا تظهر مرة أخرى</string>
<string name="masterkey_infotext_head">هل تذكر كلمة المرور الرئيسية؟</string>
<string name="masterkey_infotext_main">لاحظ أنك لن تتمكن من فتح قاعدة البيانات الخاصة بك بدون المفتاح الرئيسي. لا توجد طريقة \"إعادة تعيين\" كلمة المرور الرئيسية.</string>
<string name="backup_infotext_head">هل يتم النسخ الاحتياطي لقاعدة البيانات الخاصة بك؟</string>
<string name="backup_infotext_main">Keepass2Android يخزن كلمات المرور الخاصة بك في ملف على موقع تختاره. هل أنت متأكد من أنك لا يزال بإمكانك الوصول إلى هذا الملف عند فقدان هاتفك أو سرقته، أو عندما يتم تدمير الملف أو حذفه؟ الرجاء التأكد من أن لديك دائماً نسخة احتياطية حديثة في مكان آمن!</string>
<string name="backup_infotext_note">لإنشاء نسخة احتياطية الآن، انتقل إلى %1$s &gt; %2$s &gt; %3$s.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Əks əlaqə</string>
@@ -22,8 +23,11 @@
<string name="display_prefs">Görüntü</string>
<string name="keyboard_prefs">Klaviatura</string>
<string name="export_prefs">Verilənlər bazasını ixrac et...</string>
<string name="fingerprint_prefs">Barmaq izi ilə kilid açma</string>
<string name="import_db_prefs">Verilənlər bazasını daxili qovluğa idxal et</string>
<string name="OnlyAvailableForLocalFiles">Yalnız yerli fayllar üçün mövcuddur.</string>
<string name="fingerprint_os_error">Barmaq izi ilə kilid açma üçün Android 6.0 və sonrası lazımdır.</string>
<string name="fingerprint_hardware_error">Heç bir barmaq izi avadanlıq təminatı aşkarlanmadı.</string>
<string name="enter_filename">Verilənlər bazası fayl adını daxil edin</string>
<string name="entry_tags">Etiketlər</string>
<string name="entry_confpassword">Şifrəni təsdiqlə</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Отзив</string>
@@ -36,6 +37,7 @@
<string name="FileHandling_prefs">Работа с файлове</string>
<string name="keyboard_prefs">Клавиатура</string>
<string name="export_prefs">Експортиране на база данни...</string>
<string name="fingerprint_prefs">Отключване с отпечатък</string>
<string name="import_db_prefs">Импортиране на БД във вътрешна папка</string>
<string name="import_keyfile_prefs">Импортирай ключ от вътрешна папка</string>
<string name="keyboardswitch_prefs">Превключване на клавиатурата</string>
@@ -48,7 +50,6 @@
<string name="unlock_database_title">Отключи базата данни</string>
<string name="brackets">Скоби</string>
<string name="cancel">Прекъсни</string>
<string name="Ok">ОК</string>
<string name="ClearClipboard">Клиброда е изчистен.</string>
<string name="clipboard_timeout">Времето за изчакване на клипборда изтече</string>
<string name="clipboard_timeout_summary">Време за изчистване на клипборда преди копиране на потребителско име или парола</string>
@@ -66,6 +67,21 @@
<string name="disclaimer_formal">Keepass2Android е с АБСОЛЮТНО НИКАКВИ ГАРАНЦИИ. Това е свободен софтуер и вие сте свободни да го разпространявате при условията на GPL врсия 2 и по-късни.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Копиране в клипборда</string>
<string name="fingerprint_hint">Сензор за докосване</string>
<string name="fingerprint_description">Потвърди отпечатъка за продължение</string>
<string name="fingerprint_fatal">Не може да настрои отключването с отпечатък:</string>
<string name="fingerprint_not_recognized">Не разпознат. Опитайте пак</string>
<string name="fingerprint_success">Разпознат</string>
<string name="fingerprint_os_error">Отпечатъка изисква Android 6.0 или по нов. </string>
<string name="fingerprint_hardware_error">Нямате устройство за отпечатък. </string>
<string name="fingerprint_no_enrolled">Нямате запазени пръстови отпечатъци на това устройство. Моля посетете състемните настройки.</string>
<string name="disable_fingerprint_unlock">Изключи отключването с отпечатък</string>
<string name="enable_fingerprint_unlock">Разреши отключването с отпечатък</string>
<string name="enable_fingerprint_quickunlock">Включи Отключване с Пръстов Отпечатък при Бързо Отключване</string>
<string name="fingerprint_unlock_hint">Докоснете сензора за отключване на базата данни</string>
<string name="fingerprint_reenable">Моля активирайте повторно отключването с пръстов отпечатък за новата главна парола.</string>
<string name="enable_fingerprint_unlock_Info">Това ще запише вашата главна парола криптирана с Android Keystore и защитена с пръстовия ви отпечатък. Можете да отключите само с вашия отпечатък. </string>
<string name="enable_fingerprint_quickunlock_Info">Позволява да използвате пръстов отпечатък вместо QuickUnlock код. Не изисква да запазва каквато и да е информация свързана с вашата главна парола.</string>
<string name="enter_filename">Въведете име на файла на базаданни</string>
<string name="entry_accessed">Достъп до</string>
<string name="entry_cancel">Прекъсни</string>
@@ -217,6 +233,7 @@
<string name="ShowUsernameInList_summary">Показване на потребителските имена под заглавията. Полезно за няколко сметки или TAN-а</string>
<string name="RememberRecentFiles_title">Запомни базите данни</string>
<string name="RememberRecentFiles_summary">Запомни последно отваряните бази данни ги показвай в екрана на отворената база данни.</string>
<string name="kp2a_findUrl">Keepass2Android: Намери парола</string>
<string name="excludeExpiredEntries">Изключи изтеклите записи</string>
<string name="search_options">Опции</string>
<string name="caseSensitive">Има разлика за голям-малък шрифт</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Suggeriments</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">Gestor d\'arxius</string>
<string name="keyboard_prefs">Teclat</string>
<string name="export_prefs">Exporta la base de dades...</string>
<string name="fingerprint_prefs">Desbloqueig biomètric</string>
<string name="fingerprint_prefs">Desblocatge amb empremta</string>
<string name="import_db_prefs">Importa la base de dades a una carpeta interna</string>
<string name="import_keyfile_prefs">Importar arxiu de claus a una carpeta interna</string>
<string name="keyboardswitch_prefs">Canvia de teclat</string>
@@ -81,24 +82,29 @@
<string name="disclaimer_formal">Keepass2Android ve SENSE CAP MENA DE GARANTIA; Això és programari lliure, i pots redistribuïr-lo sota els termes de la llicència GPL versió 2 o posterior.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Copiar al portapapers</string>
<string name="fingerprint_description">Si us plau autentiquis per continuar</string>
<string name="fingerprint_fatal">No es pot configurar Desblocatge Biomètric:</string>
<string name="fingerprint_not_recognized">L\'autenticació biomètrica ha fallat. Provi una altra vegada</string>
<string name="fingerprint_success">Autenticació biomètrica exitosa</string>
<string name="fingerprint_os_error">El desbloqueig biomètric requereix Android versió 6.0 o posterior.</string>
<string name="fingerprint_hardware_error">Cap maquinari biomètric detectat.</string>
<string name="fingerprint_no_enrolled">No teniu configurat l\'autenticació biomètrica aquest dispositiu. Si us plau, aneu a la configuració de sistema primer.</string>
<string name="disable_fingerprint_unlock">Deshabilitar Desbloqueig Biomètric</string>
<string name="enable_fingerprint_unlock">Habilitar Desbloqueig total Biomètric</string>
<string name="enable_fingerprint_quickunlock">Habilitar Desbloqueig Biomètric per DesbloqueigRàpid</string>
<string name="fingerprint_unlock_failed">Ha fallat el Desbloqueig Biomètric. La clau de desxifratge ha estat invalidada per Android OS. Això sol passar si l\'autenticació biomètrica o un paràmetre de seguretat ha canviat. </string>
<string name="fingerprint_disabled_wrong_masterkey">Ha fallat el desbloqueig de la base de dades: clau composta invàlida. El desbloqueig biomètric s\'ha deshabilitat perquè aparentment la contrasenya mestra emmagatzemada ja no és vàlida. </string>
<string name="fingerprint_reenable">Si us plau, torneu a activar Desblocatge Biomètric per la nova contrasenya mestra.</string>
<string name="fingerprint_reenable2">Si us plau, desbloqueja amb la contrasenya i llavors re activa el desblocatge biomètric a la configuració de base de dades.</string>
<string name="FingerprintInitFailed">No s\'ha pogut inicialitzar l\'autenticació biomètrica.</string>
<string name="fingerprint_hint">Sensor tactil</string>
<string name="fingerprint_description">Confirmar empremta per a seguir</string>
<string name="fingerprint_fatal">No es pot configurar Desblocatge amb empremta:</string>
<string name="fingerprint_not_recognized">Empremta digital no reconegut. Torneu</string>
<string name="fingerprint_success">Empremta digital reconeguda</string>
<string name="fingerprint_os_error">El desbloqueig d\'empremta dactilar requereix Android versió 6.0 o posterior.</string>
<string name="fingerprint_hardware_error">Cap maquinari d\'empremtes dactilars detectat.</string>
<string name="fingerprint_no_enrolled">No teniu cap inscrits empremtes dactilars en aquest dispositiu. Si us plau, aneu a la configuració de sistema primer.</string>
<string name="disable_fingerprint_unlock">Deshabilitar desbloqueig per empremta dactilar</string>
<string name="enable_fingerprint_unlock">Habilitar desbloqueig per empremta dactilar</string>
<string name="enable_fingerprint_quickunlock">Habilitar desbloqueig per empremta dactilar per DesbloqueigRàpid</string>
<string name="fingerprint_unlock_hint">Tocar sensor per desbloquejar la base de dades</string>
<string name="fingerprint_unlock_failed">Ha fallat el desbloqueig per empremta digital. La clau de desxifratge ha estat invalidada per Android OS. Això sol passar si s\'ha registrat una nova empremta digital o si s\'han fet canvias a les preferències de seguretat. </string>
<string name="fingerprint_disabled_wrong_masterkey">Ha fallat el desbloqueig de la base de dades: clau composta invàlida. El desbloqueig per empremta digital s\'ha deshabilitat perquè aparentment la contrasenya mestra enmagatzemada ja no és vàlida. </string>
<string name="fingerprint_reenable">Si us plau, torneu a activar Desblocatge amb empremta per la nova contrasenya mestra.</string>
<string name="fingerprint_reenable2">Si us plau, desbloqueja amb la contrasenya i llavors re activa el desblocatge amb empremta en la configuració de base de dades.</string>
<string name="FingerprintInitFailed">No s\'ha pogut inicialitzar el sensor d\'empremta digital. </string>
<string name="FingerprintSetupFailed">Error al xifrar dades. Això pot passar si afegiu o suprimiu empremtes dactilars a la configuració del sistema mentre Keepass2Android està esperant l\'empremta digital.</string>
<string name="enable_fingerprint_unlock_Info">Aquesta emmagatzemarà la vostra contrasenya principal en aquest dispositiu, xifrada amb Android Keystore i protegida mitjançant autenticació biomètrica. Permet desbloquejar la vostra base de dades només mitjançant la biometria.</string>
<string name="enable_fingerprint_quickunlock_Info">Permet utilitzar l\'autenticació biomètrica en lloc del DesbloqueigRàpid. No emmagatzema cap informació relacionada amb la vostra contrasenya principal.</string>
<string name="enable_fingerprint_unlock_Info">Això emmagatzemarà la contrasenya mestra d\'aquest
dispositiu, xifrat amb el magatzem de claus d\'Android i
protegit utilitzant l\'autenticació d\'empremta dactilar. Permet desblocar la seva base de dades només amb l\'empremta dactilar.
</string>
<string name="enable_fingerprint_quickunlock_Info">Permet fer servir l\'autenticació d\'empremta en comptes de QuickUnlock. No requereix emmagatzemar cap informació relacionada amb la contrasenya mestra.</string>
<string name="enter_filename">Introdueix el nom de la base de dades</string>
<string name="entry_accessed">Accedida</string>
<string name="entry_cancel">Cancel·la</string>
@@ -266,7 +272,7 @@
<string name="ShowUsernameInList_summary">Mostrar noms d\'usuari sota títols d\'entrada. Útil per a comptes múltiples o TANs.</string>
<string name="RememberRecentFiles_title">Recordeu les bases de dades</string>
<string name="RememberRecentFiles_summary">Recordeu les bases de dades recentment obertes i mostrar-les en la pantalla de d\'obrir base de dades.</string>
<string name="kp2a_findUrl">Trobar contrasenya</string>
<string name="kp2a_findUrl">Keepass2Android: Localitzar contrasenya</string>
<string name="excludeExpiredEntries">Excloure les entrades caducats</string>
<string name="search_options">Opcions</string>
<string name="caseSensitive">Majúscules i minúscules</string>
@@ -628,13 +634,7 @@
<string name="DbQuicklockedChannel_desc">Notificació sobre la base de dades bloquejada amb DesbloqueigRàpid</string>
<string name="EntryChannel_name">Notificacions de les entrades</string>
<string name="EntryChannel_desc">Notificació per simplificar l\'accés a l\'entrada seleccionada actualment.</string>
<string name="CloseDbAfterFailedAttempts">Tanca la base de dades després de tres intents fallits de desbloqueig biomètric.</string>
<string-array name="ChangeLog_1_08">
<item>Afegir el botó de notificació per copiar TOTP al porta-retalls</item>
<item>Canvia a FluentFTP per suport per a TLS 1.2</item>
<item>Canvia a l\'API BiometricPrompt per millorar l\'experiència de l\'usuari amb el desbloqueig d\'empremtes digitals i permetre utilitzar el desbloqueig facial, p. e. al Pixel 4.</item>
<item>Correcció d\'errors</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Mostra el teclat per introduir la contrasenya quan l\'escàner d\'empremta digital és actiu.</string>
<string name="ChangeLog_1_07b">Versió 1.07b \n
* Millora el rendiment Argon2 mitjançant la implementació nativa (Gràcies al Chih-Hsuan Yen!) \n
* Permet desactivar lempremta digital fent clic a la icona dempremtes dactilars (evita la incidència en lectors dempremtes sota la pantalla, gràcies a marcoDallas!) \n
@@ -943,12 +943,12 @@ Revisió inicial per al públic
<string name="autofill_disable">Desactiva l\'emplenament automàtic per %1$s</string>
<string name="autofill_enable_for">Permet l\'emplenament automàtic per %1$s</string>
<string name="invalid_link_association">No es pot associar amb el domini web %1$s amb l\'app %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android ha detectat maquinari biomètric. Voleu activar el Desbloqueig biomètric per a aquesta base de dades?</string>
<string name="enable_fingerprint_hint">Keepass2Android ha detectat disponibilitat d\'ús d\'empremtes dactilars. Voleu permetre l\'ús de l\'empremta per obrir aquesta base de dades?</string>
<string name="understand">Ho entenc</string>
<string name="dont_show_again">No mostrar de nou</string>
<string name="masterkey_infotext_head">Recordes la teva contrasenya mestra?</string>
<string name="masterkey_infotext_main">Tingueu en compte que no podreu obrir la vostra base de dades sense la clau mestra. No hi ha manera de \"restablir\" la contrasenya mestra.</string>
<string name="masterkey_infotext_fingerprint_note">Tingueu en compte també que el Desbloqueig Biomètric funciona emmagatzemant la vostra clau mestra a l\'emmagatzematge segur d\'Android. Aquest emmagatzematge pot ser eliminat per Android en qualsevol moment, per exemple, si afegiu una nova empremta digital a la configuració del sistema. Així que no confieu en el Desbloqueig Biomètric, recordeu la vostra contrasenya principal, si us plau!</string>
<string name="masterkey_infotext_fingerprint_note">Tingueu en compte també que el desbloqueig d\'empremta dactilar funciona mitjançant l\'emmagatzematge de la clau mestra en l\'emmagatzematge segur d\'Android. Android pot eliminar aquest emmagatzematge en qualsevol moment, p. Ex. si afegiu una empremta digital nova a la configuració del sistema. Així que no confieu en la vostra empremta digital, recordeu la vostra contrasenya mestra, si us plau!</string>
<string name="backup_infotext_head">Ha fet còpia de seguretat de la vostra base de dades?</string>
<string name="backup_infotext_main">Keepass2Android emmagatzema les vostres contrasenyes en un fitxer en una ubicació que vulgueu. Estàs segur que pots accedir a aquest fitxer quan el telèfon es perd o el robat, o quan el fitxer es destrueix o s\'elimina? Assegureu-vos que sempre teniu una còpia de seguretat actualitzada en un lloc segur!</string>
<string name="backup_infotext_note">Per crear una còpia de seguretat ara, ves a %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Zpětná vazba</string>
<string name="AboutText">Keepass2Android je správce hesel pro práci se soubory KeePass 2.x. na platformě Android.</string>
<string name="CreditsText">Uživatelské rozhraní je založeno na portu KeepassDroid (vyvinul Brian Pellin). Kód pro databázové operace vychází z kódu pro KeePass (napsal Dominik Reichl). Logo Android robota vychází z verze sdílené Googlem a je upraveno a použito dle podmínek popsaných v licenci Creative Commons 3.0.</string>
<string name="CreditsTextSFTP">SFTP podpora je implementována pomocí knihovny JSch pod BSD licencí, vytvořenou JCraft, Inc.</string>
<string name="CreditsIcons">Ikona kladiva je vytvořena Johnem Casertou z projektu Noun. Ikona tučňáka je vytvořena Adrianem Emerickem z projektu Noun. Ikona ptačího pera je vytvořena Jonem Testou z projektu Noun. Ikona jablka je vytvořena Avou Rowellovou z projektu Noun. Ikona obrázku pochází z https://icons8.com/icon/5570/Picture.</string>
<string name="CreditsIcons">Ikona kladiva je vytvořena Johnem Casertou z projektu Noun. Ikona tučňáka je vytvořena Adrianem Emerickem z projektu Noun. Ikona pera je vytvořena Jonem Testou z projektu Noun. Ikona jablka je vytvořena Avou Rowellem z projektu Noun. Ikona obrázku pochází z https://icons8.com/icon/5570/Picture.</string>
<string name="accept">Přijmout</string>
<string name="deny">Odmítnout</string>
<string name="add_entry">Přidat položku</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">Zpracování souborů</string>
<string name="keyboard_prefs">Klávesnice</string>
<string name="export_prefs">Export databáze...</string>
<string name="fingerprint_prefs">Biometrické odemknutí</string>
<string name="fingerprint_prefs">Odemknutí otiskem prstu</string>
<string name="import_db_prefs">Import databáze do vnitřní složky</string>
<string name="import_keyfile_prefs">Importovat soubor s klíčem do vnitřní složky</string>
<string name="keyboardswitch_prefs">Přepínání klávesnice</string>
@@ -81,24 +82,29 @@
<string name="disclaimer_formal">Keepass2Android je dodáván BEZ JAKÉKOLIV ZÁRUKY; Toto je svobodný software, můžete jej šířit pod licencí GPL verze 2 nebo novější.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopírovat do schránky</string>
<string name="fingerprint_description">Ověřte se po pokračování</string>
<string name="fingerprint_fatal">Nebylo možné nastavit Biometrické odemknutí:</string>
<string name="fingerprint_not_recognized">Biometrické ověření selhalo. Zkuste to prosím znovu</string>
<string name="fingerprint_success">Úspěšné biometrické ověření</string>
<string name="fingerprint_os_error">Biometrické odemknutí vyžaduje Android 6.0 nebo vyšší.</string>
<string name="fingerprint_hardware_error">Nebyl nalezen hardware pro biometrické ověření.</string>
<string name="fingerprint_no_enrolled">Na tomto zařízení není nastaveno žádné biometrické ověření. Nejdříve přejděte do systémového nastavení.</string>
<string name="disable_fingerprint_unlock">Zakázat Biometrické odemknutí</string>
<string name="enable_fingerprint_unlock">Povolit plné Biometrické odemknutí</string>
<string name="enable_fingerprint_quickunlock">Povolit Biometrické odemknutí pro Rychlé odemknutí</string>
<string name="fingerprint_unlock_failed">Biometrické odemknutí selhalo. Dešifrovací klíč byl zneplatněn systémem Android. To se obvykle stává, pokud došlo ke změně biometrického ověření nebo bylo změněno bezpečnostní nastavení. </string>
<string name="fingerprint_disabled_wrong_masterkey">Odemknutí databáze se nezdařilo: neplatný složený klíč. Biometrické odemknutí bylo zakázáno z důvodu pravděpodobného vypršení platnosti hlavního hesla. </string>
<string name="fingerprint_reenable">Prosím, povolte znovu Biometrické odemknutí pro nové hlavní heslo.</string>
<string name="fingerprint_reenable2">Prosím odemkněte svým heslem a poté obnovte Biometrické odemknutí v nastavedatabáze.</string>
<string name="FingerprintInitFailed">Nepodařilo se spustit biometrické ověření. </string>
<string name="fingerprint_hint">Dotykový snímač</string>
<string name="fingerprint_description">Potvrďte otisk prstu pro pokračování</string>
<string name="fingerprint_fatal">Nelze nastavit odemknutí otiskem prstu:</string>
<string name="fingerprint_not_recognized">Otisk prstu nebyl rozpoznán. Zkuste to znovu</string>
<string name="fingerprint_success">Otisk prstu rozpoznán</string>
<string name="fingerprint_os_error">Odemknutí otiskem prstu vyžaduje Android 6.0 nebo vyšší.</string>
<string name="fingerprint_hardware_error">Nebyl nalezen hardware pro snímání otisků prstů.</string>
<string name="fingerprint_no_enrolled">Na tomto zařízení jste nezaregistrovali žádný otisk prstu. Přejděte do nastavení aplikace.</string>
<string name="disable_fingerprint_unlock">Zakázat odemknutí otiskem prstu</string>
<string name="enable_fingerprint_unlock">Povolit úplné odemknutí otiskem prstu</string>
<string name="enable_fingerprint_quickunlock">Povolit odemknutí otiskem prstu pro rychlé odemknutí</string>
<string name="fingerprint_unlock_hint">Dotkněte se snímače pro odemknutí databáze</string>
<string name="fingerprint_unlock_failed">Odemčení otiskem se nezdařilo. Dešifrovací klíč byl zneplatněn systémem Android. To se obvykle stává, pokud byl přidán nový otisk nebo bylo změněno bezpečnostní nastavení. </string>
<string name="fingerprint_disabled_wrong_masterkey">Odemknutí databáze se nezdařilo: neplatný složený klíč. Odemčení otiskem prstu bylo zakázáno, patrně není hlavní heslo již platné. </string>
<string name="fingerprint_reenable">Prosím, povolte znovu odemknutí otiskem prstu pro nové hlavní heslo.</string>
<string name="fingerprint_reenable2">Prosím odemkněte svým heslem a poté obnovte odemčení otiskem prstu v nastavení databáze.</string>
<string name="FingerprintInitFailed">Nepodařilo se spustit senzor otisku prstu. </string>
<string name="FingerprintSetupFailed">Šifrování dat se nezdařilo. K tomu může dojít, pokud přidáte nebo odstraníte otisky prstů v nastavení systému, zatímco Keepass2Android naslouchá otisku prstu.</string>
<string name="enable_fingerprint_unlock_Info">Toto uloží vaše hlavní heslo na toto zařízení, zašifrované pomocí úložiště klíčů Android a chráněné Biometrickým ověřením. Toto umožní odemknutí databáze pouze biometricky.</string>
<string name="enable_fingerprint_quickunlock_Info">Umožní používat Biometrické ověření namísto rychlého odemknutí. Nevyžaduje uložení jakékoliv informace vztahující se k vašemu hlavnímu heslu.</string>
<string name="enable_fingerprint_unlock_Info"> Toto uloží vaše hlavní heslo na toto zařízení,
zašifrované pomocí úložiště klíčů Android a chráněné
použitím ověření identity pomocí otisku prstu. Toto umožní odemčení databáze pouze pomocí vašeho otisku prstu.
</string>
<string name="enable_fingerprint_quickunlock_Info">Umožní používat ověření identity pomocí otisku prstu namísto rychlého odemčení. Nevyžaduje uložení jakékoliv informace vztahující se k vašemu hlavnímu heslu.</string>
<string name="enter_filename">Zadejte název souboru databáze</string>
<string name="entry_accessed">Poslední přístup</string>
<string name="entry_cancel">Storno</string>
@@ -221,7 +227,7 @@
<string name="rounds">Počet zašifrování</string>
<string name="rounds_explaination">Vyšší počet opakování šifrování zvýší bezpečnost proti hrubému útoku, ale může výrazně zpomalit načítání a ukládání.</string>
<string name="rounds_hint">opakování</string>
<string name="argon2memory">Paměť pro Argon 2 (v bajtech)</string>
<string name="argon2memory">Paměť pro Argon 2 (v bytech)</string>
<string name="argon2parallelism">Paralelismus pro Argon 2</string>
<string name="database_name">Jméno databáze</string>
<string name="default_username">Výchozí uživatelské jméno pro nové položky</string>
@@ -254,7 +260,7 @@
<string name="author">Keepass2Android vyvíjí Philipp Crocoll.</string>
<string name="further_authors">Díky za příspěvky kódu %1$s.</string>
<string name="designers">Díky za pomoc s ikonami a designem rozvržení %1$s.</string>
<string name="credit_plugin1">Šifrovací modul Twofish pro Keepass vyvinul Scott Greenberg a je součástí KP2A.</string>
<string name="credit_plugin1">Plugin Twofish šifrování pro Keepass vyvinul Scott Greenberg a je součástí KP2A.</string>
<string name="credit_android_filechooser">Souborový dialog vyvinul Hai Bison</string>
<string name="credit_keyboard">KP2A klávesnice je založen na Gingerbread klávesnici Android Open Source projektu a využívá kódu z projektu Plugin Manageru klávesnice Hacker\'s Keyboard Klause Weidnera.</string>
<string name="please_note">Upozornění</string>
@@ -266,7 +272,7 @@
<string name="ShowUsernameInList_summary">Zobrazovat uživatelská jména pod názvy položek. Užitečné pro vícenásobné účty nebo TANy.</string>
<string name="RememberRecentFiles_title">Zapamatovat databáze</string>
<string name="RememberRecentFiles_summary">Pamatovat s naposledy otevřené databáze a zobrazit je na obrazovce Otevírání databáze.</string>
<string name="kp2a_findUrl">Najít heslo</string>
<string name="kp2a_findUrl">Keepass2Android: Najít heslo</string>
<string name="excludeExpiredEntries">Vyloučit expirované položky</string>
<string name="search_options">Možnosti</string>
<string name="caseSensitive">Rozlišování malých a velkých písmen</string>
@@ -630,13 +636,7 @@
<string name="DbQuicklockedChannel_desc">Upozornění že databáze je zamykána s funkcí Rychlého odemknutí</string>
<string name="EntryChannel_name">Upozornění položky</string>
<string name="EntryChannel_desc">Upozornění pro usnadnění přístupu k momentálně zvolené položce.</string>
<string name="CloseDbAfterFailedAttempts">Zavřít databázi po třech neúspěšných pokusech o odemknutí.</string>
<string-array name="ChangeLog_1_08">
<item>Přidáno oznamovací tlačítko pro kopírování TOTP do schránky</item>
<item>Změna na FluentFTP pro podporu TLS 1.2</item>
<item>Změna na BiometricPrompt API pro vylepšení odemykání otiskem prstu, a přidání možnosti odemknutí obličejem (např. na Pixel 4).</item>
<item>Opravy chyb</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Zobrazit softwarovou klávesnici pro zadávání hesla pokud je čtečka otisků prstů aktivní.</string>
<string name="ChangeLog_1_07b"> Verze 1.07b-pre\n
* Vylepšení výkonu Argon2 pomocí vlastní implementace (Díky Chih-Hsuan Yen!)\n
* Možnost zakázání čtečky otisků poklepáním na ikonu otisku. Umožňuje obejít problémy při používání pod-displejového snímače. (Díky marcoDallas!)\n
@@ -959,12 +959,12 @@ První veřejné vydání
<string name="autofill_disable">Zakázat Automatické doplnění pro %1$s</string>
<string name="autofill_enable_for">Povolit Automatické doplnění pro %1$s</string>
<string name="invalid_link_association">Nedaří se spojit doménu %1$s s aplikací %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android nalezl hardwarovou biometrickou čtečku. Chcete pro tuto databázi povolit Biometrické odemykáni?</string>
<string name="enable_fingerprint_hint">Keepass2Android nalezl hardwarovou čtečku otisků prstů. Chcete pro tuto databázi povolit odemykání pomocí otisku prstu?</string>
<string name="understand">Rozumím</string>
<string name="dont_show_again">Vícekrát neukazuj</string>
<string name="masterkey_infotext_head">Pamatujete si Vaše hlavní heslo?</string>
<string name="masterkey_infotext_main">Pamatujte že bez hlavního klíče není možné databázi otevřít. Možnost \"resetovat\" hlavní heslo NEexistuje.</string>
<string name="masterkey_infotext_fingerprint_note">Také pamatujte že Biometrické odemknutí funguje na základě uchování hlavního hesla v bezpečném úložišti Androidu. Toto úložiště může být kdykoliv vymazáno Androidem, například přidáním nového otisku v nastavení systému. Nespoléhejte se pouze na otisk prstu, ale pamatujte si prosím i Vaše hlavní heslo!</string>
<string name="masterkey_infotext_fingerprint_note">Také pamatujte že odemknutí otiskem prstu funguje na základě uchování hlavního hesla v bezpečném úložišti Androidu. Toto úložiště může být kdykoliv vymazáno Androidem, například přidáním nového otisku v nastavení systému. Nespoléhejte se pouze na otisk prstu, ale pamatujte si prosím i Vaše hlavní heslo!</string>
<string name="backup_infotext_head">Je Vaše databáze zálohována?</string>
<string name="backup_infotext_main">Keepass2Android uchovává Vaše hesla v souboru v umístění dle Vašeho výběru. Jste si jistý/á že můžete získat přístup k souboru i v případě ztráty či krádeže mobilního telefonu, nebo v případě poškození či smazání souboru? Ujistěte se prosím, že máte aktuální zálohu, na bezpečném místě!</string>
<string name="backup_infotext_note">Pro tvorbu zálohy navštivte %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Tilbagemelding</string>
@@ -47,6 +48,7 @@
<string name="FileHandling_prefs">Filhåndtering</string>
<string name="keyboard_prefs">Tastatur</string>
<string name="export_prefs">Eksportere database...</string>
<string name="fingerprint_prefs">Fingeraftryksoplåsning</string>
<string name="import_db_prefs">Importere database til intern mappe</string>
<string name="import_keyfile_prefs">Importer nøglefilen til intern mappe</string>
<string name="keyboardswitch_prefs">Tastaturskiftning</string>
@@ -80,7 +82,26 @@
<string name="disclaimer_formal">Keepass2Android leveres ABSOLUT UDEN GARANTI. Det er gratis software, og du er velkommen til at videredistribuere det jf. betingelserne i GPL version 2 eller senere.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopiér til Upklipsholder</string>
<string name="fingerprint_hint">Berør sensor</string>
<string name="fingerprint_description">Bekræft fingeraftryk for at fortsætte</string>
<string name="fingerprint_fatal">Kan ikke opsætte Fingeraftryksoplåsning:</string>
<string name="fingerprint_not_recognized">Fingeraftryk ikke genkendt. Forsøg igen</string>
<string name="fingerprint_success">Fingeraftryk genkendt</string>
<string name="fingerprint_os_error">Fingeraftryksoplåsning kræver Android 6.0 eller senere.</string>
<string name="fingerprint_hardware_error">Ingen fingeraftrykslæser fundet.</string>
<string name="fingerprint_no_enrolled">Du har ingen gemte fingeraftryk på denne enhed. Gå til systemindstillinger først.</string>
<string name="disable_fingerprint_unlock">Deaktivér Fingeraftryksoplåsning</string>
<string name="enable_fingerprint_unlock">Aktivér fuld Fingeraftryksoplåsning</string>
<string name="enable_fingerprint_quickunlock">Aktivér Fingeraftryksoplåsning for hurtigoplåsning</string>
<string name="fingerprint_unlock_hint">Berør sensoren for at oplåse databasen</string>
<string name="fingerprint_unlock_failed">Fingeraftrykslåsningen mislykkedes. Dekrypteringsnøglen blev ugyldiggjorte af Android OS\'et. Dette sker sædvanligvis, hvis et nyt fingeraftryk tilgængeliggøres eller sikkerhedsindstillingerne ændres. </string>
<string name="fingerprint_disabled_wrong_masterkey">Databaseoplåsning mislykkedes: Ugyldig kombinøgle. Fingeraftryksoplåsning blev deaktiveret, da den lagrede hovedadgangskode tilsyneladende ikke længere er gyldig. </string>
<string name="fingerprint_reenable">Genaktivér Fingeraftryksoplåsning for den nye hovedadgangskode.</string>
<string name="fingerprint_reenable2">Oplås med din adgangskode og genaktivér så Fingeraftryksoplåsning i databaseindstillingerne.</string>
<string name="FingerprintInitFailed">Mislykkedes at initialisere fingeraftrykssensor. </string>
<string name="FingerprintSetupFailed">Mislykkedes at kryptere data. Dette kan ske, hvis du tilføjer eller fjerner fingeraftryk i systemindstillingerne, mens Keepass2Android moniterer for brug af fingeraftryk.</string>
<string name="enable_fingerprint_unlock_Info">Dette gemmer din hovedadgangskode på denne enhed, krypteret med Android Keystore og beskyttet vha. fingeraftryksgodkendelse. Tillader dig at oplåse din database alene via dit fingeraftryk.</string>
<string name="enable_fingerprint_quickunlock_Info">Tillader brug af fingeraftryksgodkendelse i stedet for Hurtigoplåsningskoden. Gemmer ingen information relateret til din hovedadgangskode.</string>
<string name="enter_filename">Angiv databasefilnavn</string>
<string name="entry_accessed">Tilgået</string>
<string name="entry_cancel">Annullér</string>
@@ -248,6 +269,7 @@
<string name="ShowUsernameInList_summary">Vis brugernavne under posttitlerne. Nyttigt ved flere konti eller TAN\'er.</string>
<string name="RememberRecentFiles_title">Husk databaser</string>
<string name="RememberRecentFiles_summary">Husk senest åbnede databaser og vis dem på skærmen Åbn database.</string>
<string name="kp2a_findUrl">Keepass2Android: Find adgangskode</string>
<string name="excludeExpiredEntries">Udelad udløbne poster</string>
<string name="search_options">Indstillinger</string>
<string name="caseSensitive">Versal/minuskel sensitiv</string>
@@ -611,12 +633,7 @@
<string name="DbQuicklockedChannel_desc">Notificering om låsning af databasen med Hurtigoplåsning</string>
<string name="EntryChannel_name">Indtastningsnotifikationer</string>
<string name="EntryChannel_desc">Notificering til forenkelse af adgang til den aktuelt valgte indtastning.</string>
<string-array name="ChangeLog_1_08">
<item>Tilføj notifikationsknap til kopiering af TOTP til udklipsholder</item>
<item>Skift til brug af FluentFTP for understøttelse af TLS 1.2</item>
<item>Skift til BiometricPrompt-API for at forbedre brugeroplevelsen med fingeraftryksoplåsning samt tillade brug af ansigtsoplåsning på f.eks. Pixel 4.</item>
<item>Fejlrettelser</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Vis soft-tastatur til adgangskodeinput, når fingeraftrykaflæsning er aktiv.</string>
<string name="ChangeLog_1_07"> Version 1.07\n
* Løser nedbrud på Samsungs Android 9\n
* Tillader åbning af flere end én database, kompatibel med KeeAutoExec\n
@@ -830,14 +847,16 @@
<string name="autofill_disable">Deaktivér Auto-udfyld for %1$s</string>
<string name="autofill_enable_for">Aktivér Auto-udfyld for %1$s</string>
<string name="invalid_link_association">Kunne ikke tilknytte webdomæne %1$s med app\'en %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android har registreret fingeraftryk-hardware. Aktivér fingeraftryksoplåsning for denne database?</string>
<string name="understand">Forstået</string>
<string name="dont_show_again">Vis ikke igen</string>
<string name="masterkey_infotext_head">Kan du huske din hovedadgangskode?</string>
<string name="masterkey_infotext_main">Bemærk, at du ikke vil kunne åbne din database uden hovednøglen. Der er ingen måde, hvorpå hovedadgangskoden kan \"nulstilles\".</string>
<string name="masterkey_infotext_fingerprint_note">Bemærk også, at fingeraftryksoplåsning fungerer ved at gemme din hovednøgle i Androids sikre lager. Lageret kan til enhver tid slettes af Android f.eks. ved tilføjelse af et nyt fingeraftryk via systemindstillingerne. Stol derfor ikke kun på dit fingeraftryk, husk også din hovedadgangskode!</string>
<string name="backup_infotext_head">Er din database sikkerhedskopieret?</string>
<string name="backup_infotext_main">Keepass2Android lagrer dine adgangskoder i en fil på en placering efter eget valg. Er du sikker på, at du stadig kan tilgå denne fil, hvis din mobil går tabt eller stjæles, eller filen ødelægges eller slettes? Sørg altid for at opbevare en opdateret sikkerhedskopi på et sikkert sted!</string>
<string name="backup_infotext_note">For at oprette en sikkerhedskopi nu, så gå til %1$s &gt; %2$s &gt; %3$s.</string>
<string name="emergency_infotext_head">Forberedt på nødsituationer?</string>
<string name="emergency_infotext_main">Har du nogensinde overvejet, hvad der sker, hvis du ikke længere kan tilgå din adgangskodedatabase? Hvis du kommer ud for en ulykke? Det er god praksis at videregive din hovednøgle til en betroet person for nødstilfælde. Ingen vil ellers kunne tilgå dine adgangskoder.</string>
<string name="no_secure_display">Den aktuelt anvendte skærm er ikke markeret som sikker. Dette betyder, at andre apps kan tage skærmfotos. Keepass2Android er konfigureret til kun at vise følsomme oplysninger på sikre skærme. Skift til en sikker skærm (f.eks. ved at frakoble en HDMI-skærm) eller ændr app-indstillingerne.</string>
<string name="no_secure_display">Den aktuelt anvendte skærm er ikke markeret som sikker. Dette betyder, at andre apps kan tage skærmfotos. Keepass2Android er opsat til kun at vise følsomme oplysninger på sikre skærme. Skift til en sikker skærm (f.eks. ved at frakoble en HDMI-skærm) eller ændre app-indstillingerne.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Feedback</string>
@@ -25,7 +26,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="app_timeout_summary">Bei inaktiver Anwendung wird die Datenbank nach Ablauf der eingestellten Zeit automatisch gesperrt.</string>
<string name="kill_app_label">App-Prozess beenden</string>
<string name="show_kill_app">Schließen-Knopf</string>
<string name="show_kill_app_summary">Zeige eine Schaltfläche auf dem Kennwort-Bildschirm, um den App-Prozess zu beenden (für paranoide Benutzer)</string>
<string name="show_kill_app_summary">Zeige einen Button im Passwort-Bildschirm um den App-Prozess zu beenden (für paranoide User)</string>
<string name="application">Anwendung</string>
<string name="application_settings">Anwendungseinstellungen</string>
<string name="ShowGroupnameInSearchResult_title">Gruppennamen im Suchergebnis anzeigen</string>
@@ -48,7 +49,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="FileHandling_prefs">Umgang mit Dateien</string>
<string name="keyboard_prefs">Tastatur</string>
<string name="export_prefs">Datenbank exportieren…</string>
<string name="fingerprint_prefs">Biometrisches Entsperren</string>
<string name="fingerprint_prefs">Entsperren mit Fingerabdruck</string>
<string name="import_db_prefs">Datenbank in internen Ordner importieren</string>
<string name="import_keyfile_prefs">Schlüsseldatei in internen Ordner importieren</string>
<string name="keyboardswitch_prefs">Wechseln der Eingabemethode</string>
@@ -82,24 +83,27 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="disclaimer_formal">Der Autor übernimmt keine Verantwortung gibt KEINERLEI GARANTIE bei der Nutzung der Anwendung; Die Anwendung ist kostenlos und kann unter den Bedingungen der GPL v2 oder später verbreitet werden.</string>
<string name="ellipsis"></string>
<string name="copy_to_clipboard">In Zwischenablage kopieren</string>
<string name="fingerprint_description">Bitte authentifizieren um fortzufahren</string>
<string name="fingerprint_fatal">Kann Biometrisches Entsperren nicht einrichten:</string>
<string name="fingerprint_not_recognized">Biometrische Authentifizierung fehlgeschlagen. Versuche es erneut</string>
<string name="fingerprint_success">Biometrische Authentifizierung erfolgreich</string>
<string name="fingerprint_os_error">Biometrische Entsperrung erfordert Android 6.0 oder höher.</string>
<string name="fingerprint_hardware_error">Keine biometrische Hardware erkannt.</string>
<string name="fingerprint_no_enrolled">Sie haben keine biometrische Authentifizierung auf diesem Gerät konfiguriert. Bitte gehen Sie zuerst zu den Systemeinstellungen.</string>
<string name="disable_fingerprint_unlock">Biometrisches Entsperren deaktivieren</string>
<string name="enable_fingerprint_unlock">Volles biometrisches Entsperren aktivieren</string>
<string name="enable_fingerprint_quickunlock">Biometrisches Entsperren für QuickUnlock</string>
<string name="fingerprint_unlock_failed">Biometrisches Entsperren fehlgeschlagen. Entschlüsselungsschlüssel wurde vom Android-System für ungültig erklärt. Das kommt üblicherweise vor, wenn die Biometrische Authentifizierung oder die Sicherheitseinstellungen geändert wurden. </string>
<string name="fingerprint_disabled_wrong_masterkey">Entsperren der Datenbank fehlgeschlagen: Ungültiger zusammengesetzter Schlüssel. Biometrisches Entsperren wurde deaktiviert, da das gespeicherte Masterpasswort nicht länger gültig ist.</string>
<string name="fingerprint_reenable">Bitte biometrisches Entsperren für das neue Masterkennwort erneut aktivieren.</string>
<string name="fingerprint_reenable2">Bitte mit Kennwort entsperren und anschließend in den Datenbankeinstellungen das biometrische Entsperren erneut aktivieren.</string>
<string name="FingerprintInitFailed">Initialisierung der biometrischen Authentifizierung fehlgeschlagen. </string>
<string name="fingerprint_hint">Sensor berühren</string>
<string name="fingerprint_description">Fingerabdruck bestätigen um fortzufahren</string>
<string name="fingerprint_fatal">Entsperren mit Fingerabdruck kann nicht eingerichtet werden:</string>
<string name="fingerprint_not_recognized">Fingerabdruck nicht erkannt. Erneut versuchen</string>
<string name="fingerprint_success">Fingerabdruck erkannt</string>
<string name="fingerprint_os_error">Entsperren mit Fingerabdruck benötigt Android 6.0 oder später.</string>
<string name="fingerprint_hardware_error">Keine Fingerabdruck-Hardware erkannt.</string>
<string name="fingerprint_no_enrolled">Auf diesem Gerät sind keine Fingerabdrücke verfügbar. Bitte erst die Systemeinstellungen anpassen.</string>
<string name="disable_fingerprint_unlock">Entsperren mit Fingerabdruck deaktivieren</string>
<string name="enable_fingerprint_unlock">Volles Entsperren mit Fingerabdruck aktivieren</string>
<string name="enable_fingerprint_quickunlock">Entsperren mit Fingerabdruck für QuickUnlock</string>
<string name="fingerprint_unlock_hint">Sensor zum Entsperren berühren</string>
<string name="fingerprint_unlock_failed">Entsperren mit Fingerabdruck fehlgeschlagen. Entschlüsselungsschlüssel wurde vom Android-System für ungültig erklärt. Das kommt üblicherweise vor, wenn ein neuer Fingerabdruck hinzugefügt wurde oder die Sicherheitseinstellungen geändert wurden.</string>
<string name="fingerprint_disabled_wrong_masterkey">Entsperren der Datenbank fehlgeschlagen: Ungültiger zusammengesetzter Schlüssel. Entsperren per Fingerabdruck wurde deaktiviert, da das gespeicherte Masterpasswort nicht länger gültig ist.</string>
<string name="fingerprint_reenable">Bitte Fingerabdruck für das neue Masterpasswort erneut aktivieren.</string>
<string name="fingerprint_reenable2">Bitte mit Passwort entsperren und anschließend in den Datenbankeinstellungen das Entsperren per Fingerabdruck erneut aktivieren.</string>
<string name="FingerprintInitFailed">Fehler beim Initialisieren des Fingerabdruck-Sensors. </string>
<string name="FingerprintSetupFailed">Daten konnten nicht verschlüsselt werden. Dies kann passieren, wenn Fingerabdrücke in den Systemeinstellungen hinzugefügt oder gelöscht wurden, während Keepass2Android auf deinen Fingerabdruck wartet.</string>
<string name="enable_fingerprint_unlock_Info">Mit dieser Option wird das Masterkennwort verschlüsselt im Android-Keystore auf dem Gerät gespeichert, geschützt durch einen Fingerabdruck. Ermöglicht es, die Datenbank per biometrischer Authentifizierung zu entsperren.</string>
<string name="enable_fingerprint_quickunlock_Info">Erlaubt es, die biometrische Authentifizierung anstelle des QuickUnlock-Codes zu nutzen. Speichert keine Informationen bezüglich des Masterkennworts.</string>
<string name="enable_fingerprint_unlock_Info">Mit dieser Option wird das Masterpasswort verschlüsselt im Android-Keystore auf dem Gerät gespeichert, geschützt durch einen Fingerabdruck. Ermöglicht es, die Datenbank per Fingerabdruck zu entsperren.
</string>
<string name="enable_fingerprint_quickunlock_Info">Erlaubt es, den Fingerabdruck anstelle des QuickUnlock-Codes zu nutzen. Speichert keine Informationen bezüglich des Masterpassworts.</string>
<string name="enter_filename">Dateinamen der Datenbank eingeben</string>
<string name="entry_accessed">Letzter Zugriff</string>
<string name="entry_cancel">Abbrechen</string>
@@ -155,7 +159,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="hint_override_url">Override URL</string>
<string name="hint_tags">tag1, tag2</string>
<string name="hint_username">Benutzername</string>
<string name="InvalidPassword">Passwort oder Schlüssel-Datei ungültig.</string>
<string name="InvalidPassword">Kennwort oder Schlüsseldatei ist falsch.</string>
<string name="invalid_algorithm">Ungültiger Algorithmus.</string>
<string name="invalid_db_sig">Datenbank-Format wurde nicht erkannt.</string>
<string name="keyfile_does_not_exist">Schlüssel-Datei existiert nicht.</string>
@@ -267,7 +271,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="ShowUsernameInList_summary">Zeige Benutzernamen unter den Titeln der Einträge. Hilfreich bei mehreren Accounts für einen Dienst oder bei TANs.</string>
<string name="RememberRecentFiles_title">Datenbanken merken</string>
<string name="RememberRecentFiles_summary">Dateinamen der bisher geöffneten Datenbanken speichern und im Bildschirm zum Öffnen der Datenbank anzeigen.</string>
<string name="kp2a_findUrl">Kennwort finden</string>
<string name="kp2a_findUrl">Passwort suchen (KP2A)</string>
<string name="excludeExpiredEntries">Abgelaufene Einträge ausschließen</string>
<string name="search_options">Optionen</string>
<string name="caseSensitive">Groß-/Kleinschreibung beachten</string>
@@ -327,7 +331,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="LockWhenNavigateBack_title">Beim Verlassen der App sperren</string>
<string name="LockWhenNavigateBack_summary">Datenbank sperren, wenn die App mit dem Zurück-Knopf verlassen wird.</string>
<string name="UseKp2aKeyboardInKp2a_title">Benutze Built-In-Tastatur in Keepass2Android</string>
<string name="UseKp2aKeyboardInKp2a_summary">Wenn Sie ihrer Standardtastatur nicht vertrauen, setzen Sie diese Option, um die Built-In-Tastatur beim Eingeben des Masterkennworts oder beim Bearbeiten von Einträgen zu benutzen.</string>
<string name="UseKp2aKeyboardInKp2a_summary">Wenn Sie ihrer Standardtastatur nicht vertrauen, setzen Sie diese Option, um die Built-In-Tastatur beim Eingeben des Masterpassworts oder beim Bearbeiten von Einträgen zu benutzen.</string>
<string name="ActivateSearchViewOnStart_title">Suchfeld beim Start aktivieren</string>
<string name="ActivateSearchViewOnStart_summary">Aktiviert das Suchfeld in der Gruppenansicht nach dem Entsperren oder wenn ein Eintrag gesucht wird.</string>
<string name="NoDonateOption_title">Spenden-Option ausblenden</string>
@@ -472,7 +476,7 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="filestoragehelp_dropboxKP2A">Wenn du Keepass2Android nicht den Zugriff auf die gesamte Dropbox erlauben möchtest, kannst du diese Option wählen. Dann musst du nur Zugriff auf den Ordner Apps/Keepass2Android gewähren. Das ist besonders sinnvoll, wenn du eine neue Datenbank anlegst. Wenn du schon eine Datenbank hast, wähle diese Option aus um den Ordner anzulegen, kopiere die Datei (vom PC aus) in den neuen Ordner und wähle die Option dann erneut zum Laden der Datei.</string>
<string name="filestoragename_gdrive">Google Drive</string>
<string name="filestoragename_pcloud">PCloud</string>
<string name="filestoragehelp_pcloud">Dieser Speichertyp wird nur den Zugriff auf den Ordner \"Applications/Keepass2Android\" anfordern. Wenn du eine vorhandene Datenbank aus deinem PCloud-Konto verwenden möchtest, stelle sicher, dass sich die Datei in diesem Ordner befindet.</string>
<string name="filestoragehelp_pcloud">Dieser Speichertyp fordert nur den Zugriff auf den Ordner Applicationss/Keepass2Android an. Wenn Sie eine bestehende Datenbank aus Ihrem PCloud-Konto verwenden möchten, stellen Sie bitte sicher, dass sich die Datei in diesem Ordner befindet.</string>
<string name="filestoragename_onedrive">OneDrive</string>
<string name="filestoragename_onedrive2">OneDrive</string>
<string name="filestoragename_onedrive2_full">Alle Dateien und freigegebene Dateien</string>
@@ -490,12 +494,12 @@ Der Android Robot wird genutzt und wurde modifiziert basierend auf Arbeiten, die
<string name="help_master_password">Deine Datenbank wird mit dem hier eingegebenen Passwort verschlüsselt. Wähle ein starkes Passwort, um deine Datenbank zu schützen! Tipp: Denke dir ein oder zwei Sätze aus und nutze die Anfangsbuchstaben als Passwort. Übernimm auch die Satzzeichen.</string>
<string name="hint_master_password">Wähle ein Master-Passwort, mit dem deine Datenbank geschützt wird:</string>
<string name="key_file">Schlüsseldatei</string>
<string name="help_key_file">Eine Schlüsseldatei ist im Grunde ein Kennwort, das in einer Datei gespeichert ist. Schlüsseldateien sind üblicherweise stärker als Kennwörter, weil sie deutlich komplexer sein können; allerdings ist es schwerer, sie geheim zu halten. Wenn du deine Datenbank in der Cloud speicherst, solltest du die Schlüsseldatei keinesfalls auch dort ablegen. Das würde sie nutzlos machen! Wichtig: Ändere die Schlüsseldatei nicht mehr, nachdem du die Datenbank angelegt hast!</string>
<string name="help_key_file">Eine Schlüsseldatei ist im Grunde ein Passwort, das in einer Datei gespeichert ist. Schlüsseldateien sind üblicherweise stärker als Passwörter, weil sie deutlich komplexer sein können; allerdings ist es schwerer, sie geheim zu halten. Wenn du deine Datenbank in der Cloud speicherst, solltest du die Schlüsseldatei keinesfalls auch dort ablegen. Das würde sie nutzlos machen! Wichtig: Ändere die Schlüsseldatei nicht mehr, nachdem du die Datenbank angelegt hast!</string>
<string name="hint_key_file">Wähle, ob du eine Schlüsseldatei zusätzlich zum Hauptpasswort nutzen möchtest:</string>
<string name="use_key_file">Schlüsseldatei benutzen</string>
<string name="error_adding_keyfile">Fehler beim Hinzufügen der Schlüsseldatei!</string>
<string name="init_otp">OTP-Hilfsdatei laden…</string>
<string name="otp_explanation">Gib die nächsten Einmalkennwörter (OTPs - One-Time-Passwords) an. Bewege deinen Yubikey NEO an der Rückseite deines Gerätes, für die Eingabe per NFC (erfordert Yubiclip app).</string>
<string name="otp_explanation">Gib die nächsten One-time-Passwörter (OTPs) an. Bewege deinen Yubikey NEO an der Rückseite deines Gerätes, um via NFC einzugeben (erfordert Yubiclip app).</string>
<string name="otp_hint">OTP %1$d</string>
<string name="CouldntLoadOtpAuxFile">Konnte OTP-Hilfsdatei nicht laden!</string>
<string name="CouldntLoadOtpAuxFile_Hint">Bitte nutze das OtpKeyProv-Plugin in Keepass 2.x a PC um deine Datenbank zur Verwendung von One-Time-Passwords einzureichten!</string>
@@ -611,7 +615,7 @@ Anbei einige Hinweise, die bei der Diagnose des Problems helfen können:\n
<string name="configure_child_dbs">Kinddatenbanken konfigurieren…</string>
<string name="child_dbs_title">Kinddatenbanken</string>
<string name="unspecified">nicht spezifiziert</string>
<string name="child_db_explanation">Kinddatenbanken sind andere Datenbanken, die automatisch geöffnet werden können, wenn die übergeordnete Datenbank geöffnet wird. Dazu werden das Masterkennwort und der Dateipfad der Kinddatenbank in der Hauptdatenbank gespeichert. Diese Funktion erlaubt es, einige deiner Kennwörter mit einer anderen Person zu teilen. Die Implementierung ist kompatibel mit KeeAutoExec für PC.</string>
<string name="child_db_explanation">Kinddatenbanken sind andere Datenbanken, die automatisch geöffnet werden können, wenn die übergeordnete Datenbank geöffnet wird. Dazu werden das Master-Passwort und der Dateipfad der Kinddatenbank in der Hauptdatenbank gespeichert. Diese Funktion erlaubt es, einige deiner Passwörter mit einer anderen Person zu teilen. Die Implementierung ist kompatibel mit KeeAutoExec für PC.</string>
<string name="child_db_enabled_on_this_device">Auf diesem Gerät aktiviert</string>
<string name="child_db_enable_on_this_device">Auf diesem Gerät aktivieren</string>
<string name="child_db_disable_on_this_device">Auf diesem Gerät deaktivieren</string>
@@ -629,17 +633,11 @@ Anbei einige Hinweise, die bei der Diagnose des Problems helfen können:\n
<string name="DbQuicklockedChannel_desc">Benachrichtigung wenn die Datenbank mit QuickUnlock gesperrt ist</string>
<string name="EntryChannel_name">Eintrag-Benachrichtigungen</string>
<string name="EntryChannel_desc">Benachrichtigung zum schnellen Zugriff auf den aktuell gewählten Eintrag.</string>
<string name="CloseDbAfterFailedAttempts">Datenbank nach drei fehlgeschlagenen biometrischen Entsperrversuchen schließen.</string>
<string-array name="ChangeLog_1_08">
<item>Benachrichtigungsschalfläche hinzugefügt, um TOTPs in die Zwischenablage zu kopieren</item>
<item>Zu FluentFTP gewechselt, um TLS 1.2 zu unterstützen</item>
<item>Wechseln zur BiometricPrompt API, um Umgang mit Fingerabdrucksensor zu erleichtern und das Entsperren mit FaceUnlock zu ermöglichen, z.B. mit dem Pixel 4.</item>
<item>Fehlerbehebungen</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Zeige Bildschirmtastatur zur Passworteingabe während Fingerabdruckerkennung aktiv ist.</string>
<string name="ChangeLog_1_07b"> Version 1.07b\n
* Verbesserung der Leistung von Argon2 durch die Verwendung einer nativen Implementierung (Danke an Chih-Hsuan Yen!)\n
* Der Fingerabdruck-Leser kann durch anklicken des Fingerabdruck-Symbols deaktiviert werden (das vermeidet Probleme mit Lesern unter der Displayoberfläche, Danke an marcoDallas!)\n
* Cursor-Position wird nach Änderung der Sichtbarkeit von KennwÖrtern wiederhergestellt (Danke an DDoSolitary!)\n
* Cursor-Position wird nach Änderung der Sichtbarkeit von Passwörtern wiederhergestellt (Danke an DDoSolitary!)\n
* Verbesserungen bei der pCloud-Implementierung (noch einmal Danke an gilbsgilbs!)\n
* AutoFill-Unterstützung für verschiedene weitere Browser hinzugefügt \n
* Neue Implementierung für OneDrive: einschließlich Unterstützung für OneDrive for Business, geteilte Dateien, auswählbare Zugriffsbereiche, mehrere Konten und Behebung von Problemen mit Offline-Zugriff\n
@@ -932,7 +930,7 @@ Erstes öffentliches Release</string>
<item>Passwort + Challenge-Response</item>
<item>Passwort + Challenge-Response-Secret (Recovery-Modus)</item>
<item>Passwort + Challenge-Response für Keepass XC</item>
<item>Kennwort + Schlüsseldatei + Challenge-Response für Keepass XC</item>
<item>Passwort + Schlüsseldatei + Challenge-Response für Keepass XC</item>
</string-array>
<string-array name="sftp_auth_modes">
<item>Kennwort</item>
@@ -953,12 +951,12 @@ Erstes öffentliches Release</string>
<string name="autofill_disable">AutoFill für %1$s deaktivieren</string>
<string name="autofill_enable_for">AutoFill für %1$s aktivieren</string>
<string name="invalid_link_association">Webdomain %1$s konnte nicht mit App %2$s in Verbindung gebracht werden</string>
<string name="enable_fingerprint_hint">Keepass2Android hat biometrische Hardware erkannt. Möchtest du Biometrisches Entsperren für diese Datenbank aktivieren?</string>
<string name="enable_fingerprint_hint">Keepass2Android hat einen Fingerabdrucksensor gefunden. Möchtest du das Entsperren mit Fingerabdruck für diese Datenbank aktivieren?</string>
<string name="understand">Ich verstehe</string>
<string name="dont_show_again">Nicht erneut anzeigen</string>
<string name="masterkey_infotext_head">Kennst du dein Master-Passwort?</string>
<string name="masterkey_infotext_main">Bitte beachte, dass du deine Datenbank nicht ohne Master-Passwort öffnen kannst. Es gibt keine Möglichkeit, das Passwort zurückzusetzen.</string>
<string name="masterkey_infotext_fingerprint_note">Beachte auch, dass für das biometrische Entsperren dein Masterkennwort durch Android in einem gesicherten Speicher abgelegt wird. Dieser Speicher kann aber von Android gelöscht oder ungültig gemacht werden, z.B. wenn du einen Fingerabdruck in den Systemeinstellungen hinterlegst. Verlass dich daher bitte nicht auf das biometrische Entsperren sondern merke dir dein Masterkennwort!</string>
<string name="masterkey_infotext_fingerprint_note">Beachte auch, dass für das Entsperren mit Fingerabdruck dein Master-Passwort durch Android in einem gesicherten Speicher abgelegt wird. Dieser Speicher kann aber von Android gelöscht oder ungültig gemacht werden, z.B. wenn du einen Fingerabdruck in den Systemeinstellungen hinterlegst. Verlass dich daher bitte nicht auf den Fingerabdruck, sondern merke dir dein Master-Passwort!</string>
<string name="backup_infotext_head">Ist deine Datenbank gesichert?</string>
<string name="backup_infotext_main">Keepass2Android speichert deine Passwörter in eine Datei an einem Ort deiner Wahl. Bist du sicher, dass du auf diese Datei auch noch Zugriff hast wenn dein Telefon verloren geht oder gestohlen wird? Oder wenn die Datei zerstört oder gelöscht wird? Bitte stelle sicher, dass du immer eine aktuelle Kopie an einem sichern Ort aufbewahrst!</string>
<string name="backup_infotext_note">Um jetzt eine Sicherung zu erstellen, gehe nach %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Σχόλια</string>
@@ -39,15 +40,15 @@
<string name="Entry_singular">Μία καταχώριση</string>
<string name="Entry_plural">%1$d καταχωρίσεις</string>
<string name="IconSet_title">Σετ εικονιδίων</string>
<string name="IconSet_install">Βρείτε περισσότερα...</string>
<string name="IconSet_install">Αναζήτηση περισσότερων...</string>
<string name="security_prefs">Ασφάλεια</string>
<string name="display_prefs">Εμφάνιση</string>
<string name="password_access_prefs">Πρόσβαση στα συνθηματικά</string>
<string name="password_access_prefs">Πρόσβαση στο συνθηματικό</string>
<string name="QuickUnlock_prefs">QuickUnlock</string>
<string name="FileHandling_prefs">Χειρισμός αρχείων</string>
<string name="keyboard_prefs">Πληκτρολόγιο</string>
<string name="export_prefs">Εξαγωγή βάσης δεδομένων...</string>
<string name="fingerprint_prefs">Βιομετρικό ξεκλείδωμα</string>
<string name="fingerprint_prefs">Ξεκλείδωμα με δακτυλικό αποτύπωμα</string>
<string name="import_db_prefs">Εισαγωγή βάσης δεδομένων σε εσωτερικό φάκελο</string>
<string name="import_keyfile_prefs">Εισαγωγή αρχείου κλειδιού σε εσωτερικό φάκελο</string>
<string name="keyboardswitch_prefs">Εναλλαγή πληκτρολογίου</string>
@@ -61,14 +62,11 @@
<string name="brackets">Παρενθέσεις</string>
<string name="cancel">Ακύρωση</string>
<string name="Ok">Ok</string>
<string name="disable_sensor">Απενεργοποίηση αισθητήρα</string>
<string name="enable_sensor">Ενεργοποίηση αισθητήρα</string>
<string name="ClearClipboard">Το πρόχειρο ξκαθαρίστηκε.</string>
<string name="clipboard_timeout">Υπέρβαση χρονικού ορίου πρόχειρου</string>
<string name="clipboard_timeout_summary">Χρόνος πριν την εκκαθάριση του πρόχειρου μετά την αντιγραφή ονόματος χρήστη ή συνθηματικού</string>
<string name="copy_username">Επιλέξτε για αντιγραφή ονόματος χρήστη στο πρόχειρο</string>
<string name="copy_password">Επιλέξτε για αντιγραφή του συνθηματικού στο πρόχειρο</string>
<string name="copy_totp">Επιλογή αντιγραφής TOTP στο clipboard</string>
<string name="available_through_keyboard">Η καταχώριση είναι διαθέσιμη μέσω πληκτρολογίου KP2A</string>
<string name="entry_is_available">είναι διαθέσιμο</string>
<string name="not_possible_im_picker">Αδύνατο το άνοιγμα διαλόγου για επιλογή μεθόδου εισαγωγής. Ενεργοποιήστε το πληκτρολόγιο με μη αυτόματο τρόπο.</string>
@@ -81,25 +79,29 @@
<string name="disclaimer_formal">Το Keepass2Android έρχεται με ΑΠΟΛΥΤΩΣ ΚΑΜΙΑ ΕΓΓΥΗΣΗ. Είναι ελεύθερο λογισμικό και μπορείτε να το αναδιανέμετε υπό τους όρους της GPL έκδοση 2 ή νεότερη.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Αντιγραφή στο πρόχειρο</string>
<string name="fingerprint_description">Χρειάζεται αυθεντικοποίηση για να συνεχίσετε</string>
<string name="fingerprint_fatal">Αποτυχία βιομετρικού ξεκειδώματος:</string>
<string name="fingerprint_not_recognized">Η βιομετρική αυθεντικοποίηση απέτυχε. Δοκιμάστε ξανά</string>
<string name="fingerprint_success">Επιτυχής βιομετρική αυθεντικοποίηση</string>
<string name="fingerprint_os_error">Η βιομετρική αυθεντικοποίηση απαιτεί Android 6.0 τουλάχιστον.</string>
<string name="fingerprint_hardware_error">Δεν ανιχνεύτηκε βιομετρική συσκευή.</string>
<string name="fingerprint_no_enrolled">Δεν έχει ρυθμιστεί βιομετρική αυθεντικοποίηση σε αυτή τη συσκευή. Πηγαίνετε πρώτα στις ρυθμίσεις συστήματος.</string>
<string name="disable_fingerprint_unlock">Απενεργοποίηση βιομετρικού ξεκλειδώματος</string>
<string name="enable_fingerprint_unlock">Ενεργοποίηση πλήρους βιομετρικού ξεκλειδώματος</string>
<string name="enable_fingerprint_quickunlock">Ενεργοποίηση βιομετρικού ξεκλειδώματος για QuickUnlock</string>
<string name="fingerprint_unlock_failed">Αποτυχία βιομετρικού ξεκλειδώματος. Το κλειδί αποκρυπτογράφησης ακυρώθηκε από το Android. Αυτό συμβαίνει συνήθως αν αλλάξει η βιομετρική αυθεντικοποίηση ή οι ρυθμίσεις ασφάλειας. </string>
<string name="fingerprint_disabled_wrong_masterkey">Το ξεκλείδωμα της βάσης δεδομένων απέτυχε: άκυρο σύνθετο κλειδί. Το βιομετρικό ξεκλείδωμα απενεργοποιήθηκε επειδή το αποθηκευμένο πρωτεύον συνθηματικό δεν είναι πλέον έγκυρο. </string>
<string name="fingerprint_reenable">Ενεργοποιήστε ξανά το βιομετρικό ξεκλείδωμα για το νέο πρωτεύον συνθηματικό.</string>
<string name="fingerprint_reenable2">Ξεκλειδώστε με το συνθηματικό και μετά ενεργοποιήστε εκ νέου το βιομετρικό ξεκλείδωμα στις ρυθμίσεις της βάσης δεδομένων.</string>
<string name="FingerprintInitFailed">Αποτυχία αρχικοποίησης βιομετρικής αυθεντικοποίησης. </string>
<string name="fingerprint_hint">Αισθητήρας αφής</string>
<string name="fingerprint_description">Επιβεβαίωση δακτυλικού αποτυπώματος</string>
<string name="fingerprint_fatal">Δεν ενεργοποιήθηκε ξεκλείδωμα με δακτυλικό αποτύπωμα:</string>
<string name="fingerprint_not_recognized">Δεν αναγνωρίστηκε το δακτυλικό αποτύπωμα. Ξαναδοκιμάστε</string>
<string name="fingerprint_success">Το δακτυλικό αποτύπωμα αναγνωρίστηκε</string>
<string name="fingerprint_os_error">Ξεκλείδωμα με δακτυλικό αποτύπωμα απαιτεί Android 6.0 τουλάχιστον.</string>
<string name="fingerprint_hardware_error">Δεν ανιχνεύτηκε εξοπλισμός για δακτυλικό αποτύπωμα.</string>
<string name="fingerprint_no_enrolled">Δεν έχετε καταχωρήσει δακτυλικά αποτυπώματα σε αυτή τη συσκευή. Πηγαίνετε στις ρυθμίσεις συστήματος.</string>
<string name="disable_fingerprint_unlock">Απενεργοποίηση ξεκλειδώματος με δακτυλικό αποτύπωμα</string>
<string name="enable_fingerprint_unlock">Ενεργοποίηση ξεκλειδώματος με δακτυλικό αποτύπωμα</string>
<string name="enable_fingerprint_quickunlock">Ενεργοποίηση ξεκλειδώματος με δακτυλικό αποτύπωμα για QuickUnlock</string>
<string name="fingerprint_unlock_hint">Αγγίξτε αισθητήρα αφής για ξεκλείδωμα της βάσης δεδομένων</string>
<string name="fingerprint_unlock_failed">Το ξεκλείδωμα με δακτυλικό αποτύπωμα απέτυχε. Το κλειδί αποκρυπτογράφησης ακυρώθηκε από το Android. Αυτό συμβαίνει συνήθως όταν δηλωθεί νέο δακτυλικό αποτύπωμα ή αλλάξουν οι ρυθμίσεςι ασφαλείας. </string>
<string name="fingerprint_disabled_wrong_masterkey">Το ξεκλείδωμα της βάσης δεδομένων απέτυχε: άκυρο σύνθετο κλειδί. Το ξεκλείδωμα με δακτυλικό αποτύπωμα απενεργοποιήθηκε, προφανώς επειδή το κύριο κλειδί δεν είναι πλέον έγκυρο. </string>
<string name="fingerprint_reenable">Επενενεργοποιήστε το ξεκλείδωμα με δακτυλικό αποτύπωμα για το νέο βασικό συνθηματικό.</string>
<string name="fingerprint_reenable2">Ξεκλειδώστε με το συνθηματικό σας και έπειτα ενεργοποιήστε το ξεκλείδωμα με δακτυλικό αποτύπωμα στις ρυθμίσεις της βάσης δεδομένων.</string>
<string name="FingerprintInitFailed">Αποτυχία αρχικοποίησης του αισθητήρα δακτυλικού αποτυπώματος </string>
<string name="FingerprintSetupFailed">Αποτυχία κρυπτογράφησης δεδομένων. Μπορεί να συμβεί αν προσθέσεις ή αφαιρέσεις δακτυλικά αποτυπώματα στις ρυθμίσεις συστήματος ενώ το Keypass2Android περιμένει το δακτυλικό σου αποτύπωμα.</string>
<string name="enable_fingerprint_unlock_Info">Το πρωτεύον συνθηματικό θα αποθηκευτεί σε αυτή τη συσκευή, κρυπτογραφημένο στο Android Keystore και θα προστατεύεται με βιομετρική αυθεντικοποίηση. Επιτρέπει το ξεκλείδωμα της βάσης δεδομένων με χρήση βιομετρίας.</string>
<string name="enable_fingerprint_quickunlock_Info">Επιτρέπει τη χρήση βιομετρικής αυθεντικοποίησης αντί του κώδικού QuickUnlock. Δεν αποθηκεύει πληροφορία σχετική με το πρωτεύον συνθηματικό.</string>
<string name="enter_filename">Δώστε όνομα αρχείου της βάσης δεδομένων:</string>
<string name="enable_fingerprint_unlock_Info">Το βασικό συνθηματικό θα αποθηκευτεί σε αυτή τη συσκευή,
κρυπτογραφημένο στην αποθήκη κλειδιών του Android και προστατευμένο
με αυθεντικοποίηση δακτυλικού αποτυπώματος. Επιτρέπει ξεκλείδωμα της βάσης δεδομένων μόνον με δακτυλικό αποτύπωμα. </string>
<string name="enable_fingerprint_quickunlock_Info">Επιτρέπει αυθεντικοποίηση με δακτυλικό αποτύπωμα αντί του κωδικού QuickUnlock. Δεν απαιτεί αποθήκευση πληροφορίας σχετικά με το βασικό συνθηματικό.</string>
<string name="enter_filename">Δώστε όνομα αρχείου της βάσης δεδομένων</string>
<string name="entry_accessed">Προσπελάστηκε</string>
<string name="entry_cancel">Ακύρωση</string>
<string name="entry_comment">Σημειώσεις</string>
@@ -119,7 +121,6 @@
<string name="entry_user_name">Όνομα χρήστη</string>
<string name="entry_extra_strings">Πρόσθετα πεδία κειμένου</string>
<string name="entry_binaries">Συνημμένα αρχεία</string>
<string name="error_can_not_handle_uri">Το Keepass2Android δεν μπορεί να χειριστεί αυτό το URL.</string>
<string name="error_could_not_create_group">Σφάλμα στη δημιουργία ομάδας.</string>
<string name="error_could_not_create_parent">Αδυναμία δημιουργίας γονικού φακέλου.</string>
<string name="error_database_exists">Το αρχείο υπάρχει ήδη.</string>
@@ -136,7 +137,6 @@
<string name="error_rounds_not_number">Οι επαναλήψεις πρέπει να είναι αριθμός.</string>
<string name="error_param_not_number">Η παράμετρος πρέπει να είναι αριθμός.</string>
<string name="error_title_required">Απαιτείται ένας τίτλος.</string>
<string name="error_wrong_length">Εισάγετε θετικό ακέραιο στο πεδίο μήκους</string>
<string name="FileNotFound">Το αρχείο δεν βρέθηκε.</string>
<string name="file_browser">Περιηγητής αρχείων</string>
<string name="generate_password">Παραγωγή τυχαίου συνθηματικού</string>
@@ -151,7 +151,6 @@
<string name="hint_login_pass">Συνθηματικό</string>
<string name="hint_title">όνομα</string>
<string name="hint_url">URL</string>
<string name="hint_override_url">παράκαμψη URL</string>
<string name="hint_tags">ετικέτα1, ετικέτα2</string>
<string name="hint_username">όνομα χρήστη</string>
<string name="InvalidPassword">Μη έγκυρο συνθηματικό ή αρχείο κλειδιού.</string>
@@ -172,7 +171,6 @@
<string name="menu_change_key">Αλλαγή πρωτεύοντος κλειδιού</string>
<string name="menu_copy_pass">Αντιγραφή συνθηματικού</string>
<string name="menu_copy_user">Αντιγραφή χρήστη</string>
<string name="menu_copy_totp">Αντιγραφή TOTP</string>
<string name="menu_create">Δημιουργία</string>
<string name="menu_app_settings">Ρυθμίσεις</string>
<string name="menu_db_settings">Ρυθμίσεις βάσης δεδομένων</string>
@@ -199,7 +197,6 @@
<string name="no">\'Οχι</string>
<string name="no_keys">Καμιά εγγραφή στη βάση δεδομένων ή ομάδα.</string>
<string name="no_results">Δεν βρέθηκαν αποτελέσματα</string>
<string name="no_url_handler">Αυτό το URL δεν έχει χειριστή.</string>
<string name="open_recent">Άνοιγμα πρόσφατης βάσης δεδομένων (πατήστε για άνοιγμα)</string>
<string name="omitbackup_title">Δίχως αναζήτηση σε διαγραμμένες και εφεδρικές εγγραφές</string>
<string name="omitbackup_summary">Παράλειψη ομάδων \'Backup\' και \'Recycle Bin\' στην αναζήτηση</string>
@@ -223,8 +220,8 @@
<string name="rounds_hint">κύκλοι</string>
<string name="argon2memory">Μνήμη για Argon 2 (bytes)</string>
<string name="argon2parallelism">Παραλληλισμός για Argon 2</string>
<string name="database_name">Όνομα βάσης δεδομένων:</string>
<string name="default_username">Προεπιλεγμένο όνομα χρήστη για νέες εγγραφές:</string>
<string name="database_name">Όνομα βάσης δεδομένων</string>
<string name="default_username">Προεπιλεγμένο όνομα χρήστη για νέες εγγραφές</string>
<string name="saving_database">Αποθήκευση βάσης δεδομένων…</string>
<string name="exporting_database">Εξαγωγή βάσης δεδομένων…</string>
<string name="export_database_successful">Η βάση δεδομένων εξήχθηκε με επιτυχία!</string>
@@ -244,9 +241,7 @@
<string name="select_group_then_add">Ανοίξτε την επιθυμητή ομάδα και πιέστε \"%1$s\"!</string>
<string name="insert_element_here">Εισάγετε εδώ</string>
<string name="twofish">Twofish</string>
<string name="underline">Υπογράμμιση</string>
<string name="unsupported_db_version">Μη υποστηριζόμενη έκδοση βάσης δεδομένων.</string>
<string name="uppercase">Κεφαλαία</string>
<string name="warning_read_only">Η κάρτα SD είναι μόνο για ανάγνωση. Πιθανώς δεν θα μπορούν να αποθηκευτούν αλλαγές στη βάση δεδομένων.</string>
<string name="warning_unmounted">Η κάρτα SD δεν είναι συνδεδεμένη στη συσκευή. Δεν θα μπορεί να φορτωθεί ή δημιουργηθεί βάση δεδομένων.</string>
<string name="version_label">Έκδοση</string>
@@ -260,13 +255,12 @@
<string name="please_note">Παρακαλώ σημειώστε</string>
<string name="contributors">Συνεισφορές</string>
<string name="regular_expression">Κανονική έκφραση</string>
<string name="TanExpiresOnUse_title">Το TAN λήγει με τη χρήση του</string>
<string name="TanExpiresOnUse_summary">Σημείωσε τις εγγραφές TAN ως ληγμένες όταν χρησιμοποιηθούν.</string>
<string name="ShowUsernameInList_title">Προβολή ονόματος χρήστη σε λίστα</string>
<string name="ShowUsernameInList_summary">Προβολή ονομάτων χρήστη κάτω από τους τίτλους καταχωρίσεων. Χρήσιμο για πολλαπλούς λογαριασμούς ή TAN.</string>
<string name="RememberRecentFiles_title">Απομνημόνευση βάσεων δεδομένων</string>
<string name="RememberRecentFiles_summary">Απομνημονεύει τις πρόσφατα ανοιγμένες βάσεις δεδομένων και τις προβάλει στην οθόνη Άνοιγμα βάσης δεδομένων.</string>
<string name="kp2a_findUrl">Εύρεση συνθηματικού</string>
<string name="kp2a_findUrl">Keepass2Android: Αναζήτηση συνθηματικού</string>
<string name="excludeExpiredEntries">Εξαίρεση ληγμένων εγγραφών</string>
<string name="search_options">Επιλογές</string>
<string name="caseSensitive">Διαφοροποίηση πεζών-κεφαλαίων</string>
@@ -297,7 +291,7 @@
<string name="BinaryDirectory_title">Φάκελος για συνημμένα αρχεία</string>
<string name="BinaryDirectory_summary">Φάκελος όπου αποθηκεύονται τα συνημμένα αρχεία.</string>
<string name="SaveAttachmentDialog_title">Αποθήκευση συνημμένου</string>
<string name="SaveAttachmentDialog_text">Επιλέξτε πού θα αποθηκεύσετε το συνημμένο.</string>
<string name="SaveAttachmentDialog_text">Παρακαλώ επιλέξτε πού θα αποθηκεύσετε το συνημμένο.</string>
<string name="SaveAttachmentDialog_save">Εξαγωγή σε αρχείο...</string>
<string name="SaveAttachmentDialog_open">Αποθήκευση σε προσωρινή μνήμη και άνοιγμα</string>
<string name="ShowAttachedImage">Προβολή με εσωτερικό πρόγραμμα προβολής εικόνων</string>
@@ -331,7 +325,6 @@
<string name="ActivateSearchViewOnStart_summary">Ενεργοποιεί το πεδίο αναζήτησης για τις ομάδες μετά το ξεκλείδωμα ή κατά την αναζήτηση</string>
<string name="NoDonateOption_title">Απόκρυψη της επιλογής Δωρεά</string>
<string name="NoDonateOption_summary">Αυτή η ρύθμιση είναι για δωρητές. Είναι διαθέσιμο μετά τη χρήση του Keepass2Android για λίγο μόνο.</string>
<string name="NoDonateOption_question">Δίχως χορηγίες, αυτή η εφαρμογή δεν θα υπήρχε και δεν θα εξελισσόταν! Αν δεν έχετε συνεισφέρει ακόμη, σκεφτείτε το</string>
<string name="NoDonationReminder_title">Μην ζητάς προσφορά</string>
<string name="NoDonationReminder_summary">Δε δίνω δυάρα ή έχω ήδη κάνει προσφορά. Μη ζητάς προσφορά, ούτε καν στα γενέθλια του κατασκευαστή.</string>
<string name="UseOfflineCache_title">Προσωρινή αποθήκευση βάσης δεδομένων</string>
@@ -471,12 +464,8 @@
<string name="filestoragehelp_dropboxKP2A">Αν δεν θέλεις να δώσεις στο Keepass2Android πλήρη πρόσβαση στο Dropbox, μπορείς να διαλέξεις αυτή την επιλογή. Θα ζητήσει πρόσβαση μόνο στο φάκελο Apps/Keepass2Android. Ταιριάζει ειδικά στη δημιουργία νέας βάσης δεδομένων. Αν ήδη έχεις μια βάση δεδομένων, διάλεξε αυτή την επιλογή για να δημιουργήσεις το φάκελο, μετά τοποθέτησε το αρχείο σου μέσα στο φάκελο (από το PC) και μετά διάλεξε αυτή την επιλογή πάλι για να ανοίξεις το αρχείο. </string>
<string name="filestoragename_gdrive">Google Drive</string>
<string name="filestoragename_pcloud">PCloud</string>
<string name="filestoragehelp_pcloud">Αυτός ο τύπος αποθήκευσης θα ζητήσει πρόσβαση στο φάκελο \"Applications/Keepass2Android\". Αν θέλετε να χρησιμοποιήσετε μια υπάρχουσα βάση δεδομένων από το λογαριασμό PCloud, βεβαιωθείτε ότι το αρχείο είναι τοποθετημένο σε αυτό τον φάκελο.</string>
<string name="filestoragename_onedrive">OneDrive</string>
<string name="filestoragename_onedrive2">OneDrive</string>
<string name="filestoragename_onedrive2_full">Όλα τα αρχεία και τα κοινά αρχεία</string>
<string name="filestoragename_onedrive2_myfiles">Τα αρχεία μου</string>
<string name="filestoragename_onedrive2_appfolder">Φάκελος εφαρμογής Keepass2Android</string>
<string name="filestoragename_sftp">SFTP (μεταφορά αρχείων SSH)</string>
<string name="filestoragename_content">Επιλογέας αρχείων συστήματος</string>
<string name="filestorage_setup_title">Προετοιμασία προσπέλασης του αρχείου</string>
@@ -627,32 +616,7 @@
<string name="DbQuicklockedChannel_desc">Ειδοποίηση για τη βάση δεδομένων που κλειδώνεται με QuickUnlock</string>
<string name="EntryChannel_name">Ειδοποιήσεις</string>
<string name="EntryChannel_desc">Ειδοποίηση για απλοποιημένη πρόσβαση στην τρέχουσα εγγραφή.</string>
<string name="CloseDbAfterFailedAttempts">Κλείσιμο της βάσης δεδομένων μετά από 3 ανεπιτυχείς προσπάθειες βιομετρικού ξεκλειδώματος.</string>
<string-array name="ChangeLog_1_08">
<item>Προσθήκη πλήκτρου ειδοποίησης για αντιγραφή στο TOTP clipboard</item>
<item>Αλλαγή προς FluentFTP για παροχή υποστήριξης TLS 1.2</item>
<item>Αλλαγή στo BiometricPrompt API για βελτίωση της εμπειρίας χρήστη με ξεκλείδωμα δακτυλικού αποτυπώματος και χρήση αναγνώρισης προσώπου, πχ στο Pixel 4.</item>
<item>Διορθώσεις σφαλμάτων</item>
</string-array>
<string name="ChangeLog_1_07b">Έκδοση 1.07b\n
* Βελτίωση επιδόσεων Argon2 με χρήση εγγενούς υλοποίησης (ευχαριστώ Chih-Hsuan Yen!)\n
* Επιτρέπει απενεργοποίηση δακτυλικού αποτυπώματος με κλικ στο εικονίδιο (λύνει το ζήτημα με τους αναγνώστες δακτυλικού αποτυπώματος κάτω από την οθόνη, ευχαριστώ marcoDallas!)\n
* Επαναφέρει τη θέση του δρομέα όταν αλλάζει η ορατότητα του συνθηματικού (ευχαριστώ DDoSolitary!)\n
* Βελτιώσεις στην υλοποίηση PCloud (ευχαριστώ gilbsgilbs πάλι!)\n
* Υποστήριξη AutoFill για πολλούς browsers \n
* Νέα υλοποίηση για OneDrive: περιλαμβάνει υποστήριξη OneDrive for Business, κοινόχρηστα αρχεία, επιλεγόμενα επίπεδα πρόσβασης, πολλαπλούς λογαριασμούς και διορθώνει ζητήματαμε offline πρόσβαση\n
* Διόρθωση σφαλμάτων </string>
<string name="ChangeLog_1_07">Εκδοση 1.07\n
* Διορθώνει κρασαρίσματα στο Samsung\'s Android 9\n
* Επιτρέπει άνοιγμα περισσότερων από μιας βάσεων δεδομένων, συμβατό με KeeAutoExec\n
* SFTP: Επιτρέπει αυθεντικοποίηση δημόσιου κλειδιού, ελέγχει για αλλαγή host key\n
* Εισάγει υποστήριξη pCloud - ευχαριστώ gilbsgilbs!\n
* Προβάλει την υποστήριξη Nextcloud\n
* Βελτιώνει την αποθήκευση και ενημέρωση συνημμένων\n
* Περισσότερες επιλογές διαμόρφωσης συμπεριφοράς στις προσωπικές προτιμήσεις\n
* SSL: Πιστοποιητικά έμπιστου χρήστη\n
* Βελτίωση autofill (λειτουργεί με Firefox, επιτρέπει μείωση αναδυόμενων)\n
* Διόρθωση σφαλμάτων\n </string>
<string name="ShowKeyboardDuringFingerprintAuth">Προβάλει το πληκτρολόγιο για εισαγωγή συνθηματικού όταν είναι ενεργή η σάρωση δακτυλικού αποτυπώματος.</string>
<string name="ChangeLog_1_06">Έκδοση 1.06\n
* Χρήση του ykDroid αντί του YubiChallenge ως εφαρμογή για Yubikey Πρόκληση-Απόκριση.\n
* Υλοποίηση υποστήριξης για KeepassXC-style Challenge-Response. Σημείωση: Το φορμάτ της βάσης δεδομένων πρέπει να είναι KDBX4!\n * Άρνηση φόρτωσης πεταμένων αρχείων από το Google Drive\n
@@ -951,16 +915,15 @@ Initial public release
<string name="autofill_disable">Απενεργοποίηση AutoFill για %1$s</string>
<string name="autofill_enable_for">Ενεργοποίηση AutoFill για %1$s</string>
<string name="invalid_link_association">Δεν σχετίζεται το web domain %1$s με την εφαρμογή %2$s</string>
<string name="enable_fingerprint_hint">Το Keepass2Android ανίχνευσε βιομετρικό εξοπλισμό. Θέλετε να ενεργοποιήσετε βιομετρικό ξεκλείδωμα για αυτή τη βάση δεδομένων;</string>
<string name="enable_fingerprint_hint">Το Keepass2Android ανίχνευσε εξοπλισμό δακτυλικού αποτυπώματος. Θέλετε να ενεργοποιήσετε το ξεκλείδωμα με δακτυλικό αποτύπωμα για αυτή τη βάση δεδομένων;</string>
<string name="understand">Καταλαβαίνω</string>
<string name="dont_show_again">Να μην εμφανιστεί ξανά</string>
<string name="masterkey_infotext_head">Θυμάστε το κύριο συνθηματικό σας;</string>
<string name="masterkey_infotext_main">Είναι αδύνατο να ανοίξετε τη βάση δεδομένων δίχως το κύριο συνθηματικό.</string>
<string name="masterkey_infotext_fingerprint_note">Το βιομετρικό ξεκλείδωμα λειτουργεί αποθηκεύοντας το πρωτεύον κλειδί στον ασφαλή χώρο αποθήκευσης του Android. Αυτός ο χώρος μπορεί να διαγραφεί από το Android ανά πάσα στιγμή, πχ αν προσθέσετε νέο δακτυλικό αποτύπωμα στις ρυθμίσεις συστήματος. Μην βασίζεστε στο βιομετρικό ξεκλείδωμα, αλλά να θυμάστε το πρωτεύον συνθηματικό!</string>
<string name="masterkey_infotext_fingerprint_note">Το ξεκλείδωμα δακτυλικού αποτυπώματος λειτουργεί αποθηκεύοντας το κύριο κλειδί στο χώρο ασφαλούς αποθήκευσης του Android. Αυτός μπορεί να διαγραφτεί ανά πάσα στιγμή, πχ όταν προστίθεται νέο δακτυλικό αποτύπωμα στις ρυθμίσεις συστήματος. Γι αυτό μην βασίζεστε στο δακτυλικό αποτύπωμα, αλλά να θυμάστε το κύριο συνθηματικό!</string>
<string name="backup_infotext_head">Έχετε αντίγραφο ασφαλείας της βάσης δεδομένων;</string>
<string name="backup_infotext_main">Το Keepass2Android αποθηκεύει τα συνθηματικά σας σε αρχείο σε τοποθεσία επιλογής σας. Είναι σίγουρο ότι μπορείτε να βρείτε αυτό το αρχείο σε περίπτωση απώλειας του κινητού σας; Βεβαιωθείτε ότι έχετε ενημερωμένο αντίγραφο σε ασφαλή τοποθεσία!</string>
<string name="backup_infotext_note">Για αντίγραφο ασφαλείας, %1$s &gt; %2$s &gt; %3$s.</string>
<string name="emergency_infotext_head">Είστε προετοιμασμένοι για έκτακτα περιστατικά;</string>
<string name="emergency_infotext_main">Αναρωτηθήκατε τι συμβαίνει αν δεν είνα δυνατόν να προσπελάσετε τη βάση δεδομένων με τα συνθηματικά σας; Ή στην περίπτωση που έχετε ένα ατύχημα; Συνιστάται να μοιράζεστε το κύριο συνθηματικό σας με κάποιο έμπιστο άτομο. Διαφορετικά, κανένας δεν θα προσπελάσει στα συνθηματικά σας.</string>
<string name="no_secure_display">Η τρέχουσα επιλεγμένη οθόνη δεν αναγνωρίζεται ως ασφαλής. Αυτό σημαίνει ότι άλλες εφαρμογές μπορούν να πάρουν screenshots. Το Keepass2Android είναι ρυθμισμένο να προβάλει ευαίσθητη πληροφορία μόνον σε ασφαλείς οθόνες. Αλλάξτε σε ασφαλή οθόνη (πχ αποσυνδέοντας μια οθόνη HDMI) ή αλλάξτε τις ρυθμίσεις της εφαρμογής.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Sugerencias</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">Manejo de ficheros</string>
<string name="keyboard_prefs">Teclado</string>
<string name="export_prefs">Exportar base de datos...</string>
<string name="fingerprint_prefs">Desbloqueo biométrico</string>
<string name="fingerprint_prefs">Desbloqueo con huella digital</string>
<string name="import_db_prefs">Importar base de datos a carpeta interna</string>
<string name="import_keyfile_prefs">Importar archivo de clave a carpeta interna</string>
<string name="keyboardswitch_prefs">Cambio de teclado</string>
@@ -81,24 +82,27 @@
<string name="disclaimer_formal">Keepass2Android NO TIENE TOTAL GARANTÍA; Este es software libre, y puedes redristribuirlo bajo las condiciones de la licencia GPL version 2 o posterior.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Copiar al portapapeles</string>
<string name="fingerprint_description">Por favor autentícate para continuar</string>
<string name="fingerprint_hint">Sensor táctil</string>
<string name="fingerprint_description">Confirmar huella dactilar para continuar</string>
<string name="fingerprint_fatal">No se puede configurar desbloqueo con huella dactilar:</string>
<string name="fingerprint_not_recognized">La autenticación biométrica falló. Inténtalo de nuevo</string>
<string name="fingerprint_success">Autenticación biométrica activada</string>
<string name="fingerprint_not_recognized">Huella dactilar no reconocida. Vuelve a intentarlo</string>
<string name="fingerprint_success">Huella dactilar reconocida</string>
<string name="fingerprint_os_error">El desbloqueo con huellas dactilares requiere Android 6.0 o posterior.</string>
<string name="fingerprint_hardware_error">No se ha detectado hardware biométrico.</string>
<string name="fingerprint_no_enrolled">No ha configurado la autenticación biométrica en este dispositivo. Diríjase primero a la configuración del sistema.</string>
<string name="disable_fingerprint_unlock">Deshabilitar Desbloqueo Biométrico</string>
<string name="enable_fingerprint_unlock">Habilitar Desbloqueo Biométrico Completo</string>
<string name="enable_fingerprint_quickunlock">Activar Desbloqueo Biométrico para QuickUnlock</string>
<string name="fingerprint_unlock_failed">Desbloqueo Biométrico fallido. La clave de descifrado fue invalidada por el SO Android. Esto suele suceder si se modifica una configuración de autenticación o seguridad biométrica. </string>
<string name="fingerprint_disabled_wrong_masterkey">Error al desbloquear la base de datos: clave compuesta no válida. El Desbloqueo Biométrico se deshabilitó porque aparentemente la contraseña maestra almacenada ya no es válida. </string>
<string name="fingerprint_reenable">Vuelva a habilitar el Desbloqueo Biométrico para la nueva contraseña maestra.</string>
<string name="fingerprint_reenable2">Desbloquee con su contraseña y vuelva a habilitar el Desbloqueo Biométrico en la configuración de la base de datos.</string>
<string name="FingerprintInitFailed">Error al inicializar la autenticación biométrica. </string>
<string name="fingerprint_hardware_error">Hardware de huellas dactilares no detectado.</string>
<string name="fingerprint_no_enrolled">Este dispositivo no tiene huellas dactilares almacenadas. Por favor, ve a configuración de sistema primero.</string>
<string name="disable_fingerprint_unlock">Desactivar desbloqueo con huella dactilar</string>
<string name="enable_fingerprint_unlock">Habilitar desbloqueo completo con huella dactilar</string>
<string name="enable_fingerprint_quickunlock">Habilitar desbloqueo con huella dactilar para QuickUnlock</string>
<string name="fingerprint_unlock_hint">Utiliza el sensor táctil para desbloquear la base de datos</string>
<string name="fingerprint_unlock_failed">Falló el Desbloqueo con huella dactilar. La clave de descifrado fue invalidada por el SO Android. Esto sucede generalmente si se inscribió una nueva huella o se cambió la configuración de seguridad. </string>
<string name="fingerprint_disabled_wrong_masterkey">No se pudo desbloquear la base de datos: clave compuesta no válida. El Desbloqueo con huellas dactilares fue desactivado debido a que al parecer ya no es válida la contraseña maestra almacenada. </string>
<string name="fingerprint_reenable">Por favor, vuelve a activar el desbloqueo con la huella dactilar para la nueva contraseña maestra.</string>
<string name="fingerprint_reenable2">Por favor, desbloquée con contraseña y luego vuelva a activar Desbloquear con huella en la configuración de la base de datos.</string>
<string name="FingerprintInitFailed">Error al inicializar el sensor de huellas dactilares. </string>
<string name="FingerprintSetupFailed">No se pudo cifrar los datos. Esto puede suceder si se añaden o eliminan huellas dactilares en la configuración del sistema mientras Keepass2Android está esperando su huella digital.</string>
<string name="enable_fingerprint_unlock_Info">Esto almacenará su contraseña maestra en este dispositivo, encriptada con Android Keystore y protegida mediante autenticación biométrica. Permite desbloquear su base de datos solo usando biometría.</string>
<string name="enable_fingerprint_quickunlock_Info">Permite utilizar la autenticación biométrica en lugar del código QuickUnlock. No almacena ninguna información relacionada con su contraseña maestra.</string>
<string name="enable_fingerprint_unlock_Info">Esto almacenará tu contraseña maestra en este dispositivo, cifrada con las claves del almacén de claves de Android y protegidos
mediante la autenticación de huellas dactilares. Esto permite desbloquear la base de datos solamente con la huella dactilar.</string>
<string name="enable_fingerprint_quickunlock_Info">Permite utilizar la autenticación de la huella dactilar en lugar del código de QuickUnlock. No se almacena ninguna información relacionada con la contraseña maestra.</string>
<string name="enter_filename">Introduzca el nombre del archivo de base de datos</string>
<string name="entry_accessed">Accedido</string>
<string name="entry_cancel">Cancelar</string>
@@ -266,7 +270,7 @@
<string name="ShowUsernameInList_summary">Mostrar nombres de usuario por debajo de los títulos de entrada. Útil para múltiples cuentas o TANs.</string>
<string name="RememberRecentFiles_title">Recordar Bases de Datos</string>
<string name="RememberRecentFiles_summary">Recuerda la base de datos recientemente abierta y se muestra en la pantalla.</string>
<string name="kp2a_findUrl">Encuentra una contraseña</string>
<string name="kp2a_findUrl">Keepass2Android: Buscar contraseña</string>
<string name="excludeExpiredEntries">Excluir las entradas caducadas</string>
<string name="search_options">Opciones</string>
<string name="caseSensitive">Distingue mayúsculas</string>
@@ -627,13 +631,7 @@
<string name="DbQuicklockedChannel_desc">Notificación acerca de que la base de datos está siendo bloqueada con QuickUnlock</string>
<string name="EntryChannel_name">Notificaciones de entrada</string>
<string name="EntryChannel_desc">Notificación para simplificar el acceso a la entrada seleccionada actualmente.</string>
<string name="CloseDbAfterFailedAttempts">Cierre la base de datos después de tres intentos fallidos de desbloqueo biométrico.</string>
<string-array name="ChangeLog_1_08">
<item>Añadir botón de notificación para copiar TOTP al portapapeles</item>
<item>Cambiar a usar FluentFTP para proporcionar soporte para TLS 1.2</item>
<item>Cambiar a API BiometricPrompt para mejorar la experiencia del usuario con el desbloqueo de huellas dactilares y permitir el uso de desbloqueo facial, por ejemplo en Pixel 4.</item>
<item>Corrección de errores</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Mostrar teclado para entrada de contraseña estando activada la exploración de huella digital.</string>
<string name="ChangeLog_1_07b"> Versión 1.07b\n
* Mejores de rendimiento Argon2 usando implementación nativa (Gracias a Chih-Hsuan Yen!)\n
* Permite inhabilitar huella dactilar pulsando en el icono de huella dactilar (evita el problema con los lectores de huella dactilar bajo la pantalla, gracias a marcoDallas!)\n
@@ -964,12 +962,12 @@ Publicación inicial</string>
<string name="autofill_disable">Desactivar Autorrelleno para %1$s</string>
<string name="autofill_enable_for">Activar Autorrelleno para %1$s</string>
<string name="invalid_link_association">No se pudo asociar el dominio web %1$s con la app %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android ha detectado hardware biométrico. ¿Desea habilitar el Desbloqueo Biométrico para esta base de datos?</string>
<string name="enable_fingerprint_hint">Keepass2Android ha detectado hardware de huellas dactilares. ¿Desea activar desbloqueo de esta base de datos mediante huella digital?</string>
<string name="understand">Entiendo</string>
<string name="dont_show_again">No volver a mostrar</string>
<string name="masterkey_infotext_head">¿Recuerda su contraseña maestra?</string>
<string name="masterkey_infotext_main">Tenga en cuenta que no será capaz de abrir la base de datos sin la contraseña maestra. No hay manera de reiniciar o \"resetear\" la contraseña maestra.</string>
<string name="masterkey_infotext_fingerprint_note">También tenga en cuenta que el Desbloqueo Biométrico funciona almacenando su clave maestra en el almacenamiento seguro de Android. Android puede eliminar este almacenamiento en cualquier momento, p. ej. si agrega una nueva huella digital en la configuración del sistema. Así que no confíe en el Desbloqueo Biométrico, pero recuerde su contraseña maestra, ¡por favor!</string>
<string name="masterkey_infotext_fingerprint_note">También tenga en cuenta que el desbloqueo por huella dactilar funciona almacenando su clave maestra en un almacenamiento seguro de Android. Este almacenamiento puede ser borrado por Android en cualquier momento, por ejemplo, si agrega una nueva huella en la configuración del sistema. Así que no confíe en su huella dactilar ¡pero recuerde su contraseña maestra, por favor!</string>
<string name="backup_infotext_head">¿Se está haciendo copia de seguridad de su base de datos?</string>
<string name="backup_infotext_main">Keepass2Android guarda sus contraseñas en un archivo en una ubicación de su elección. ¿Está seguro de que aún puede acceder a este archivo cuando su teléfono se pierde o lo roban, o cuando el archivo es destruido o borrado? ¡Por favor, asegúrese de que siempre tiene una copia de seguridad actualizada en un lugar seguro!</string>
<string name="backup_infotext_note">Para crear una copia de seguridad ahora, vaya a %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Iruzkinak</string>
@@ -16,11 +17,7 @@
<string name="short_app_name">KP2A</string>
<string name="app_name_nonet">Keepass2Android Offline</string>
<string name="short_app_name_nonet">KP2A Offline</string>
<string name="app_timeout">Aplikazioa denboraz kanpo</string>
<string name="kill_app_label">Aplikazioaren prozesua hil</string>
<string name="show_kill_app">Itxi-botoia</string>
<string name="application">Aplikazioa</string>
<string name="application_settings">Aplikazioaren ezarpenak</string>
<string name="ShowGroupnameInSearchResult_title">Erakutsi taldearen izena bilaketaren emaitzan</string>
<string name="NavigationToGroupCompleted_message">Bistaratze taldea orain: %1$s</string>
<string name="ShowGroupInEntry_title">Erakutsi taldearen izena sarrera guztietan</string>
@@ -34,8 +31,7 @@
<string name="FileHandling_prefs">Fitxategien trataera</string>
<string name="keyboard_prefs">Teklatua</string>
<string name="export_prefs">Esportatu datu-basea...</string>
<string name="fingerprint_prefs">Desblokeatze biometrikoa</string>
<string name="import_db_prefs">Inportatu datu-basea barne karpetara</string>
<string name="fingerprint_prefs">Hatz-marka bidezko desblokeoa</string>
<string name="import_keyfile_prefs">Inportatu gakoa barne karpetara</string>
<string name="keyboardswitch_prefs">Teklatu aldaketa</string>
<string name="OnlyAvailableForLocalFiles">Tokiko fitxategientzat besterik ez.</string>
@@ -44,13 +40,9 @@
<string name="unlock_database_title">Desblokeatu datu-basea</string>
<string name="brackets">Parentesiak</string>
<string name="cancel">Utzi</string>
<string name="Ok">Ados</string>
<string name="disable_sensor">Sensorea ezgaitu</string>
<string name="enable_sensor">Sensorea gaitu</string>
<string name="ClearClipboard">Arbela garbituta.</string>
<string name="clipboard_timeout">Arbelaren dembora-muga</string>
<string name="clipboard_timeout_summary">Erabiltzaile-izena edo pasahitza kopiatu eta gero arbela garbitzeko denbora-muga</string>
<string name="copy_password">Hautatu pasahitza arbelera kopiatzeko</string>
<string name="entry_is_available">eskuragarri dago</string>
<string name="creating_db_key">Datu-basearen gakoa sortzen…</string>
<string name="current_group">Uneko taldea</string>
@@ -59,9 +51,19 @@
<string name="digits">Digituak</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopiatu arbelean</string>
<string name="fingerprint_description">Mesedez autentikatu jarraitzeko</string>
<string name="fingerprint_fatal">Ezin da Desblokeo Biometrikoa ezarri:</string>
<string name="disable_fingerprint_unlock">Desgaitu Desblokeatze Biometrikoa</string>
<string name="fingerprint_hint">Ukitze-sentsorea</string>
<string name="fingerprint_description">Berretsi hatz-marka jarraitzeko</string>
<string name="fingerprint_fatal">Ezin izan da hatz-marka bidezko desblokeoa ezarri:</string>
<string name="fingerprint_not_recognized">Ez da hatz-mark ezagutu. Saiatu berriro</string>
<string name="fingerprint_success">Hatz-marka ezagutu da</string>
<string name="fingerprint_os_error">Hatz-marka bidezko desblokeoak Android 6.0 edo berriagoa behar du.</string>
<string name="fingerprint_hardware_error">Ez da hatz-markak irakurtzeko harware-a aurkitu.</string>
<string name="fingerprint_no_enrolled">Ez duzu hatz-markarik erregistratu gailu honetan. Zoaz Android sistemaren ezarpenetara aurretik.</string>
<string name="disable_fingerprint_unlock">Desgaitu hatz-marka bidezko desblokeatzea</string>
<string name="enable_fingerprint_unlock">Gaitu hatz-marka bidezko desblokeo osoa</string>
<string name="enable_fingerprint_quickunlock">Gaitu haz-marka bidezko desblokeoa QuickUnlocken</string>
<string name="fingerprint_unlock_hint">Ukitu sentsorea datu-basea desblokeatzeko</string>
<string name="enable_fingerprint_quickunlock_Info">Quick-Unlock kodearen ordez hatz-marka erabiltzea baimentzen dizu. Ez du zure pasahitz nagusiarekin erlazionatutako informazioa gordetzeko beharrik.</string>
<string name="enter_filename">Idatzi datu-basearen fitxategi-izena</string>
<string name="entry_accessed">Atzituta</string>
<string name="entry_cancel">Utzi</string>
@@ -108,7 +110,6 @@
<string name="hint_login_pass">Pasahitza</string>
<string name="hint_title">izena</string>
<string name="hint_url">URLa</string>
<string name="hint_override_url">gainidatzi URLa</string>
<string name="hint_tags">etiketa1, etiketa2</string>
<string name="hint_username">erabiltzaile-izena</string>
<string name="InvalidPassword">Pasahitz edo gako-fitxategi baliogabea.</string>
@@ -188,9 +189,7 @@
<string name="select_other_entry">Aukeratu beste sarrera bat</string>
<string name="insert_element_here">Txertatu hemen</string>
<string name="twofish">Twofish</string>
<string name="underline">Azpimarra</string>
<string name="unsupported_db_version">Euskarririk gabeko datu-basearen bertsioa.</string>
<string name="uppercase">Maiuskula</string>
<string name="version_label">Bertsioa</string>
<string name="version_history">Bertsio-historia</string>
<string name="please_note">Kontuan izan</string>
@@ -198,7 +197,7 @@
<string name="regular_expression">Adierazpen erregularra</string>
<string name="ShowUsernameInList_title">Bistaratu erabiltzaile-izena zerrendan</string>
<string name="RememberRecentFiles_title">Gogoratu datu-baseak</string>
<string name="kp2a_findUrl">Pasahitza aurkitu</string>
<string name="kp2a_findUrl">Keepass2Android: Aurkitu pasahitza</string>
<string name="excludeExpiredEntries">Ezikusi iraungitako sarrerak</string>
<string name="search_options">Aukerak</string>
<string name="caseSensitive">Bereizi Maiuskulak/minuskulak</string>
@@ -221,7 +220,6 @@
<string name="QuickUnlock_fail">QuickUnlock errorea: pasahitz okerra!</string>
<string name="BinaryDirectory_title">Eranskinen karpeta</string>
<string name="SaveAttachmentDialog_title">Gorde eranskina</string>
<string name="SaveAttachmentDialog_save">Fitxategira esportatu...</string>
<string name="SaveAttachmentDialog_open">Gorde katxean eta ireki</string>
<string name="SaveAttachment_doneMessage">Gorde fitxategia hemen: %1$s.</string>
<string name="AddUrlToEntryDialog_title">Gogoratu bilaketaren testua?</string>
@@ -293,7 +291,6 @@
<string name="hint_sftp_port">ataka</string>
<string name="initial_directory">Hasierako karpeta (aukerazkoa):</string>
<string name="enter_sftp_login_title">Idatzi SFTP saioaren datuak:</string>
<string name="sftp_auth_mode">Autentikazio modua</string>
<string name="enter_ftp_login_title">Idatzi FTP saioaren datuak:</string>
<string name="select_storage_type">Hautatu biltegiratze mota:</string>
<string name="filestoragename_file">Tokiko fitxategia</string>
@@ -303,14 +300,11 @@
<string name="filestoragename_http">HTTP (WebDav)</string>
<string name="filestoragename_https">HTTPS (WebDav)</string>
<string name="filestoragename_owncloud">OwnCloud</string>
<string name="filestoragename_nextcloud">Nextcloud</string>
<string name="filestoragename_dropbox">Dropbox</string>
<string name="filestoragename_dropboxKP2A">Dropbox (KP2A karpeta)</string>
<string name="filestoragename_gdrive">Google Drive</string>
<string name="filestoragename_pcloud">PCloud</string>
<string name="filestoragename_onedrive">OneDrive</string>
<string name="filestoragename_onedrive2">OneDrive</string>
<string name="filestoragename_onedrive2_myfiles">Nire fitxategiak</string>
<string name="filestoragename_sftp">SFTP (SSH fitxategi transmisioa)</string>
<string name="filestoragename_content">Sistemako fitxategi hartzailea</string>
<string name="database_location">Datu-basearen kokalekua</string>
@@ -369,10 +363,6 @@
<string name="AskAddTemplatesTitle">Gehitu txantiloiak?</string>
<string name="AskAddTemplatesMessage">Keepass2Androidek E-posta kontuen, Haririk gabeko sareen pasahitzen, ohar seguruen eta abarren txantiloiak ditu. Zure datu-basera gehitu nahi dituzu? Ezetz aukeratzen baduzu geroago ere gehitu ditzakezu datu-basearen ezarpenetan.</string>
<string name="Continue">Jarraitu</string>
<string name="open_other_db">Beste datu-base bat iriki...</string>
<string name="select_database">Hautatu datu-basea</string>
<string name="Visible_title">Ikusgai</string>
<string name="database_file_heading">Datu-basearen fitxategia</string>
<string name="DbQuicklockedChannel_name">QuickUnlock</string>
<string name="ChangeLog_0_9_7">0.9.7 bertsioa\n
* Keepass 1 (kdb) datu-baseak idazteko gaitasuna (beta!)\n

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">ﺑﺎﺯﺧﻮﺭﺩ</string>
@@ -21,8 +22,6 @@ JCraft ایجاد شده است. تحت مجوز BSD.</string>
<string name="short_app_name">KP2A</string>
<string name="app_name_nonet">Keepass2Android آفلاین</string>
<string name="short_app_name_nonet">KP2A آفلاین</string>
<string name="app_timeout_summary">در صورتی که نرم افزار در این مدت فعالیتی نداشته باشد پایگاه داده قفل می شود.</string>
<string name="kill_app_label">قطع کردن پروسه پردازش نرم افزار</string>
<string name="show_kill_app">دکمهٔ بستن</string>
<string name="ShowGroupnameInSearchResult_title">نمایش نام گروه در نتیجهٔ جست‌وجو</string>
<string name="ShowGroupnameInSearchResult_resume">نام گروه را زیر عنوان مدخل در نتایج جست‌وجو نشان می‌دهد. هنگامی که چندین مدخل همنام وجود دارد سودمند است.</string>
@@ -42,6 +41,7 @@ JCraft ایجاد شده است. تحت مجوز BSD.</string>
<string name="FileHandling_prefs">فایل‌گردانی</string>
<string name="keyboard_prefs">صفحه‌کلید</string>
<string name="export_prefs">صدور پایگاه‌داده...</string>
<string name="fingerprint_prefs">قفل‌گشایی با اثرانگشت</string>
<string name="import_db_prefs">واردکردن پایگاه‌داده به پوشهٔ داخلی</string>
<string name="import_keyfile_prefs">واردکردن فایل کلید به پوشهٔ داخلی</string>
<string name="keyboardswitch_prefs">تعویض صفحه‌کلید</string>
@@ -72,6 +72,25 @@ JCraft ایجاد شده است. تحت مجوز BSD.</string>
<string name="disclaimer_formal">برنامهٔ Keepass2Android هیچ‌گونه ضمانتی ندارد. این نرم‌افزار رایگان است و از لطف شماست که آن را تحت شرایط GPL نسخهٔ ۲ یا بالاتر بازپخش کنید.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">کپی‌کردن در بریده‌دان</string>
<string name="fingerprint_hint">حسگر را لمس کنید</string>
<string name="fingerprint_description">برای ادامه، اثرانگشت را تایید کنید</string>
<string name="fingerprint_fatal">راه‌اندازی قفل‌گشایی با اثرانگشت ناموفق بود:</string>
<string name="fingerprint_not_recognized">اثرانگشت شناسایی نشد. دوباره تلاش کنید.</string>
<string name="fingerprint_success">اثرانگشت شناخته شد</string>
<string name="fingerprint_os_error">قفل‌گشایی با اثرانگشت به اندروید ۶٫۰ یا بالاتر نیاز دارد.</string>
<string name="fingerprint_hardware_error">سخت‌افزاری برای شناسایی اثرانگشت پیدا نشد.</string>
<string name="fingerprint_no_enrolled">هیچ اثرانگشتی در این دستگاه ثبت نکرده‌اید. لطفاً ابتدا به تنظیمات سیستم بروید.</string>
<string name="disable_fingerprint_unlock">غیر‌فعال‌کردن قفل‌گشایی با اثرانگشت</string>
<string name="enable_fingerprint_unlock">فعال‌کردن قفل‌گشایی کامل با اثرانگشت</string>
<string name="enable_fingerprint_quickunlock">فعال‌کردن قفل‌گشایی با اثرانگشت برای زودگشایی</string>
<string name="fingerprint_unlock_hint">برای قفل‌گشایی پایگاه‌داده حسگر را لمس کنید</string>
<string name="fingerprint_unlock_failed">قفل‌گشایی با اثرانگشت ناموفق بود. سیستم‌عامل اندروید کلید رمزگشایی را نامعتبر کرده. این مسئله معمولاً وقتی اتفاق می‌افتد که اثرانگشت جدیدی ثبت شده یا تنظیمات امنیتی تغییر کرده باشد. </string>
<string name="fingerprint_disabled_wrong_masterkey">قفل‌گشایی پایگاه‌داده ناموفق بود: کلید ترکیبی نامعتبر. قفل‌گشایی با اثرانگشت غیرفعال شد زیرا ظاهراً شاه‌رمز ذخیره‌شده، دیگر معتبر نیست. </string>
<string name="fingerprint_reenable">لطفاً قفل‌گشایی با اثرانگشت را برای شاه‌رمز جدید مجدداً فعال کنید.</string>
<string name="fingerprint_reenable2">لطفاً ابتدا با گذرواژه‌تان قفل را باز کنید و سپس قفل‌گشایی با اثرانگشت را در تنظیمات پایگاه‌داده فعال کنید.</string>
<string name="FingerprintInitFailed">راه‌اندازی حسگر اثرانگشت ناموفق بود. </string>
<string name="enable_fingerprint_unlock_Info">شاه‌رمز شما را در این دستگاه ذخیره می‌کند. گذرواژه با استفاده از ذخیره‌گاه کلید اندروید رمزگذاری و با اعتبارسنجی اثرانگشتی محافظت می‌شود.</string>
<string name="enable_fingerprint_quickunlock_Info">می‌توانید از احراز هویت اثرانگشتی به‌جای کد زودگشایی استفاده کنید. هیچ‌گونه داده‌ای که مربوط به شاه‌رمزتان باشد، ذخیره نمی‌کند.</string>
<string name="enter_filename">نام فایل پایگاه‌داده را وارد کنید</string>
<string name="entry_accessed">تاریخ دسترسی</string>
<string name="entry_cancel">لغو</string>
@@ -228,6 +247,7 @@ JCraft ایجاد شده است. تحت مجوز BSD.</string>
<string name="ShowUsernameInList_summary">نام‌های کاربری زیر عنوان مدخل نشان داده شود. مواقعی که چند حساب یا چند TAN وجود دارد، سودمند است.</string>
<string name="RememberRecentFiles_title">پایگاه‌داده‌ها را به خاطر بسپار</string>
<string name="RememberRecentFiles_summary">پایگاه‌داده‌هایی که به‌تازگی باز شده‌اند را به خاطر بسپار و آن‌ها را در کادر بازکردن پایگاه‌داده نشان بده.</string>
<string name="kp2a_findUrl">Keepass2Android: یافتن گذرواژه</string>
<string name="excludeExpiredEntries">مدخل‌های منقضی را شامل نشود</string>
<string name="search_options">گزینه‌ها</string>
<string name="caseSensitive">حساس به حالت حروف</string>
@@ -301,7 +321,6 @@ JCraft ایجاد شده است. تحت مجوز BSD.</string>
<string name="CreateBackups_summary">پس از بارگذاری موفقیت‌آمیز پایگاه‌داده، یک نسخهٔ پشتیبان از آن روی دستگاه ایجاد می‌شود.</string>
<string name="UpdatingBackup">به‌روزآوری پشتیبان محلی...</string>
<string name="LocalBackupOf">پشتیبان محلی از %1$s</string>
<string name="show_local_backups">نمایش پشتیبان های داخلی</string>
<string name="AcceptAllServerCertificates_title">گواهی‌های SSL</string>
<string name="AcceptAllServerCertificates_summary">در صورتی که اعتبارسنجی گواهی ناموفق بود، برنامه چگونه رفتار کند؟ توجه: اگر اعتبارسنجی ناموفق باشد می‌توانید خودتان گواهی‌ها را روی دستگاه نصب کنید!</string>
<string name="ClearOfflineCache_title">نهانگاه (cache) پاک شود؟</string>
@@ -567,6 +586,7 @@ mycloud.me.com/webdav/ )</string>
<string name="DbQuicklockedChannel_desc">اعلان دربارهٔ بازشدن قفل پایگاه‌داده به‌روش زودگشایی</string>
<string name="EntryChannel_name">اعلانات مدخل</string>
<string name="EntryChannel_desc">اعلان برای سهولت دسترسی به مدخلی که اکنون انتخاب شده است.</string>
<string name="ShowKeyboardDuringFingerprintAuth">اگر اسکن اثرانگشت فعال بود، برای واردکردن گذرواژه صفحه‌کلید نرم‌افزاری را نشان بده.</string>
<string name="ChangeLog_1_06"> نسخهٔ ۱٫۰۶\n
*استفاده از برنامهٔ ykDroid به‌جای YubiChallenge برای چالش-پاسخ یوبی‌کی.\n
*پشتیبانی از چالش-پاسخ به‌سبک KeepassXC. توجه: قالب پایگاه‌داده باید KDBX4 باشد!\n
@@ -691,10 +711,12 @@ mycloud.me.com/webdav/ )</string>
با برنامهٔ\n
%2$s\n
ناموفق بود</string>
<string name="enable_fingerprint_hint">Keepass2Android سخت‌افزار اثرانگشت را شناسایی کرد. آیا مایلید قفل‌گشایی با اثرانگشت را برای این پایگاه فعال کنید؟</string>
<string name="understand">فهمیدم</string>
<string name="dont_show_again">دوباره نشان نده</string>
<string name="masterkey_infotext_head">آیا شاه‌کلیدتان را به خاطر دارید؟</string>
<string name="masterkey_infotext_main">دقت کنید که بدون شاه‌کلید نمی‌توانید پایگاه‌دادهٔ خود را باز کنید و هیچ راهی هم برای «بازنشانی» شاه‌کلید وجود ندارد.</string>
<string name="masterkey_infotext_fingerprint_note">همچنین توجه بفرمایید که قفل‌گشایی با اثرانگشت طوری است که شاه‌کلید شما در ذخیره‌گاه امن اندروید ذخیره می‌شود. این ذخیره‌گاه ممکن است هر آن توسط سیستم‌عامل اندروید پاک‌سازی شود؛ مثلاً زمانی که اثرانگشت جدیدی در تنظیمات سیستم اضافه کنید. بنابراین به اثرانگشتتان اکتفا نکنید، بلکه شاه‌کلیدتان را به یاد بسپارید، لطفاً!</string>
<string name="backup_infotext_head">آیا از پایگاه‌داده‌تان پشتیبان گرفته شده؟</string>
<string name="backup_infotext_main">برنامهٔ Keepass2Android گذرواژه‌هایتان را در یک فایل و در مکانی به‌انتخاب شما ذخیره می‌کند. اگر دستگاهتان گم یا دزدیده شود، آیا مطمئن هستید که هنوز به فایل دسترسی خواهید داشت؟ اگر فایل خراب یا پاک شود چطور؟ لطفاً اطمینان حاصل کنید که همیشه یک پشتیبان به‌روز در مکانی امن داشته باشید!</string>
<string name="backup_infotext_note">برای اینکه هم‌اکنون یک پشتیبان تهیه کنید، به %1$s &gt; %2$s &gt; %3$s بروید.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Palaute</string>
@@ -20,8 +21,6 @@
<string name="short_app_name">KP2A</string>
<string name="app_name_nonet">Keepass2Android Offline</string>
<string name="short_app_name_nonet">KP2A Offline</string>
<string name="app_timeout">Aika-katkaisu</string>
<string name="kill_app_label">Tapa sovellutus</string>
<string name="show_kill_app">Sulje-painike</string>
<string name="application">Sovellutus</string>
<string name="application_settings">Sovellusasetukset</string>
@@ -42,6 +41,7 @@
<string name="FileHandling_prefs">Tiedostojen käsittely</string>
<string name="keyboard_prefs">Näppäimistö</string>
<string name="export_prefs">Vie tietokanta...</string>
<string name="fingerprint_prefs">Sormenjälkiavaus</string>
<string name="import_db_prefs">Tuo tietokanta sisäiseen kansioon</string>
<string name="import_keyfile_prefs">Tuo avaintiedosto sisäiseen kansioon</string>
<string name="keyboardswitch_prefs">Näppäimistön vaihtaminen</string>
@@ -72,6 +72,28 @@
<string name="disclaimer_formal">Keepass2Androidilla ei ole takuuta; Tämä on ilmaisohjelmisto ja sitä saa levittää GPL-lisenssin version 2 tai sitä uudemman version lisenssiehtojen mukaisesti.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopioi leikepöydälle</string>
<string name="fingerprint_hint">Kosketusanturi</string>
<string name="fingerprint_description">Vahvista sormenjälki jatkaaksesi</string>
<string name="fingerprint_fatal">Sormenjälkiavauksen käyttöönotto ei onnistunut:</string>
<string name="fingerprint_not_recognized">Sormenjälkeä ei tunnistettu. Yritä uudelleen.</string>
<string name="fingerprint_success">Sormenjälki tunnistettu</string>
<string name="fingerprint_os_error">Sormenjälkiavaus vaatii Android 6.0 tai uudemman käyttöjärjestelmän.</string>
<string name="fingerprint_hardware_error">Sormenjälkitunnistuslaitteistoa ei löydetty.</string>
<string name="fingerprint_no_enrolled">Et ole rekisteröinyt tunnistettuja sormenjälkiä tälle laitteelle. Ole hyvä ja lisää ne laitteesi asetuksista.</string>
<string name="disable_fingerprint_unlock">Poista sormenjälkiavaus käytöstä</string>
<string name="enable_fingerprint_unlock">Ota käyttöön täysi sormenjälkiavaus</string>
<string name="enable_fingerprint_quickunlock">Ota käyttöön pika-avaus sormenjäljellä</string>
<string name="fingerprint_unlock_hint">Kosketa sormenjälkitunnistinta avataksesi tietokannan</string>
<string name="fingerprint_unlock_failed">Avaus sormenjäljellä epäonnistui. Android-käyttöjärjestelmä hylkäsi salauksen purkuavaimen. Yleensä näin käy sen jälkeen kun on rekisteröity uusi sormenjälki tai suojausasetuksia muutettu. </string>
<string name="fingerprint_disabled_wrong_masterkey">Tietokannan avaaminen epäonnistui: Virheellinen yhdistelmäavain. Sormenjälkilukitus poistettiin käytöstä, koska ilmeisesti järjestelmään tallennettu pääsalasana ei ole enää voimassa. </string>
<string name="fingerprint_reenable">Ole hyvä ja ota sormenjälkitunnistus käyttöön uudelle pääsalasanalle.</string>
<string name="fingerprint_reenable2">Ole hyvä ja avaa tietokanta salasanaasi käyttäen ja ota sitten sormenjälkiavaus uudelleen käyttöön tietokannan asetuksista.</string>
<string name="FingerprintInitFailed">Sormenjälkitunnistimen alustaminen ei onnistunut. </string>
<string name="enable_fingerprint_unlock_Info"> Tämä tallentaa pääsalasanasi laitteeseen,
salattuna Android Keystorea käyttäen ja suojattuna sormenjälkitunnistautumisella.
Mahdollistaa tietokannan avauksen sormenjälkitunnistautumista käyttämällä.
</string>
<string name="enable_fingerprint_quickunlock_Info">Mahdollistaa sormenjälkitunnistautumisen Pika-avauskoodin sijaan. Mitään pääsalasanaan liittyvää tietoa ei tallenneta.</string>
<string name="enter_filename">Kirjoita tietokannan tiedostonimi</string>
<string name="entry_accessed">Käytetty</string>
<string name="entry_cancel">Peruuta</string>
@@ -122,7 +144,6 @@
<string name="hint_login_pass">Salasana</string>
<string name="hint_title">Nimi</string>
<string name="hint_url">URL</string>
<string name="hint_override_url">Korvaa URL.</string>
<string name="hint_tags">tunniste1, tunniste2</string>
<string name="hint_username">käyttäjänimi</string>
<string name="InvalidPassword">Virheellinen salasana tai avaintiedosto.</string>
@@ -143,7 +164,6 @@
<string name="menu_change_key">Vaihda pääavain</string>
<string name="menu_copy_pass">Kopioi salasana</string>
<string name="menu_copy_user">Kopioi käyttäjätunnus</string>
<string name="menu_copy_totp">Kopioi TOTP</string>
<string name="menu_create">Luo</string>
<string name="menu_app_settings">Asetukset</string>
<string name="menu_db_settings">Tietokannan asetukset</string>
@@ -170,8 +190,6 @@
<string name="no">Ei</string>
<string name="no_keys">Ei merkintöjä tietokannassa tai ryhmissä.</string>
<string name="no_results">Ei hakutuloksia</string>
<string name="no_url_handler">Ei URL-käsittelyä tälle osoitteelle.</string>
<string name="open_recent">Avaa edellinen tietokanta (klikkaa)</string>
<string name="omitbackup_title">Älä etsi varmuuskopioista ja roskakorista</string>
<string name="omitbackup_summary">Jätä varmuuskopiot ja roskakori pois hakutuloksista</string>
<string name="pass_filename">KeePass-tietokannan tiedostonimi</string>
@@ -215,9 +233,7 @@
<string name="select_group_then_add">Avaa haluamasi ryhmä ja paina \"%1$s\"!</string>
<string name="insert_element_here">Lisää tähän</string>
<string name="twofish">Twofish</string>
<string name="underline">Alaviiva</string>
<string name="unsupported_db_version">Tietokantaversio ei ole tuettu.</string>
<string name="uppercase">Isot kirjaimet</string>
<string name="warning_read_only">Sd-kortti on vain luku -tilassa. Et välttämättä pysty tallentamaan muutoksia tietokantaan.</string>
<string name="warning_unmounted">SD-kortti ei ole tällä hetkellä käytettävissä. Et voi ladata tai luoda tietokantaa.</string>
<string name="version_label">Versio</string>
@@ -231,13 +247,12 @@
<string name="please_note">Huomaa</string>
<string name="contributors">Kehittäjät ja avustajat</string>
<string name="regular_expression">Säännöllinen lauseke</string>
<string name="TanExpiresOnUse_title">TAN käytön lopetus</string>
<string name="TanExpiresOnUse_summary">Merkitse TAN-merkinnät vanhentuneiksi käytön jälkeen</string>
<string name="ShowUsernameInList_title">Näytä käyttäjänimi</string>
<string name="ShowUsernameInList_summary">Näytä käyttäjätunnukset merkintöjen otsikoiden alla. Hyödyllinen TAN-merkinnöissä, tai kun käyttäjätunnuksia on useita.</string>
<string name="RememberRecentFiles_title">Muista tietokannat</string>
<string name="RememberRecentFiles_summary">Muista edelliset tietokannat, ja näytä ne aloitusnäkymässä.</string>
<string name="kp2a_findUrl">Etsi salasana</string>
<string name="kp2a_findUrl">Keepass2Android: Etsi salasana</string>
<string name="excludeExpiredEntries">Sivuuta vanhentuneet merkinnät</string>
<string name="search_options">Asetukset</string>
<string name="caseSensitive">Merkkikoosta riippuvat kirjaimet</string>
@@ -269,7 +284,7 @@
<string name="BinaryDirectory_summary">Liitetiedostojen tallennushakemisto.</string>
<string name="SaveAttachmentDialog_title">Tallenna liite</string>
<string name="SaveAttachmentDialog_text">Valitse liitteen tallennuspaikka.</string>
<string name="SaveAttachmentDialog_save">Vie hakemistoon...</string>
<string name="SaveAttachmentDialog_save">Vie tiedostoon...</string>
<string name="SaveAttachmentDialog_open">Tallenna välimuistiin ja avaa</string>
<string name="ShowAttachedImage">Näytä sisäisellä kuvankatselusovelluksella</string>
<string name="SaveAttachment_doneMessage">Tiedosto tallennettiin kohteeseen %1$s.</string>
@@ -302,7 +317,6 @@
<string name="ActivateSearchViewOnStart_summary">Aktivoi hakukentän ryhmänäkymässä, kun avaa tietotakannan tai etsit merkintää</string>
<string name="NoDonateOption_title">Piilota lahjoituspyynnöt</string>
<string name="NoDonateOption_summary">Tämä asetus on tarkoitettu lahjoittajille. Se on käytettävissä vasta kun Keepass2Androidia on käytetty jonkin aikaa.</string>
<string name="NoDonateOption_question">Ilman lahjoituksia tätä sovellusta ei olisi olemassa ja sitä parannetaan jatkuvasti! Jos et ole vielä lahjoittanut niin harkitse lahjoitusta nyt.</string>
<string name="NoDonationReminder_title">Älä koskaan pyydä lahjoitusta</string>
<string name="NoDonationReminder_summary">En aio antaa teille penniäkään, tai olen jo lahjoittanut. Älä pyydä lahjoituksia koskaan, ei edes tekijän syntymäpäivänä.</string>
<string name="UseOfflineCache_title">Tietokannan säilöminen välimuistiin</string>
@@ -443,7 +457,6 @@
<string name="filestoragename_pcloud">PCloud</string>
<string name="filestoragename_onedrive">OneDrive</string>
<string name="filestoragename_onedrive2">OneDrive</string>
<string name="filestoragename_onedrive2_myfiles">Omat tiedostot</string>
<string name="filestoragename_sftp">SFTP (SSH-tiedostonsiirto)</string>
<string name="filestoragename_content">Järjestelmän tiedostonvalitsin</string>
<string name="filestorage_setup_title">Tiedoston käytön alustaminen</string>
@@ -586,12 +599,7 @@ Tässä vihjeitä, joiden avulla voit paikantaa ongelmaa:\n
<string name="DbQuicklockedChannel_desc">Ilmoitus, että tietokanta on lukittu ja pika-avaus on käytössä</string>
<string name="EntryChannel_name">Merkintöjen ilmoitukset</string>
<string name="EntryChannel_desc">Ilmoitus, jolla pääsee helpommin käsiksi valittuna olevaan merkintään.</string>
<string-array name="ChangeLog_1_08">
<item>Add notification button for copying TOTP to clipboard</item>
<item>Switch to using FluentFTP to provide support for TLS 1.2</item>
<item>Switch to BiometricPrompt API to improve user experience with fingerprint unlock and allow to use face unlock, e.g. on Pixel 4.</item>
<item>Bugikorjaukset</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Näytä näppäimistö salasanan syöttöä varten sormenjälkilukijan ollessa käytössä.</string>
<string name="ChangeLog_1_06"> Versio 1.06\n
* Vaihto ykDroid sovellukseen YubiChallengen sijaan Yubikey haastemenetelmssä.\n
* Tuki KeepassXC-muotoiselle haastemenetelmälle. Huom!: Tietokannan muoto on oltava KDBX4!\n
@@ -892,5 +900,4 @@ Suojelee sinua Leikepöytään perustuvalta salasana sniffaukselta (Poista vanha
<string name="backup_infotext_note">Luodaksesivarmuuskopion nyt, mene %1$s &gt; %2$s &gt; %3$s.</string>
<string name="emergency_infotext_head">Oletko varautunut hätätilanteisiin?</string>
<string name="emergency_infotext_main">Oletko koskaan miettinyt mitä tapahtuu jos et pääse enää käsiksi salasanatietokantaasi? Mitä jos joudut onnettomuuteen? On hyvä käytäntö antaa pääavaimesi jonkun luotetun henkilön haltuun hätätilanteita varten. Muussa tapauksessa kukaan ei pääse käsiksi salasanoihisi.</string>
<string name="no_secure_display">Nykyistä näyttöä ei ole merkitty turvalliseksi. Tämä tarkoittaa sitä että muut sovellukset voivat tehdä kuvankaappauksen. Keepass2Android on näyttää arkaluontoisia tietoja vain suojatuissa näytöissä. Vaihda suojattuun näyttöön (esimerkiksi irrottamalla HDMI-näyttö) tai muuta sovelluksen asetuksia.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Commentaires </string>
@@ -47,15 +48,15 @@
<string name="FileHandling_prefs">Gestion des fichiers</string>
<string name="keyboard_prefs">Clavier</string>
<string name="export_prefs">Exporter la base de données...</string>
<string name="fingerprint_prefs">Déverrouillage biométrique</string>
<string name="fingerprint_prefs">Déverrouillage par empreinte digitale</string>
<string name="import_db_prefs">Importer la base de données à partir d\'un dossier local</string>
<string name="import_keyfile_prefs">Importer le fichier clé à partir d\'un dossier local</string>
<string name="keyboardswitch_prefs">Changement de clavier</string>
<string name="OnlyAvailableForLocalFiles">Disponible uniquement pour les fichiers locaux.</string>
<string name="FileIsInInternalDirectory">Le fichier est stocké dans le répertoire local.</string>
<string name="DatabaseFileMoved">Le fichier de base de données a été copié dans le répertoire local. Appuyez sur Ok pour ouvrir le nouvel emplacement. Remarque : N\'oubliez pas d\'exporter régulièrement la base de données dans un endroit sûr !</string>
<string name="KeyfileMoved">Le fichier clé a été copié dans le répertoire local. Assurez-vous d\'avoir une sauvegarde sûre avant de le supprimer du dossier actuel !</string>
<string name="KeyfileMoveRequiresRememberKeyfile">Impossible d\'utiliser un dossier local lorsque l\'emplacement du fichier clé n\'est pas mémorisé. Modifiez les préférences de sécurité.</string>
<string name="DatabaseFileMoved">Le fichier de base de données a été copié dans le répertoire local. Pressez Ok pour ouvrir à partir du nouvel emplacement. A noter : N\'oubliez pas d\'exporter régulièrement la base de données pour un stockage sûr !</string>
<string name="KeyfileMoved">Le fichier clé a été copié dans le répertoire local. Assurez vous d\'avoir une sauvegarde sûr avant de le supprimer du dossier actuel !</string>
<string name="KeyfileMoveRequiresRememberKeyfile">Impossible d\'utiliser un dossier local lorsque l\'emplacement du fichier clé n\'est pas connu. Modifiez les paramètres de sécurité.</string>
<string name="unlock_database_button">Déverrouiller</string>
<string name="unlock_database_title">Déverrouiller la base de données</string>
<string name="brackets">Parenthèses, accolades et crochets</string>
@@ -81,24 +82,26 @@
<string name="disclaimer_formal">Keepass2Android n\'offre ABSOLUMENT AUCUNE GARANTIE ; il s\'agit d\'un logiciel gratuit, et vous pouvez le redistribuer sous les conditions de la licenceGPL v2 ou ultérieure.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Copier dans le Presse-papier</string>
<string name="fingerprint_description">Veuillez vous authentifier pour continuer</string>
<string name="fingerprint_fatal">Impossible de configurer le déverrouillage biométrique :</string>
<string name="fingerprint_not_recognized">Échec de l\'authentification biométrique. Essayer à nouveau</string>
<string name="fingerprint_success">Authentification biométrique réussie</string>
<string name="fingerprint_os_error">Le déverrouillage biométrique requiert Android 6.0 ou ultérieure.</string>
<string name="fingerprint_hardware_error">Aucun matériel biométrique détecté.</string>
<string name="fingerprint_no_enrolled">Vous n\'avez pas configuré l\'authentification biométrique sur cet appareil. Allez dans les paramètres système.</string>
<string name="disable_fingerprint_unlock">Désactiver le déverrouillage biométrique</string>
<string name="enable_fingerprint_unlock">Activer le déverrouillage biométrique complet</string>
<string name="enable_fingerprint_quickunlock">Activer le déverrouillage biométrique pour QuickUnlock</string>
<string name="fingerprint_unlock_failed">Le déverrouillage biométrique a échoué. La clé de déchiffrement a été invalidée par l\'OS Android. Ceci se produit généralement quand l\'authentification biométrique ou les paramètres de sécurité ont été changés. </string>
<string name="fingerprint_disabled_wrong_masterkey">Le déverrouillage de la base de données a échoué: la clé composite est invalide. Le déverrouillage biométrique a été désactivé car apparemment le mot de passe maître stocké n\'est plus valide. </string>
<string name="fingerprint_reenable">Veuillez réactiver le déverrouillage biométrique pour le nouveau mot de passe maître.</string>
<string name="fingerprint_reenable2">Veuillez déverrouiller avec votre mot de passe et ensuite réactiver le déverrouillage biométrique dans les paramètres de la base de données.</string>
<string name="FingerprintInitFailed">Impossible d\'initialiser l\'authentification biométrique. </string>
<string name="fingerprint_hint">Touchez le capteur</string>
<string name="fingerprint_description">Confirmer l\'empreinte digitale pour continuer</string>
<string name="fingerprint_fatal">Impossible de configurer le déverrouillage par empreinte digitale :</string>
<string name="fingerprint_not_recognized">Empreinte digitale non reconnue. Réessayez</string>
<string name="fingerprint_success">Empreinte digitale reconnue</string>
<string name="fingerprint_os_error">Le déverrouillage par empreinte digitale requiert Android version 6.0 ou ultérieure.</string>
<string name="fingerprint_hardware_error">Aucun matériel d\'empreintes digitales détecté.</string>
<string name="fingerprint_no_enrolled">Vous n\'avez aucune empreinte digitale enregistré sur cet appareil. Allez dans les paramètres système.</string>
<string name="disable_fingerprint_unlock">Désactiver le déverrouillage par empreinte digitale</string>
<string name="enable_fingerprint_unlock">Activer le déverrouillage par empreinte digitale</string>
<string name="enable_fingerprint_quickunlock">Activer le déverrouillage par empreinte digitale pour QuickUnlock</string>
<string name="fingerprint_unlock_hint">Touchez le capteur pour déverrouiller la base de données</string>
<string name="fingerprint_unlock_failed">Le déverrouillage par empreinte digitale a échoué. La clé de décryptage a été invalidée par l\'OS Android. Ceci se produit généralement quand une nouvelle empreinte a été enregistrée ou quand les paramètres de sécurité ont changés. </string>
<string name="fingerprint_disabled_wrong_masterkey">Le déverrouillage de la base de données a échoué: la clé composite est invalide. Le déverrouillage par empreinte digitale a été désactivé car apparemment le mot de passe maître stocké n\'est plus valide. </string>
<string name="fingerprint_reenable">Veuillez ré-activer le déverrouillage d\'empreintes digitales pour le nouveau mot de passe maître.</string>
<string name="fingerprint_reenable2">Merci de déverrouiller avec votre mot de passe et ensuite de réactiver le déverrouillage par empreinte digitale dans les paramètres de la base de données.</string>
<string name="FingerprintInitFailed">Échec lors de l\'initialisation du capteur d\'empreinte digitale. </string>
<string name="FingerprintSetupFailed">Échec du chiffrement des données. Cela peut se produire si vous ajoutez ou supprimez des empreintes digitales dans les paramètres du système alors que Keepass2Android est en attente de votre empreinte digitale.</string>
<string name="enable_fingerprint_unlock_Info">Cela permettra de stocker votre mot de passe maître sur cet appareil, chiffré avec Android Keystore et protégé à l\'aide de l\'authentification biométrique. Cela permet de déverrouiller votre base de données uniquement avec la biométrie.</string>
<string name="enable_fingerprint_quickunlock_Info">Permet d\'utiliser l\'authentification biométrique au lieu du code QuickUnlock. Ne nécessite pas de stocker des informations liées à votre mot de passe principal.</string>
<string name="enable_fingerprint_unlock_Info">Cela va stocker votre mot de passe maître sur cet appareil, chiffré avec Android Keystore et protégé à l\'aide de l\'authentification d\'empreintes digitales. Cela permet de déverrouiller votre base de données uniquement avec vos empreintes digitales. </string>
<string name="enable_fingerprint_quickunlock_Info">Permet d\'utiliser l\'authentification par empreinte au lieu du code QuickUnlock. Ne nécessite pas de stocker des informations liées à votre mot de passe principal.</string>
<string name="enter_filename">Entrez le nom de fichier de la base de données</string>
<string name="entry_accessed">Accédé</string>
<string name="entry_cancel">Annuler</string>
@@ -266,7 +269,7 @@
<string name="ShowUsernameInList_summary">Afficher les noms d\'utilisateurs sous les titres des entrées. Utile si vous avez plusieurs comptes ou des TANs.</string>
<string name="RememberRecentFiles_title">Se souvenir des bases de données</string>
<string name="RememberRecentFiles_summary">Se souvenir des bases de données récemment ouvertes et les afficher dans l\'écran d\'ouverture de base de données.</string>
<string name="kp2a_findUrl">Trouver un mot de passe</string>
<string name="kp2a_findUrl">KeePass2Android : Trouver le mot de passe</string>
<string name="excludeExpiredEntries">Exclure les entrées arrivées à expiration</string>
<string name="search_options">Options</string>
<string name="caseSensitive">Sensible à la casse</string>
@@ -628,13 +631,7 @@ Voici quelques conseils qui pourraient aider à diagnostiquer le problème : \n
<string name="DbQuicklockedChannel_desc">Notification à propos de la base de données en cours de verrouillage avec QuickUnlock</string>
<string name="EntryChannel_name">Notifications d\'entrée</string>
<string name="EntryChannel_desc">Notification pour simplifier l\'accès à l\'entrée actuellement sélectionnée.</string>
<string name="CloseDbAfterFailedAttempts">Fermer la base de données après trois tentatives de déverrouillage biométrique échouées.</string>
<string-array name="ChangeLog_1_08">
<item>Ajout d\'un bouton pour copier le TOTP dans le presse-papiers</item>
<item>Passage à l\'utilisation de FluentFTP pour assurer le support de TLS 1.2</item>
<item>Passage à l\'API BiometricPrompt pour améliorer l\'expérience utilisateur avec le déverrouillage par empreintes digitales et permettre l\'utilisation du déverrouillage au moyen du visage, par exemple sur Pixel 4.</item>
<item>Corrections de bugs</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Afficher les caractères en claire dans les champs de saisie texte quand le scan d\'empreinte digital est activé.</string>
<string name="ChangeLog_1_07b"> Version 1.07b\n
* Amélioration des performances Argon2 en utilisant l\'implémentation native (Merci à to Chih-Hsuan Yen !)\n
* Possibilité de désactiver l\'empreinte digitale en cliquant sur l\'icône de l\'empreinte (évite un problème avec les lecteurs d\'empreinte placés sous l\'écran, merci à marcoDallas !)\n
@@ -894,12 +891,12 @@ Première version publique</string>
<string name="autofill_disable">Désactiver le remplissage automatique pour %1$s</string>
<string name="autofill_enable_for">Activer le remplissage automatique pour %1$s</string>
<string name="invalid_link_association">Impossible d\'associer le domaine web %1$s avec l\'application %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android a détecté un matériel biométrique. Voulez-vous activer le déverrouillage biométrique pour cette base de données ?</string>
<string name="enable_fingerprint_hint">Keepass2Android a détecté un capteur d\'empreinte. Voulez-vous activer le capteur d\'empreinte pour déverrouiller la base de données ?</string>
<string name="understand">Je comprends</string>
<string name="dont_show_again">Ne plus afficher</string>
<string name="masterkey_infotext_head">Vous rappelez-vous de votre mot de passe principal ?</string>
<string name="masterkey_infotext_main">Notez que vous ne serez pas en mesure douvrir votre base de données sans la clé principale. Il ny a aucun moyen de « réinitialiser » le mot de passe.</string>
<string name="masterkey_infotext_fingerprint_note">Notez également que pour fonctionner, le déverrouillage biométrique stocke votre clé principale dans le stockage sécurisé dAndroid. Ce stockage peut être supprimé par Android à tout moment, par exemple si vous ajoutez une nouvelle empreinte dans les paramètres système. Ne comptez donc pas uniquement sur le déverrouillage biométrique et retenez votre mot de passe principal, sil vous plaît !</string>
<string name="masterkey_infotext_fingerprint_note">Notez également que pour fonctionner le déverrouillage par empreintes digitales stocke votre clé principale dans le stockage sécurisé dAndroid. Ce stockage peut être supprimé par Android à tout moment, par exemple si vous ajoutez une nouvelle empreinte dans les paramètres système. Ne comptez donc pas uniquement sur vos empreintes digitales, et retenez pas votre mot de passe principal, sil vous plaît !</string>
<string name="backup_infotext_head">Votre base de données est-elle sauvegardée ?</string>
<string name="backup_infotext_main">Keepass2Android stocke vos mots de passe dans un fichier à l\'emplacement de votre choix. Êtes-vous sûr que vous pourrez toujours accéder à ce fichier si votre téléphone est perdu ou volé, ou quand le fichier est détruit ou supprimé ? Sil vous plaît assurez-vous que vous disposez dune sauvegarde à jour dans un lieu sûr !</string>
<string name="backup_infotext_note">Pour créer une sauvegarde maintenant, allez dans %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Suxestións (feedback)</string>
@@ -39,6 +40,7 @@
<string name="FileHandling_prefs">Xestión de ficheiros</string>
<string name="keyboard_prefs">Teclado</string>
<string name="export_prefs">Exportar base de datos...</string>
<string name="fingerprint_prefs">Desbloqueo con pegada dixital</string>
<string name="import_db_prefs">Importar base de datos a cartafol interno</string>
<string name="import_keyfile_prefs">Importar arquivo de chave a cartafol interno</string>
<string name="keyboardswitch_prefs">Cambio de teclado</string>
@@ -69,6 +71,25 @@
<string name="disclaimer_formal">Keepass2Android NON TEN GARANTÍA TOTAL: isto é software ceibe, e pode redistribuilo baixo as condicións da versión 2 de GPL ou posterior.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Copiar ó portapapeis</string>
<string name="fingerprint_hint">Sensor táctil</string>
<string name="fingerprint_description">Confirme pegada dixital para continuar</string>
<string name="fingerprint_fatal">Non se pode configurar desbloqueo por pegada dixital:</string>
<string name="fingerprint_not_recognized">Pegada dixital non recoñecida. Ténteo de novo</string>
<string name="fingerprint_success">Pegada dixital recoñecida</string>
<string name="fingerprint_os_error">O desbloqueo por pegada dixital require Android 6.0 ou posterior.</string>
<string name="fingerprint_hardware_error">Non se detectou ningún hardware de pegadas dixitais.</string>
<string name="fingerprint_no_enrolled">Non hai ningunha pegada dixital gardada neste dispositivo. Acuda á configuración do dispositivo.</string>
<string name="disable_fingerprint_unlock">Deshabilitar desbloqueo por pegada dixital</string>
<string name="enable_fingerprint_unlock">Habilitar desbloqueo completo con pegada dixital</string>
<string name="enable_fingerprint_quickunlock">Habilitar desbloqueo con pegada dixital para QuickUnlock</string>
<string name="fingerprint_unlock_hint">Toque o sensor para desbloquear a base de datos</string>
<string name="fingerprint_unlock_failed">Fallou o desbloqueo por pegada. O sistema Android OS invalidou a chave descritiva. Isto pasa cando se engadiu unha nova pegada dactilar ou se cambiou a configuración de seguridade. </string>
<string name="fingerprint_disabled_wrong_masterkey">Fallou o desbloqueo da base de datos: chave composta inválida. Deshabilitouse o desbloqueo por pegada debido a que o contrasinal maestro gardado xa non é válido. </string>
<string name="fingerprint_reenable">Volva a habilitar o desbloqueo por pegada dixital para o novo contrasinal mestre.</string>
<string name="fingerprint_reenable2">Tente a desbloquear co contrasinal e volver a habilitar o Desbloqueo por Pegada na configuración da base de datos, por favor.</string>
<string name="FingerprintInitFailed">Fallou a inicialización do sensor de pegada. </string>
<string name="enable_fingerprint_unlock_Info">Isto gardará o seu contrasinal mestre no dispositivo, encriptado co Android Keystore e protexido por autenticación de pegada dixital. Permítelle desbloquear a base de datos tan só ca súa pegada dixital.</string>
<string name="enable_fingerprint_quickunlock_Info">Permite o uso da autenticación con pegada dixital no canto do seu código QuickUnlock. Non require a almacenaxe de ningunha información relacionada co seu contrasinal mestre.</string>
<string name="enter_filename">Introduza o nome do arquivo da súa base de datos</string>
<string name="entry_accessed">Accedido</string>
<string name="entry_cancel">Cancelar</string>
@@ -226,6 +247,7 @@
<string name="ShowUsernameInList_summary">Amosar nomes de usuario por debaixo dos títulos. Útil se hai varias contas ou TANs.</string>
<string name="RememberRecentFiles_title">Lembrar bases de datos</string>
<string name="RememberRecentFiles_summary">Lembrar bases de datos abertas recentemente e amosalas na pantalla de inicio da base de datos.</string>
<string name="kp2a_findUrl">Keepass2Android: Atopar contrasinal</string>
<string name="excludeExpiredEntries">Exluir entradas expiradas</string>
<string name="search_options">Opcións</string>
<string name="caseSensitive">Distinguir maiúsculas de minúsculas</string>
@@ -533,6 +555,7 @@
<string name="DbQuicklockedChannel_desc">Notificacións sobre a base de datos están sendo bloqueadas por QuickUnlock</string>
<string name="EntryChannel_name">Entrada de notificacións</string>
<string name="EntryChannel_desc">Notificación para simplificar o acceso á entrada seleccionada.</string>
<string name="ShowKeyboardDuringFingerprintAuth">Amosar teclado para entradas de contrasinal cando o escaneo de pegada dixital está activo.</string>
<string name="ChangeLog_1_06"> Versión 1.06\n
* Cambiar a ykDroid en vez de YubiChallenge como app para Yubikey Challenge-Response.\n
* Implementacióm do soporte para KeepassXC-style Challenge-Response. Nota: o formato da base de datos ten que ser KDBX4!\n
@@ -822,10 +845,12 @@ Lanzamento público inicial
<string name="show_autofill_help">Amosar axuda do autocompletado</string>
<string name="autofill_sign_in_prompt">Completar con Keepass2Android</string>
<string name="invalid_link_association">Non se puido asociar o dominio web %1$s ca app %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android detectou hárdware de impresións dixitais. Queres activar o desbloqueo desta base de datos mediante a túa impresión dixital?</string>
<string name="understand">Entendo</string>
<string name="dont_show_again">Non mostrar máis</string>
<string name="masterkey_infotext_head">Lembras o teu contrasinal mestre?</string>
<string name="masterkey_infotext_main">Repara en que non hai forma de abrir a túa base de datos sen a chave mestra. Non hai xeito de \"restablecer\" o contrasinal mestre.</string>
<string name="masterkey_infotext_fingerprint_note">Repara tamén en que o desbloqueo coa impresión dixital funciona almacenando a chave mestra no almacenamento seguro de Android, o cal podería ser eliminado por Android en calquera momento (ex.: se engade unha nova configuración da impresión dixital). Por tanto, non confíes todo na impresión dixital e lembra o contrasinal mestre!</string>
<string name="backup_infotext_head">A túa base de datos ten copia de seguranza?</string>
<string name="backup_infotext_main">Keepass2Android almacena os teus contrasinais nun ficheiro localizado onde elixas. Tes a certeza de permitir que se poida acceder a el en caso de perda ou roubo do teléfono ou cando o ficheiro se destrúa ou elimine? Asegúrate sempre de teres unha copia de seguranza del nun sitio seguro!</string>
<string name="backup_infotext_note">Para crear unha copia de seguranza, vai a %1$s&gt;%2$s&gt;%3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">משוב</string>
@@ -20,16 +21,10 @@
<string name="short_app_name">KP2A</string>
<string name="app_name_nonet">Keepass2Android במצב לא מקוון</string>
<string name="short_app_name_nonet">KP2A במצב לא מקוון</string>
<string name="app_timeout_summary">פרק זמן לפני נעילת מסד הנתונים כאשר היישום אינו פעיל.</string>
<string name="kill_app_label">הפסק יישום</string>
<string name="show_kill_app">לחצן הסגירה</string>
<string name="show_kill_app_summary">הצגת כפתור במסך הסיסמאות לצורך עצירת היישום (עבור משתמשים פרנואידים)</string>
<string name="application">יישום</string>
<string name="application_settings">הגדרות יישום</string>
<string name="ShowGroupnameInSearchResult_title">הצגת שם הקבוצה בתוצאות החיפוש</string>
<string name="ShowGroupnameInSearchResult_resume">הצגת שם הקבוצה מתחת לכותרות הרשומות בתוצאות החיפוש. שימושי במקרה בו קיימות מספר רשומות בעלות שם זהה.</string>
<string name="NavigationToGroupCompleted_message">הקבוצה המוצגת היא כעת: %1$s</string>
<string name="AutofillDisabledQueriesPreference_summary">צפה ברשימת יישומים או אתרים בהם AutoFill הושבת</string>
<string name="ShowGroupInEntry_title">הצגת שם הקבוצה במסך פרטי הרשומה</string>
<string name="unknown_uri_scheme">שגיאה! Keepass2Android לא יכול לטפל בפקודת ה-URI שנשלחה %1$s. אנא צרו קשר עם מפתח האפליקציה!</string>
<string name="Entry_singular">רשומה בודדת</string>
@@ -43,7 +38,7 @@
<string name="FileHandling_prefs">טיפול בקבצים</string>
<string name="keyboard_prefs">מקלדת</string>
<string name="export_prefs">ייצוא מסד הנתונים...</string>
<string name="fingerprint_prefs">פתיחה בעזרת טביעת אצבע</string>
<string name="fingerprint_prefs">פתיחה באמצעות טביעת אצבע</string>
<string name="import_db_prefs">ייבוא מסד הנתונים לתיקיה הפנימית</string>
<string name="import_keyfile_prefs">ייבוא קובץ המפתח לתיקיה הפנימית</string>
<string name="keyboardswitch_prefs">החלפת מקלדות</string>
@@ -56,15 +51,11 @@
<string name="unlock_database_title">פתיחת מסד נתונים</string>
<string name="brackets">סוגריים</string>
<string name="cancel">ביטול</string>
<string name="Ok">אישור</string>
<string name="disable_sensor">השבת החיישן</string>
<string name="enable_sensor">איפשור חיישן</string>
<string name="ClearClipboard">לוח ההעתקה נקי.</string>
<string name="clipboard_timeout">תוקף של לוח ההעתקה</string>
<string name="clipboard_timeout_summary">משך הזמן לאחר העתקת שם משתמש או סיסמא ועד לניקוי אוטומטי של לוח ההעתקה</string>
<string name="copy_username">בחר כדי להעתיק את שם המשתמש ללוח ההעתקה</string>
<string name="copy_password">בחר כדי להעתיק את הסיסמא ללוח ההעתקה</string>
<string name="copy_totp">בחר כדי להעתיק TOTP ללוח ההעתקה</string>
<string name="available_through_keyboard">רשומה זמינה דרך מקלדת KP2A</string>
<string name="entry_is_available">זמינה</string>
<string name="not_possible_im_picker">לא ניתן לפתוח תפריט לבחירת מקלדת. יש להפעיל את המקלדת ידנית.</string>
@@ -77,16 +68,25 @@
<string name="disclaimer_formal">Keepass2Android מגיעה ללא כל אחריות בנוגע לשימוש; זוהי תוכנה חינמית, והנכם מוזמנים להפיצה במסגרת תנאי ומגבלות GPL מגרסה 2 ואילך.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">העתק ללוח</string>
<string name="fingerprint_description">נא אמת על מנת להמשיך</string>
<string name="fingerprint_hint">סרוק את טביעת האצבע שלך</string>
<string name="fingerprint_description">אשר את טביעת האצבע שלך כדי להמשיך</string>
<string name="fingerprint_fatal">לא ניתן להגדיר פתיחה באמצעות טביעת אצבע:</string>
<string name="fingerprint_not_recognized">אימות בעזרת טביעת אצבע נכשל. נסה שוב</string>
<string name="fingerprint_success">אימות טביעת אצבע הצליח</string>
<string name="fingerprint_not_recognized">טביעת האצבע לא זוהתה. נסה שנית</string>
<string name="fingerprint_success">טביעת האצבע זוהתה</string>
<string name="fingerprint_os_error">פתיחה באמצעות טביעת אצבע דורשת גרסת אנדרואיד 6.0 ומעלה.</string>
<string name="fingerprint_hardware_error">לא ניתן לזהות סורק טביעות אצבע במכשירך.</string>
<string name="fingerprint_no_enrolled">לא קיימות טביעות אצבע שנסרקו במכשיר זה. נא לרשום את טביעות האצבע שלך דרך הגדרות האבטחה של מכשיר האנדרואיד תחילה.</string>
<string name="disable_fingerprint_unlock">השבת פתיחה באמצעות טביעת אצבע</string>
<string name="enable_fingerprint_unlock">אפשר פתיחה מלאה בעזרת טביעת אצבע</string>
<string name="enable_fingerprint_quickunlock">הפעלת פתיחה באמצעות טביעת אצבע ל-QuickUnlock</string>
<string name="fingerprint_no_enrolled">לא קיימות טביעות אצבע שנסרקו במכשיר זה. נא לרשום את טביעות האצבע שלך דרך הגדרות האבטחה של אנדרואיד תחילה.</string>
<string name="disable_fingerprint_unlock">נטרול פתיחה באמצעות טביעת אצבע</string>
<string name="enable_fingerprint_unlock">הפעלת פתיחה מלאה באמצעות טביעת אצבע</string>
<string name="enable_fingerprint_quickunlock">הפעלת פתיחה באמצעות טביעת אצבע כתחליף ל-QuickUnlock (פתיחה מהירה) בלבד</string>
<string name="fingerprint_unlock_hint">סרוק את טביעת האצבע על החיישן לפתיחת מסד הנתונים</string>
<string name="fingerprint_unlock_failed">פתיחה באמצעות טביעת אצבע נכשלה. מפתח ההצפנה שלך הוגדר כלא תקף על-ידי מערכת אנדרואיד. לרוב המצב נגרם לאחר רישום של טביעת אצבע חדשה במכשיר או שינוי בהגדרות האבטחה. </string>
<string name="fingerprint_disabled_wrong_masterkey">פתיחת מסד הנתונים נכשלה: מפתח ההצפנה אינו חוקי. פתיחה באמצעות טביעת אצבע מנוטרלת. ככל הנראה הסיסמה הראשית של מסד הנתונים אינה תקפה. </string>
<string name="fingerprint_reenable">נא להפעיל מחדש את אפשרות פתיחת מסד הנתונים באמצעות טביעת אצבע עבור הסיסמה הראשית החדשה.</string>
<string name="fingerprint_reenable2">נא לפתוח את מסד הנתונים באמצעות הסיסמה שלך ואז להפעיל מחדש את אפשרות פתיחת מסד הנתונים באמצעות טביעת אצבע דרך הגדרות מסד הנתונים.</string>
<string name="FingerprintInitFailed">לא ניתן להפעיל את חיישן טביעות האצבע. </string>
<string name="enable_fingerprint_unlock_Info">הסיסמה הראשית של מסד הנתונים תאוחסן במכשיר זה, מוצפנת על-ידי מפתח ההצפנה של אנדרואיד ומוגנת באמצעות טביעת אצבע. מאפשר פתיחה של מסד הנתונים באמצעות שימוש בטביעת אצבע בלבד.</string>
<string name="enable_fingerprint_quickunlock_Info">מאפשר להשתמש בטביעת אצבע כתחליף לקוד QuickUnlock (פתיחה מהירה). אפשרות זו לא מאחסנת במכשירך כל מידע הקשור לסיסמה הראשית של מסד הנתונים.</string>
<string name="enter_filename">הזן את שם הקובץ של מסד הנתונים</string>
<string name="entry_accessed">גישה אחרונה</string>
<string name="entry_cancel">ביטול</string>
@@ -182,23 +182,7 @@
<string name="no">לא</string>
<string name="no_keys">לא קיימים ערכים במסד הנתונים או בקבוצה שנבחרה.</string>
<string name="no_results">לא נמצאו תוצאות לחיפוש</string>
<string name="pass_filename">קובץ מסד הנתונים של KeePass</string>
<string name="password_title">הכנס סיסמת מסד נתונים</string>
<string name="master_key_type">בחר סוג מפתח ראשי</string>
<string name="progress_create">צור מסד נתונים חדש...</string>
<string name="create_database">צור מסד נתונים</string>
<string name="progress_title">עובד...</string>
<string name="remove_from_filelist">הסר</string>
<string name="edit">עריכה</string>
<string name="rijndael">Rijndael (AES)</string>
<string name="root">Root</string>
<string name="KeyDerivFunc">פונקציה לגזירת מפתח</string>
<string name="rounds">סיבובי הצפנה</string>
<string name="rounds_explaination">יותר סיבובי הצפנה מספקים הגנה נוספת נגד מתקפת כוח-גס, אבל יכולים להאט משמעותית טעינה ושמירה.</string>
<string name="rounds_hint">סיבובים</string>
<string name="argon2memory">זכרון עבור Argon 2 (בתים)</string>
<string name="argon2parallelism">מקביליות עבור Argon 2</string>
<string name="database_name">שם מסד הנתונים</string>
<string name="search_label">חיפוש</string>
<string name="select_other_entry">בחר ערך אחר</string>
<string name="further_authors">תודה לכותבי הקוד שתרמו: %1$s.</string>
@@ -214,6 +198,7 @@
<string name="ShowUsernameInList_summary">הצגת ערכי שם המשתמש מתחת לכותרות הרשומות. שימושי עבור ריבוי חשבונות או קודים חד פעמיים.</string>
<string name="RememberRecentFiles_title">זכור מסדי נתונים</string>
<string name="RememberRecentFiles_summary">זכור את מסדי הנתונים שנפתחו לאחרונה והצג אותם במסך פתיחת מסד הנתונים.</string>
<string name="kp2a_findUrl">Keepass2Android: חיפוש סיסמא</string>
<string name="excludeExpiredEntries">אל תציג רשומות שפג תוקפן</string>
<string name="search_options">אפשרויות</string>
<string name="caseSensitive">תלוי רישיות</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Povratna informacija</string>
@@ -37,6 +38,7 @@
<string name="FileHandling_prefs">Upravljanje datotekama</string>
<string name="keyboard_prefs">Tipkovnica</string>
<string name="export_prefs">Izvoz baze podataka...</string>
<string name="fingerprint_prefs">Otključavanje otiskom</string>
<string name="import_db_prefs">Uvoz baze podataka u internu mapu</string>
<string name="import_keyfile_prefs">Uvezi ključa u unutarnju mapu</string>
<string name="keyboardswitch_prefs">Prebacivanje tipkovnice</string>
@@ -67,6 +69,25 @@
<string name="disclaimer_formal">Keepass2Android dolazi bez IKAKVOG JAMSTVA; Ovo je besplatni softver i možete ga redistribuirati pod uvjetima GPL verzije 2 ili kasnije.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopiraj u međuspremnik</string>
<string name="fingerprint_hint">Senzor za dodir</string>
<string name="fingerprint_description">Potvrdite otisak prsta za nastavak</string>
<string name="fingerprint_fatal">Nije moguće postaviti otključavanje otiskom prsta:</string>
<string name="fingerprint_not_recognized">Otisak prsta nije prepoznat. Pokušajte ponovo</string>
<string name="fingerprint_success">Prepoznat je otisak prsta</string>
<string name="fingerprint_os_error">Otključavanje pomoću otiska prsta zahtijeva Android 6.0 ili noviju verziju.</string>
<string name="fingerprint_hardware_error">Nije pronađen hardver otiska prsta.</string>
<string name="fingerprint_no_enrolled">Nemate otisaka prstiju na ovom uređaju. Najprije idite na postavke sustava.</string>
<string name="disable_fingerprint_unlock">Onemogući otključavanje otiskom prsta</string>
<string name="enable_fingerprint_unlock">Omogući potpuno otključavanje pomoću otiska prsta</string>
<string name="enable_fingerprint_quickunlock">Otključaj s otiskom prsta za QuickUnlock</string>
<string name="fingerprint_unlock_hint">Dodirnite senzor otključavanja</string>
<string name="fingerprint_unlock_failed">Otključavanje otiskom prsta nije uspjelo. Android OS poništio je ključ za dešifriranje. To se obično događa ako je novi otisak prsta bio upisan ili su sigurnosne postavke promijenjene. </string>
<string name="fingerprint_disabled_wrong_masterkey">Otključavanje baze podataka nije uspjelo: nevažeći kompozitni ključ. Otključavanje otiskom prsta nije bilo omogućeno jer očigledno je da pohranjena glavna lozinka više ne vrijedi. </string>
<string name="fingerprint_reenable">Ponovno omogućite otključavanje otiskom prsta za novu glavnu lozinku.</string>
<string name="fingerprint_reenable2">Otključajte lozinkom i ponovno omogućite Otključavanje otiskom prsta u postavkama baze podataka.</string>
<string name="FingerprintInitFailed">Inicijaliziranje senzora otiska prsta nije uspjelo. </string>
<string name="enable_fingerprint_unlock_Info">To će pohraniti Vašu glavnu lozinku na ovom uređaju, šifrirano pomoću Android Keystore i zaštićena otiskom prsta. Omogućuje otključavanje baze podataka samo pomoću otiska prsta.</string>
<string name="enable_fingerprint_quickunlock_Info">Omogućuje upotrebu otiska prsta umjesto QuickUnlock koda. Ne pohranjuje nikakve informacije vezane uz glavnu lozinku.</string>
<string name="enter_filename">Unesite naziv datoteke baze podataka</string>
<string name="entry_accessed">Zadnji pristup</string>
<string name="entry_cancel">Otkaži</string>
@@ -225,6 +246,7 @@
<string name="ShowUsernameInList_summary">Prikaži korisnička imena ispod naslova unosa. Korisno za više računa ili više TAN-ova.</string>
<string name="RememberRecentFiles_title">Zapamti baze podataka</string>
<string name="RememberRecentFiles_summary">Zapamti nedavno otvorene baze podataka i prikaži ih na zaslonu \"Otvorite bazu podataka\".</string>
<string name="kp2a_findUrl">Keepass2Android: Pronađite lozinku</string>
<string name="excludeExpiredEntries">Izuzmi istekle stavke</string>
<string name="search_options">Mogućnosti</string>
<string name="caseSensitive">Osjetljivo na velika i mala slova</string>
@@ -568,6 +590,7 @@ Evo nekoliko savjeta koji bi Vam mogli pomoći u dijagnosticiranju problema:\n
<string name="DbQuicklockedChannel_desc">Obavijest da će baza podataka biti zaključana QuickUnlockom</string>
<string name="EntryChannel_name">Obavijesti o prijavama</string>
<string name="EntryChannel_desc">Obavijest za pojednostavljenje pristupa trenutno odabranom unosu.</string>
<string name="ShowKeyboardDuringFingerprintAuth">Prikaži softversku tipkovnicu za unos lozinke kada je skeniranje otiska prsta aktivno.</string>
<string name="ChangeLog_1_06">Verzija 1.06\n
* Prelazak na ykDroid umjesto YubiChallenge kao aplikacije za Yubikey Challenge-Response.\n
* Implementacija podrške za Challenge-Response u stilu \"KeepassXC\". Napomena: Format baze podataka mora biti KDBX4!\n
@@ -842,10 +865,12 @@ Prvotna javna verzija </string>
<string name="autofill_sign_in_prompt">Ispuni pomoću Keepass2Android</string>
<string name="autofill_disable">Onemogući automatsko izpunjavanje za %1$s</string>
<string name="invalid_link_association">Nije moguće povezati web domenu %1$s s aplikacijom %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android otkrio je hardver za otisak prsta. Želite li omogućiti otključavanje otiskom prsta za ovu bazu podataka?</string>
<string name="understand">Razumijem</string>
<string name="dont_show_again">Više ne prikazuj</string>
<string name="masterkey_infotext_head">Sjećate li se Vaše glavne lozinke?</string>
<string name="masterkey_infotext_main">Imajte na umu da nećete moći otvoriti bazu podataka bez glavne lozinke. Nema načina da \"resetiramo\" glavnu lozinku.</string>
<string name="masterkey_infotext_fingerprint_note">Također imajte na umu da otključavanje otiskom prsta pohranjuje glavnu lozinku u sigurnu pohranu Androida. Android može izbrisati ovu pohranu u bilo kojem trenutku, npr. ako dodate novi otisak prsta u postavke sustava. Stoga nemojte se oslanjati na otisak prsta, nego zapamtite glavnu lozinku!</string>
<string name="backup_infotext_head">Imate li sigurnosnu kopiju Vaše baze podataka?</string>
<string name="backup_infotext_main">Keepass2Android pohranjuje Vaše zaporke u datoteku na lokaciji po Vašem izboru. Jeste li sigurni da i dalje možete pristupiti toj datoteci kad se telefon izgubi ili ukrade, ili kada se datoteka uništi ili izbriše? Pazite da uvijek imate ažuriranu sigurnosnu kopiju na sigurnom mjestu!</string>
<string name="backup_infotext_note">Da bi stvorili sigurnosnu kopiju, idite na %1$s &gt; %2$s &gt; %3$s.</string>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Visszajelzés</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">Fájlkezelés</string>
<string name="keyboard_prefs">Billentyűzet</string>
<string name="export_prefs">Adatbázis exportálása...</string>
<string name="fingerprint_prefs">Biometrikus feloldás</string>
<string name="fingerprint_prefs">Feloldás ujjlenyomattal</string>
<string name="import_db_prefs">Az adatbázis importálása az alkalmazás saját tárterületére</string>
<string name="import_keyfile_prefs">A kulcsfájl importálása az alkalmazás saját tárterületére</string>
<string name="keyboardswitch_prefs">Billentyűzetváltás</string>
@@ -68,7 +69,6 @@
<string name="clipboard_timeout_summary">Beállíthatja, mennyi idő után kerüljön törlésre a vágólap</string>
<string name="copy_username">Felhasználónév másolása a vágólapra</string>
<string name="copy_password">Jelszó másolása a vágólapra</string>
<string name="copy_totp">TOTP másolása a vágólapra</string>
<string name="available_through_keyboard">Bejegyzés elérhető KP2A billentyűzeten keresztül</string>
<string name="entry_is_available">elérhető</string>
<string name="not_possible_im_picker">Nem lehet megnyitni a dialógust a kiválasztott módszerrel. Aktiválja a billentyűzetet manuálisan.</string>
@@ -81,24 +81,30 @@
<string name="disclaimer_formal">Ehhez a programhoz SEMMILYEN GARANCIA NEM JÁR. Ez egy szabad szoftver, GNU General Public License v2 vagy későbbi verziójának feltételei mellett terjeszthető, illetve módosítható.</string>
<string name="ellipsis"></string>
<string name="copy_to_clipboard">Másolás vágólapra</string>
<string name="fingerprint_description">A folytatáshoz azonosítsa önmagát</string>
<string name="fingerprint_fatal">A biometrikus feloldás beállítása sikertelen:</string>
<string name="fingerprint_not_recognized">A biometrikus azonosítás sikertelen. Próbálja újra</string>
<string name="fingerprint_success">A biometrikus azonosítás sikerült</string>
<string name="fingerprint_os_error">A biometrikus feloldás Android 6.0 vagy annál újabb operációs rendszert igényel.</string>
<string name="fingerprint_hardware_error">Nem találtunk biometrikus eszközt.</string>
<string name="fingerprint_no_enrolled">A biometrikus azonosítás nem lett beállítva ezen az eszközön. Módosítsa a rendszerbeállításokat.</string>
<string name="disable_fingerprint_unlock">Biometrikus feloldás tiltása</string>
<string name="enable_fingerprint_unlock">A teljes biometrikus feloldás engedélyezése</string>
<string name="enable_fingerprint_quickunlock">Biometrikus gyorsfeloldás engedélyezése</string>
<string name="fingerprint_unlock_failed">A biometrikus feloldás nem sikerült. A titkosító kulcsot az operációs rendszer érvénytelenítette. Ez általában akkor történik, ha biometriai azonosításra vagy biztonságra vonatkozó beállítások megváltoztak. </string>
<string name="fingerprint_disabled_wrong_masterkey">Az adatbázis feloldása nem sikerült: Az összetett kulcs érvénytelen. A biometrikus feloldás le lett tiltva, mert úgy tűnik, a tárolt főkulcs (jelszó) már nem érvényes. </string>
<string name="fingerprint_reenable">Engedélyezze újra a biometrikus feloldást az új főkulccsal (jelszóval).</string>
<string name="fingerprint_reenable2">Kérem, oldja fel a jelszavával, és ezután kapcsolja be újra a biometrikus feloldást az adatbázis-beállításokban.</string>
<string name="FingerprintInitFailed">A biometrikus azonosítás inicializálása sikertelen. </string>
<string name="fingerprint_hint">Érintse meg az érzékelőt</string>
<string name="fingerprint_description">Ujjlenyomat megerősítése a folytatáshoz</string>
<string name="fingerprint_fatal">Ujjlenyomattal való feloldás beállítása nem sikerült:</string>
<string name="fingerprint_not_recognized">Az ujjlenyomat nem ismerhető fel. Próbálja újra</string>
<string name="fingerprint_success">Ujjlenyomat azonosítva</string>
<string name="fingerprint_os_error">Az ujjlenyomattal való feloldáshoz Androdi 6.0 vagy újabb szükséges.</string>
<string name="fingerprint_hardware_error">Nincs ujjlenyomat-leolvasó észlelve.</string>
<string name="fingerprint_no_enrolled">Nincs egyetlen ujjlenyomat sem regisztrálva ezen az eszközön. Kérjük, használja a rendszerbeállításokat.</string>
<string name="disable_fingerprint_unlock">Ujjlenyomattal való feloldás letiltása</string>
<string name="enable_fingerprint_unlock">Ujjlenyomattal való feloldás engedélyezése</string>
<string name="enable_fingerprint_quickunlock">Ujjlenyomat alapú GyorsFeloldás engedélyezése</string>
<string name="fingerprint_unlock_hint">Érintse meg az érzékelőt az adatbázis feloldásához</string>
<string name="fingerprint_unlock_failed">Ujjlenyomattal való feloldás nem sikerült. A titkosító kulcsot az Android OS érvénytelenítette. Ez általában akkor történik, ha új ujjlenyomat készült vagy a biztonsági beállítások megváltoztak. </string>
<string name="fingerprint_disabled_wrong_masterkey">Az adatbázis feloldása nem sikerült: Az összetett kulcs érvénytelen. Az ujjlenyomat alapú feloldás le lett tiltva, mert úgy tűnik a tárolt főkulcs (jelszó) már nem érvényes. </string>
<string name="fingerprint_reenable">Engedélyezze újra az ujjlenyomat alapú feloldást az új főkulccsal (jelszóval).</string>
<string name="fingerprint_reenable2">Kérem oldja fel a jelszavával és ezután kapcsolja be újra az Ujjlenyomat Feloldást az adatbázis-beállításokban.</string>
<string name="FingerprintInitFailed">Nem sikerült az ujjlenyomat olvasó inicializálása. </string>
<string name="FingerprintSetupFailed">Az adatok titkosítása nem sikerült. Ez előfordulhat, amennyiben a rendszerbeállításoknál hozzáadott vagy törölt egy ujjlenyomatot, miközben a Keepass2Android ujjlenyomatot próbált beolvasni.</string>
<string name="enable_fingerprint_unlock_Info">Ez a funkció le fogja tárolni a főkulcsot (jelszót) az eszközön, az Android Kulcstár által titkosítva, és biometrikus authentikációval védve. Ez lehetővé teszi az adatbázis biometrikus feloldását.</string>
<string name="enable_fingerprint_quickunlock_Info">Biometrikus azonosítás engedélyezése a szokásos kód-alapú GyorsFeloldás helyett. Ez nem igényli a főkulcshoz kötődő információ tárolását.</string>
<string name="enable_fingerprint_unlock_Info"> Ez a funkció le fogja tárolni a főkulcsot (jelszót) az
eszközön, az Android Kulcstár által titkosítva, és
ujjlenyomat alapú authentikációval védve. Ez lehetővé
teszi, hogy az adatbázist ujjlenyomat segítségével
történő feloldását. </string>
<string name="enable_fingerprint_quickunlock_Info">Ujjlenyomat alapú GyorsFeloldás engedélyezése a szokásos kód-alapú GyorsFeloldás helyett. Ezzel elkerülhető a főkulcshoz kötődő bármiféle információ tárolása.</string>
<string name="enter_filename">Adja meg az adatbázis fájlnevét</string>
<string name="entry_accessed">Utolsó hozzáférés</string>
<string name="entry_cancel">Mégsem</string>
@@ -172,7 +178,6 @@
<string name="menu_change_key">Főkulcs (jelszó) megváltoztatása</string>
<string name="menu_copy_pass">Jelszó másolása</string>
<string name="menu_copy_user">Felhasználónév másolása</string>
<string name="menu_copy_totp">TOTP másolása</string>
<string name="menu_create">Létrehozás</string>
<string name="menu_app_settings">Beállítások</string>
<string name="menu_db_settings">Adatbázis-beállítások</string>
@@ -266,6 +271,7 @@
<string name="ShowUsernameInList_summary">A felhasználónevek megjelenítése a bejegyzések címe alatt. Hasznos, ha több felhasználói fiókkal is rendelkezik, vagy TAN-okat használ.</string>
<string name="RememberRecentFiles_title">Az adatbázisok megjegyzése</string>
<string name="RememberRecentFiles_summary">A legutóbb megnyitott adatbázisok megjegyzése és megjelenítése az Adatbázis megnyitása képernyőn.</string>
<string name="kp2a_findUrl">Keepass2Android: Jelszó keresése</string>
<string name="excludeExpiredEntries">Lejárt bejegyzések kizárása</string>
<string name="search_options">Opciók</string>
<string name="caseSensitive">Kis- és nagybetűk megkülönböztetése</string>
@@ -326,8 +332,8 @@
<string name="LockWhenNavigateBack_summary">Zárolódjon az adatbázis, ha az alkalmazásból a vissza gomb segítségével kilép.</string>
<string name="UseKp2aKeyboardInKp2a_title">A beépített billentyűzet használata Keepass2Android-on belül</string>
<string name="UseKp2aKeyboardInKp2a_summary">Ha nem bízik a szabványos billentyűzetben, válassza ki ezt az opciót a beépített billentyűzet használatához a mesterjelszó beírásakor, illetve a kulcsok szerkesztésekor.</string>
<string name="ActivateSearchViewOnStart_title">Aktiválja a keresőmezőt indításkor</string>
<string name="ActivateSearchViewOnStart_summary">Aktiválja a keresőmezőt a csoportnézetben a feloldás után vagy a bejegyzés keresésekor</string>
<string name="ActivateSearchViewOnStart_title">Aktiválja a kereső mezőt indításkor</string>
<string name="ActivateSearchViewOnStart_summary">Aktiválja a keresőmezőt a csoport nézetben feloldás után, vagy bejegyzés keresésekor</string>
<string name="NoDonateOption_title">Támogatás-opció elrejtése</string>
<string name="NoDonateOption_summary">Ez a beállítás a támogatók számára készült, és csak akkor érhető el, ha a Keepass2Android-ot már egy ideje használja.</string>
<string name="NoDonateOption_question">Adományok nélkül ez az alkalmazás nem létezne és nem lehetne folyamatosan fejleszteni. Ha még nem adományozott, kérem, gondolja meg, hogy most megtegye</string>
@@ -336,14 +342,14 @@
<string name="UseOfflineCache_title">Helyi másolatok</string>
<string name="UseOfflineCache_summary">Készüljön másolat az adatbázis fájlokról az alkalmazás átmeneti tárolójában. Így az adatbázis akkor is használható, ha az adatbázis fájl nem elérhető.</string>
<string name="CreateBackups_title">Helyi biztonsági mentések</string>
<string name="CreateBackups_summary">Hozzon létre helyi biztonsági másolatot a sikeres adatbázisbetöltés után.</string>
<string name="CreateBackups_summary">Hozzon létre helyi biztonsági mentés másolatot sikeres adatbázis betöltés után.</string>
<string name="UpdatingBackup">Helyi biztonsági másolat frissítése...</string>
<string name="LocalBackupOf">%1$s helyi biztonsági mentése</string>
<string name="show_local_backups">Helyi archívok mutatása</string>
<string name="AcceptAllServerCertificates_title">SSL tanúsítványok</string>
<string name="AcceptAllServerCertificates_summary">Adja meg, mi történjen, ha a tanúsítvány ellenőrzése nem sikerül. Megjegyzés: sikertelen ellenőrzés esetén van lehetőség az eszközre a megfelelő tanúsítvány telepítésére!</string>
<string name="ClearOfflineCache_title">Helyi másolatok törlése?</string>
<string name="ClearOfflineCache_question">Ez a funkció az összes adatbázisfájlt törölni fogja az átmeneti tárolóról. Minden változtatás, ami akkor készült, amíg az eredeti adatbázis nem volt elérhető, és ami így nem lett szinkronizálva, el fog veszni. Folytatja?</string>
<string name="ClearOfflineCache_question">Ez a funkció az összes adatbázis fájlt törölni fogja az átmeneti tárolóról. Minden változtatás - ami akkor készült, amikor az eredeti adatbázis nem volt elérhető és ami így nem lett szinkronizálva - el fog veszni. Folytatja?</string>
<string name="CheckForFileChangesOnSave_title">Változások ellenőrzése</string>
<string name="CheckForFileChangesOnSave_summary">Mentés előtt kerüljön ellenőrzésre, hogy a fájlt más módosította-e.</string>
<string name="CheckForDuplicateUuids_title">Ütköző egyedi azonosítók keresése</string>
@@ -368,10 +374,10 @@
<string name="AutoSwitchBackKeyboard_summary">Visszaváltás az előző billentyűzetre ha nem lett bejegyzés megnyitva.</string>
<string name="ShowUnlockedNotification_title">Értesítés az adatbázis hozzáférhetőségéről</string>
<string name="ShowUnlockedNotification_summary">Egy értesítési ikon megjelenítése, amíg az adatbázis hozzáférhető.</string>
<string name="IconVisibilityInfo_Android8_text">Az Android 8 bevezetett egy új működési módot az értesítésekhez. Ha el akarja rejteni a Keepass2Android értesítési ikonját, kérjük, ezt a rendszerbeállításokban tegye meg. Állítsa az értesítési kategória fontosságát minimumra.</string>
<string name="IconVisibilityInfo_Android8_text">Az Android 8 bevezetett egy új működési módot az értesítésekhez. Ha el akarja rejteni a Keepass2Android értesítési ikonját, kérjük ezt a rendszer beállításokban tegye meg. Állítsa az értesítési kategória fontosságát Minimum-ra.</string>
<string name="IconVisibilityInfo_Android8_btnSettings">Beállítások megnyitása</string>
<string name="DontCare">Nem érdekel</string>
<string name="DocumentAccessRevoked">A fájl már nem elérhető a Keepass2Android által. Vagy el lett távolítva, vagy a hozzáférési jogosultságok vissza lettek vonva. Kérjük használja a Fájl újra megnyitását, pl. az adatbázis-váltást használva.</string>
<string name="DocumentAccessRevoked">A fájl már nem elérhető a Keepass2Android által. Vagy el lett távolítva, vagy a hozzáférési jogosultságok vissza lettek vonva. Kérjük használja a Fájl újra megnyitását, pl. az Adatbázis-váltást használva.</string>
<string name="PreloadDatabaseEnabled_title">Adatbázisok előrehozott betöltése</string>
<string name="PreloadDatabaseEnabled_summary">A jelszó bekérésével egyidejűleg kezdődjön el az adatbázis betöltése vagy letöltése.</string>
<string name="AskOverwriteBinary">Szeretné felülírni a meglévő, azonos nevű bináris fájlt?</string>
@@ -411,8 +417,8 @@
<string name="YesSynchronize">Igen, egyesítse!</string>
<string name="NoOverwrite">Nem, írja felül!</string>
<string name="UseOfflineMode">Csak az átmeneti tárolóban lévő másolaton dolgozik</string>
<string name="UseOnlineMode">Az átmeneti tárolóban lévő másolat szinkronizálása a forrással (eredetivel)</string>
<string name="UseOfflineMode_Info">Az adatbázis az átmeneti tárolóból lett betöltve. A változtatások csak az átmeneti tárolóban lévő másolatban tárolódnak, és csak \"Az átmeneti tárolóban lévő másolat szinkronizálását az eredetivel\" funkció által lesznek az eredetivel szinkronizálva.</string>
<string name="UseOnlineMode">Az átmeneti tárolóban lévő másolat szinkronizálása a forrással(eredetivel)</string>
<string name="UseOfflineMode_Info">Az adatbázis az átmeneti tárolóból lett betöltve. A változtatások csak az átmeneti tárolóban lévő másolatban tárolódnak és csak akkor szinkronizálódnak az eredetivel, amikor kiválasztja Az átmeneti tárolóban lévő másolat szinkronizálását az eredetivel funkciót.</string>
<string name="InOfflineMode">Csak az átmeneti tárolóban lévő másolaton dolgozik.</string>
<string name="SynchronizingCachedDatabase">Az adatbázis helyi másolatának szinkronizálása…</string>
<string name="DownloadingRemoteFile">Forrás (eredeti) fájl betöltése…</string>
@@ -422,13 +428,13 @@
<string name="SynchronizedDatabaseSuccessfully">Az adatbázis szinkronizálása sikeres!</string>
<string name="CheckingDatabaseForChanges">Változások keresése a célfájlban…</string>
<string name="CouldNotSaveToRemote">Nem sikerült a forrás (eredeti) fájlba mentés: %1$s. Mentsen újra vagy használja a Szinkronizálás menüt, ha a fájl már újra elérhető.</string>
<string name="CouldNotLoadFromRemote">A forrás(eredeti) fájl: %1$s nem elérhető. Fájl az átmeneti tárolóból lett betöltve. Az adatbázist továbbra is megváltoztathatja, és a változtatásokat később szinkronizálhatja.</string>
<string name="CouldNotLoadFromRemote">A forrás(eredeti) fájl nem elérhető: %1$s. Fájl betöltve az átmeneti tárolóból. Az adatbázist továbbra is megváltoztathatja és szinkronizálhatja a változtatásokat később.</string>
<string name="UpdatedRemoteFileOnLoad">Forrás(eredeti) fájl frissítve.</string>
<string name="NotifyOpenFromLocalDueToConflict">Az átmeneti tárolóban lévő másolat lett megnyitva, mert eltérés volt a forrás (eredeti) fájlhoz képest. Használja az Szinkronizálás funkciót a változtatások összefésüléséhez.</string>
<string name="NotifyOpenFromLocalDueToConflict">Az átmeneti tárolóban lévő másolat lett megnyitva, mert eltérés volt a forrás(eredeti) fájlhoz képest. Használja az Szinkronizálás funkciót a változtatások összefésüléséhez.</string>
<string name="LoadedFromRemoteInSync">Forrás(eredeti) fájl és az átmeneti tárolóban lévő másolat szinkronizálva.</string>
<string name="UpdatedCachedFileOnLoad">A %1$s átmeneti tárolóban lévő másolata frissítve.</string>
<string name="RemoteDatabaseUnchanged">Nincs változás.</string>
<string name="ResolvedCacheConflictByUsingRemoteOtpAux">Az OTP kiegészítő fájl helyi másolata frissítve lett: a forrás (eredeti) példány számlálója magasabb volt.</string>
<string name="ResolvedCacheConflictByUsingRemoteOtpAux">Az OTP kiegészítő fájl helyi másolata frissítve lett: a forrás(eredeti) példány számlálója magasabb volt.</string>
<string name="ResolvedCacheConflictByUsingLocalOtpAux">Az OTP kiegészítő forrás(eredeti) fájl frissítve lett: a helyi másolat számlálója magasabb volt.</string>
<string name="SynchronizingOtpAuxFile">Az OTP kiegészítő fájl szinkronizálása…</string>
<string name="database_file">adatbázisfájl</string>
@@ -625,8 +631,9 @@
<string name="DbUnlockedChannel_desc">Értesítés az adatbázis feloldásáról</string>
<string name="DbQuicklockedChannel_name">GyorsFeloldás</string>
<string name="DbQuicklockedChannel_desc">Értesítés az adatbázis GyorsFeloldással való zárolásáról</string>
<string name="EntryChannel_name">Bejegyzésértesítések</string>
<string name="EntryChannel_name">Bejegyzés értesítések</string>
<string name="EntryChannel_desc">Értesítés a jelenleg kiválasztott bejegyzés egyszerűsített eléréséhez.</string>
<string name="ShowKeyboardDuringFingerprintAuth">A billentyűzet megjelenítése a jelszóbeíráshoz ujjlenyomat-leolvasás közben.</string>
<string name="ChangeLog_keptDonate">Lehetőségek kiterjesztése, hogy egy sörrel vagy valami mással támogasson</string>
<string name="ChangeLog">&lt;b&gt;Version 0.6.2&lt;/&gt;
* Google Drive/Dropbox/... integráció: Ha a hivatalos Google Drive vagy Dropbox applikációból nyit meg egy .kdbx fájlt, akkor az autómatikusan a KP2A-val kerül megnyitásra.
@@ -697,24 +704,23 @@ Kezdeti közösségi kiadás</string>
</string-array>
<string name="ClearClipboardWarning">Ellenőrizze, hogy ez működik az ön rendszerén, amennyiben nem működik, használja a beépített billentyűzetet.</string>
<string name="PluginDescription">A beépülő modul által nyújtott leírás:</string>
<string name="autofill_hint">A Keepass2Android támogatja az Android Automatikus kitöltés szolgáltatását, de úgy tűnik, ez még nincs bekapcsolva.</string>
<string name="autofill_hint">A Keepass2Android támogatja az Android Automatikus Kitöltés szolgáltatását, de úgy tűnik ez még nincs bekapcsolva.</string>
<string name="autofill_enable">Automatikus kitöltés engedélyezése</string>
<string name="autofill_enable_failed">Elnézést, úgy tűnik az Ön készüléke nem támogatja a rendszerbeállítások megnyitását az alkalmazásból. Kérjük indítsa el a rendszerbeállításokat és engedélyezze az Automatikus kitöltés szolgáltatást.</string>
<string name="autofill_enable_failed">Elnézést, úgy tűnik az ön készüléke nem támogatja a rendszer beállítások megnyitását az app-ból. Kérjük indítsa el a rendszer beállításokat és engedélyezze az Automatikus kitöltés szolgáltatást.</string>
<string name="show_autofill_help">Automatikus kitöltés segítség megjelenítése</string>
<string name="autofill_sign_in_prompt">Kitöltés Keepass2Androiddal</string>
<string name="autofill_disable">Az AutoFill tiltása %1$s esetén</string>
<string name="autofill_enable_for">Az AutoFill engedélyezése %1$s esetén</string>
<string name="invalid_link_association">Nem sikerült összerendelni a %1$s web domaint a %2$s alkalmazással</string>
<string name="enable_fingerprint_hint">Biometrikus eszköz detektálva. Szeretné engedélyezni az adatbázis biometrikus feloldását?</string>
<string name="enable_fingerprint_hint">Ujjlenyomatleolvasó eszköz detektálva. Szeretné engedélyezni az adatbázis ujjlenyomattal való feloldását?</string>
<string name="understand">Értem</string>
<string name="dont_show_again">Ne mutassa többet</string>
<string name="masterkey_infotext_head">Emlékszik a főkulcsra (jelszó)?</string>
<string name="masterkey_infotext_main">Vegye figyelembe, hogy nem fogja tudni megnyitni az adatbázisát a főkulcs (jelszó) nélkül. Nincs lehetőség a főkulcs (jelszó) visszaállítására.</string>
<string name="masterkey_infotext_fingerprint_note">Azt is vegye figyelembe, hogy a biometrikus feloldás úgy működik, hogy a főkulcs (jelszó) az Android biztonsági tárolójában tárolódik. Ezt a tárolót az Android bármikor törölheti; például amikor hozzáad egy új ujjlenyomatot a rendszerbeállításokban. Emiatt, kérjük, ne hagyatkozzon kizárólag az ujjlenyomattal való feloldásra, hanem jegyezze meg a főkulcsot (jelszó) is!</string>
<string name="masterkey_infotext_fingerprint_note">Azt is vegye figyelembe, hogy az ujjlenyomattal való feloldás úgy működik, hogy a főkulcs (jelszó) az Android biztonsági tárolójában tárolódik. Ezt a tárolót az Android bármikor törölheti. Pl.: amikor hozzáad egy új ujjlenyomatot a rendszer beállításokban. Emiatt, kérjük, ne hagyatkozzon az ujjlenyomattal való feloldásra, hanem jegyezze meg a főkulcsot (jelszó)!</string>
<string name="backup_infotext_head">Van biztonsági mentése az adatbázisról?</string>
<string name="backup_infotext_main">Keepass2Android az ön által választott helyen, egy fájlban tárolja az ön jelszavait. Biztos benne, hogy akkor is hozzá tud férni ehhez a fájlhoz ha a telefonját elhagyja, ellopják, vagy a fájl megsemmisül vagy letörlődik? Kérjük gondoskodjon róla, hogy mindig van naprakész biztonsági másolata egy biztonságos helyen!</string>
<string name="backup_infotext_note">Biztonsági másolat készítéséhez menjen ide %1$s &gt; %2$s &gt; %3$s.</string>
<string name="emergency_infotext_head">Felkészült vészhelyzeti esetekre?</string>
<string name="emergency_infotext_main">Gondolkozott már azon, hogy mi történne, ha nem tudna többé a jelszó adatbázisához hozzáférni? Mi történik, ha baleset éri? Hasznos lehet vészhelyzet esetére a főkulcsot (jelszó) megosztani egy olyan személlyel, akiben megbízik. Különben senki sem fog tudni hozzáférni a jelszavaihoz.</string>
<string name="no_secure_display">A jelenleg használt kijelző nincs biztonságosként megjelölve, ami azt jelenti, hogy más alkalmazások képernyőképeket készíthetnek. A Keepass2Android jelenlegi beállítása csak biztonságos képernyőkön engedélyezi érzékeny információ megjelenítését. Kérjük, váltson át egy biztonságos kijelzőre (például válassza le a HDMI monitort) vagy módosítsa az alkalmazás-beállításokat.</string>
</resources>

View File

@@ -1,496 +1,480 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Umpan balik</string>
<string name="AboutText">Keepass2Android adalah pengelola sandi yang menyediakan akses baca/tulis ke basis data KeePass 2.x pada Android.</string>
<string name="CreditsText">Antarmuka pengguna didasarkan pada KeepassDroid yang dikembangkan oleh Brian Pellin. Kode untuk operasi basis data didasarkan pada KeePass oleh Dominik Reichl. Robot android direproduksi atau dimodifikasi dari karya yang dibuat dan dibagikan oleh Google dan digunakan sesuai dengan ketentuan yang dijelaskan dalam Lisensi Atribusi Creative Commons 3.0.</string>
<string name="AboutText">Keepass2Android adalah pengatur password yang menyediakan akses membaca/menulis ke database KeePass 2.x pada Android.</string>
<string name="CreditsText">Antarmuka pengguna didasarkan pada KeepassDroid yang dikembangkan oleh Brian Pellin. Kode untuk operasi database didasarkan pada KeePass oleh Dominik Reichl. Robot android direproduksi atau dimodifikasi dari karya yang dibuat dan dibagi oleh Google dan digunakan sesuai dengan ketentuan yang dijelaskan dalam Lisensi Atribusi Creative Commons 3.0.</string>
<string name="CreditsTextSFTP">Dukungan SFTP diimplementasikan menggunakan pustaka JSch di bawah lisensi BSD, dibuat oleh JCraft, Inc.</string>
<string name="CreditsIcons">Ikon palu dibuat oleh John Caserta dari Noun Project. Ikon penguin dibuat oleh Adriano Emeric dari Noun Project. Ikon bulu dibuat oleh Jon Testa dari Noun Project. Ikon apel dibuat oleh Ava Rowell dari Noun Project. Ikon gambar diambil dari https://icons8.com/icon/5570/Picture.</string>
<string name="accept">Terima</string>
<string name="CreditsIcons">Ikon palu dibuat oleh John Caserta dari proyek kata benda. Ikon penguin adalah buatan dari Adriano Emeric dari sebuah proyek kata benda. Ikon bulu adalah buatan dari Jon Testa dari sebuah proyek kata benda. Ikon apel adalah buatan dari Ava Rowell dari sebuah proyek kata benda. picture ikon adalah dari https://icons8.com/icon/5570/Picture.</string>
<string name="accept">Menerima</string>
<string name="deny">Tolak</string>
<string name="add_entry">Tambah entri</string>
<string name="edit_entry">Sunting entri</string>
<string name="add_url_entry">Buat entri untuk URL</string>
<string name="add_group">Tambah grup</string>
<string name="add_group_title">Tambah Grup</string>
<string name="edit_group_title">Sunting Grup</string>
<string name="add_entry">Menambah entri</string>
<string name="edit_entry">Mengubah entri</string>
<string name="add_url_entry">Membuat entri untuk URL</string>
<string name="add_group">Menambah grup</string>
<string name="add_group_title">Menambah grup</string>
<string name="edit_group_title">Ubah Grup</string>
<string name="algorithm">Algoritma</string>
<string name="algorithm_colon">Algoritma</string>
<string name="app_name">Keepass2Android</string>
<string name="short_app_name">KP2A</string>
<string name="app_name_nonet">Keepass2Android Luring</string>
<string name="short_app_name_nonet">KP2A Luring</string>
<string name="show_kill_app">Tombol-Tutup</string>
<string name="ShowGroupnameInSearchResult_title">Tampilkan nama grup dalam hasil pencarian</string>
<string name="ShowGroupnameInSearchResult_resume">Menampilkan nama grup di bawah judul entri dalam hasil pencarian. Berguna jika beberapa entri memiliki nama yang sama.</string>
<string name="show_kill_app">Tombol tutup</string>
<string name="ShowGroupnameInSearchResult_title">Menampilkan nama grup dalam hasil pencarian</string>
<string name="ShowGroupnameInSearchResult_resume">Tampilan nama grup di bawah judul entri dalam hasil pencarian. Berguna jika beberapa entri memiliki nama yang sama.</string>
<string name="NavigationToGroupCompleted_message">Grup yang tampil adalah: %1$s</string>
<string name="ShowGroupInEntry_title">Tampilkan nama grup dalam tampilan entri</string>
<string name="unknown_uri_scheme">Maaf! Keepass2Android tidak bisa menangani URI %1$s. Silakan hubungi pengembang!</string>
<string name="unknown_uri_scheme">Maaf! Keepass2Android tidak dapat menangani kembalian URI %1$s. Harap hubungi pengembang!</string>
<string name="Entry_singular">Satu entri</string>
<string name="Entry_plural">%1$d entri</string>
<string name="IconSet_title">Kumpulan ikon</string>
<string name="IconSet_install">Temukan lebih banyak...</string>
<string name="IconSet_install">Menemukan lebih banyak...</string>
<string name="security_prefs">Keamanan</string>
<string name="display_prefs">Tampilan</string>
<string name="password_access_prefs">Akses entri sandi</string>
<string name="QuickUnlock_prefs">BukaCepat</string>
<string name="FileHandling_prefs">Penanganan berkas</string>
<string name="keyboard_prefs">Kibor</string>
<string name="export_prefs">Ekspor basis data...</string>
<string name="password_access_prefs">Password akses masuk</string>
<string name="QuickUnlock_prefs">QuickUnlock</string>
<string name="FileHandling_prefs">Penanganan file</string>
<string name="keyboard_prefs">Papan ketik</string>
<string name="export_prefs">Ekspor database...</string>
<string name="fingerprint_prefs">buka dengan sidik jari</string>
<string name="import_db_prefs">Impor basis data ke folder internal</string>
<string name="import_keyfile_prefs">Impor berkas kunci ke folder internal</string>
<string name="keyboardswitch_prefs">Beralih kibor</string>
<string name="keyboardswitch_prefs">beralih Keyboard</string>
<string name="OnlyAvailableForLocalFiles">Hanya tersedia untuk berkas lokal.</string>
<string name="FileIsInInternalDirectory">Berkas disimpan dalam direktori internal.</string>
<string name="DatabaseFileMoved">Berkas basis data telah disalin ke folder internal. Tekan Oke untuk membuka dari lokasi yang baru. Catatan: Jangan lupa untuk secara teratur mengekspor basis data ke penyimpanan yang aman!</string>
<string name="KeyfileMoved">Berkas kunci telah disalin ke folder internal. Pastikan anda memiliki cadangan yang aman sebelum menghapus dari lokasi saat ini!</string>
<string name="KeyfileMoveRequiresRememberKeyfile">Tidak bisa menggunakan folder internal ketika lokasi berkas kunci tidak diingat. Silakan ubah preferensi keamanan.</string>
<string name="FileIsInInternalDirectory">Berkas tersebut disimpan dalam direktori internal.</string>
<string name="DatabaseFileMoved">berkas basis data disalin ke folder internal. Tekan Ok untuk membuka dari lokasi yang baru. Catatan: Jangan lupa untuk secara teratur mengekspor basis data ke penyimpanan yang aman!</string>
<string name="KeyfileMoved">berkas kunci disalin ke folder internal. Pastikan Anda memiliki cadangan yang aman sebelum menghapus dari lokasi saat ini!</string>
<string name="KeyfileMoveRequiresRememberKeyfile">Tidak dapat menggunakan folder internal ketika lokasi berkas kunci tidak diingat. Mengubah preferensi keamanan.</string>
<string name="unlock_database_button">Buka</string>
<string name="unlock_database_title">Buka basis data</string>
<string name="brackets">Tanda kurung</string>
<string name="unlock_database_title">buka basis data</string>
<string name="brackets">Kurung</string>
<string name="cancel">Batal</string>
<string name="ClearClipboard">Papan klip dihapus.</string>
<string name="clipboard_timeout">Batas waktu papan klip</string>
<string name="clipboard_timeout_summary">Waktu sebelum menghapus isi papan klip setelah menyalin nama pengguna atau sandi</string>
<string name="copy_username">Pilih untuk menyalin nama pengguna ke papan klip</string>
<string name="copy_password">Pilih untuk menyalin sandi ke papan klip</string>
<string name="copy_totp">Pilih untuk menyalin nama pengguna ke papan klip</string>
<string name="available_through_keyboard">Entri tersedia melalui kibor KP2A</string>
<string name="ClearClipboard">Clipboard dibersihkan.</string>
<string name="clipboard_timeout">Batas waktu clipboard</string>
<string name="clipboard_timeout_summary">Waktu sebelum membersihkan clipboard setelah menyalin nama pengguna atau kata sandi</string>
<string name="copy_username">Pilih untuk menyalin nama pengguna ke clipboard</string>
<string name="copy_password">Pilih untuk menyalin kata sandi ke clipboard</string>
<string name="available_through_keyboard">Entri tersedia melalui papan ketik KP2A</string>
<string name="entry_is_available">tersedia</string>
<string name="not_possible_im_picker">Tidak bisa membuka dialog untuk memilih metode masukan. Silakan aktifkan kibor secara manual.</string>
<string name="please_activate_keyboard">Silakan aktifkan kibor Keepass2Android dalam pengaturan sistem anda.</string>
<string name="creating_db_key">Membuat kunci basis data</string>
<string name="current_group">Grup Saat Ini</string>
<string name="current_group_root">Grup Saat Ini: Root</string>
<string name="database">Basis data</string>
<string name="digits">Angka</string>
<string name="disclaimer_formal">Keepass2Android dibuat TANPA GARANSI APAPUN; Ini adalah perangkat lunak bebas, dan anda bebas untuk mendistribusikannya di bawah lisensi GPL versi 2 atau yang lebih baru.</string>
<string name="not_possible_im_picker">Tidak bisa membuka dialog untuk memilih metode masukan. Harap aktifkan keyboard secara manual.</string>
<string name="please_activate_keyboard">Harap aktifkan papan ketik Keepass2Android dalam pengaturan sistem Anda.</string>
<string name="creating_db_key">Menciptakan kunci database</string>
<string name="current_group">Grup saat ini</string>
<string name="current_group_root">Grup saat ini: Root</string>
<string name="database">Database</string>
<string name="digits">angka</string>
<string name="disclaimer_formal">Keepass2Android dilengkapi TANPA GARANSI APAPUN; Ini adalah perangkat lunak bebas, dan Anda dipersilakan untuk mendistribusikan di bawah kondisi versi GPL 2 atau lebih baru.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Salin ke papan klip</string>
<string name="fingerprint_description">Harap autentikasi untuk melanjutkan</string>
<string name="fingerprint_not_recognized">Otentikasi biometrik gagal. Coba lagi</string>
<string name="fingerprint_os_error">Aktifkan Biometrik membutuhkan Android 6.0 atau yang lebih baru</string>
<string name="copy_to_clipboard">Salin ke Papan Klip</string>
<string name="fingerprint_hint">Sensor sentuh</string>
<string name="fingerprint_description">konfirmasi sidik jari untuk melanjutkan</string>
<string name="fingerprint_fatal">Tidak bisa memasang sidik jari pembuka:</string>
<string name="fingerprint_not_recognized">Sidik jari yang tidak dikenal. Coba lagi</string>
<string name="fingerprint_success">Sidik jari dikenal</string>
<string name="fingerprint_os_error">pembuka sidik jari memerlukan Android 6.0 atau yang lebih baru.</string>
<string name="fingerprint_hardware_error">Tidak ada perangkat keras sidik jari yang terdeteksi.</string>
<string name="fingerprint_no_enrolled">Anda tidak memiliki sidik jari yang terdaftar pada perangkat ini. Pertama silakan pergi ke pengaturan sistem.</string>
<string name="disable_fingerprint_unlock">Menonaktifkan pembuka sidik jari </string>
<string name="enable_fingerprint_unlock">Mengaktifkan penuh pembuka sidik jari</string>
<string name="enable_fingerprint_quickunlock">Mengaktifkan pembuka sidik jari untuk PembukaCepat</string>
<string name="fingerprint_unlock_hint">Sensor Sentuh untuk membuka basis data</string>
<string name="fingerprint_reenable">Silakan aktifkan kembali pembuka sidik jari untuk sandi utama yang baru.</string>
<string name="enable_fingerprint_unlock_Info"> Ini akan menyimpan sandi utama Anda pada perangkat ini, dienkripsi dengan Android Keystore dan dilindungi menggunakan otentikasi sidik jari. Memungkinkan untuk membuka basis data Anda hanya dengan sidik jari. </string>
<string name="enable_fingerprint_quickunlock_Info">Memungkinkan untuk menggunakan otentikasi sidik jari dari pada kode PembukaCepat. Tidak membutuhkan untuk menyimpan informasi terkait dengan sandi utama Anda.</string>
<string name="enter_filename">Masukkan nama berkas basis data</string>
<string name="entry_accessed">Diakses</string>
<string name="entry_cancel">Batal</string>
<string name="entry_comment">Catatan</string>
<string name="entry_tags">Tag</string>
<string name="entry_override_url">Timpa URL</string>
<string name="entry_tags">Tags/penandaan</string>
<string name="entry_override_url">Mengganti URL</string>
<string name="entry_confpassword">Konfirmasi sandi</string>
<string name="entry_created">Dibuat</string>
<string name="entry_expires">Kedaluwarsa</string>
<string name="entry_expires">Kadaluarsa</string>
<string name="entry_group_name">Nama Grup</string>
<string name="entry_keyfile">Berkas kunci (opsional)</string>
<string name="keyfile_heading">Berkas kunci</string>
<string name="entry_modified">Diubah</string>
<string name="entry_password">Sandi</string>
<string name="entry_password">Kata kunci</string>
<string name="entry_save">Simpan</string>
<string name="entry_title">Nama</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nama Pengguna</string>
<string name="entry_extra_strings">Ruas string ekstra</string>
<string name="entry_binaries">Lampiran berkas</string>
<string name="entry_user_name">Nama pengguna</string>
<string name="entry_extra_strings">Bidang string ekstra</string>
<string name="entry_binaries">Berkas lampiran</string>
<string name="error_could_not_create_group">Gagal membuat grup.</string>
<string name="error_could_not_create_parent">Tidak bisa membuat direktori induk.</string>
<string name="error_could_not_create_parent">Tidak dapat membuat direktori induk.</string>
<string name="error_database_exists">Berkas ini sudah ada.</string>
<string name="error_database_settinoverrgs">Gagal untuk menentukan pengaturan basis data.</string>
<string name="error_failed_to_launch_link">Gagal untuk membuka tautan.</string>
<string name="error_filename_required">Membutuhkan nama berkas.</string>
<string name="error_file_not_create">Tidak bisa membuat berkas</string>
<string name="error_failed_to_launch_link">Gagal untuk memulai link.</string>
<string name="error_filename_required">Nama berkas diperlukan.</string>
<string name="error_file_not_create">Tidak dapat membuat berkas</string>
<string name="error_invalid_db">Basis data tidak valid.</string>
<string name="error_invalid_path">Jalur tidak valid.</string>
<string name="error_no_name">Membutuhkan nama.</string>
<string name="error_nopass">Membutuhkan sandi atau berkas kunci.</string>
<string name="error_pass_gen_type">Setidaknya satu metode pembuatan sandi harus dipilih</string>
<string name="error_pass_match">Sandi tidak sama.</string>
<string name="error_rounds_not_number">Round harus angka.</string>
<string name="error_param_not_number">Parameter harus angka.</string>
<string name="error_title_required">Membutuhkan judul.</string>
<string name="error_invalid_path">Lokasi tidak valid.</string>
<string name="error_no_name">Nama diperlukan.</string>
<string name="error_nopass">Diperlukan sandi atau berkas kunci.</string>
<string name="error_pass_gen_type">Setidaknya satu jenis generasi sandi harus dipilih</string>
<string name="error_pass_match">Kata sandi tidak sama.</string>
<string name="error_rounds_not_number">Putaran harus nomor.</string>
<string name="error_param_not_number">Parameter harus nomor.</string>
<string name="error_title_required">Judul diperlukan.</string>
<string name="FileNotFound">Berkas tidak ditemukan.</string>
<string name="file_browser">Penjelajah Berkas</string>
<string name="generate_password">Buat Sandi</string>
<string name="generate_password">Buat password</string>
<string name="group">Grup</string>
<string name="hint_comment">catatan</string>
<string name="hint_conf_pass">konfirmasi sandi</string>
<string name="hint_generated_password">sandi yang dibuat</string>
<string name="hint_group_name">Nama grup</string>
<string name="hint_conf_pass">konfirmasi kata sandi</string>
<string name="hint_generated_password">sandi yang dihasilkan</string>
<string name="hint_group_name">Nama Grup</string>
<string name="hint_keyfile">berkas kunci</string>
<string name="hint_length">panjang</string>
<string name="hint_pass">sandi</string>
<string name="hint_login_pass">Sandi</string>
<string name="hint_title">nama</string>
<string name="hint_pass">kata sandi</string>
<string name="hint_login_pass">Kata kunci</string>
<string name="hint_title">Nama</string>
<string name="hint_url">URL</string>
<string name="hint_tags">tag1, tag2</string>
<string name="hint_username">nama pengguna</string>
<string name="InvalidPassword">Sandi atau berkas kunci tidak valid.</string>
<string name="InvalidPassword">Kata sandi atau file kunci tidak valid.</string>
<string name="invalid_algorithm">Algoritma tidak valid.</string>
<string name="invalid_db_sig">Format basis data tidak dikenal.</string>
<string name="keyfile_does_not_exist">Berkas kunci tidak ada.</string>
<string name="invalid_db_sig">Format database tidak diakui.</string>
<string name="keyfile_does_not_exist">File kunci tidak ada.</string>
<string name="no_keyfile_selected">Tidak ada berkas kunci yang dipilih.</string>
<string name="keyfile_is_empty">Berkas kunci kosong.</string>
<string name="keyfile_is_empty">File kunci masih kosong.</string>
<string name="length">Panjang</string>
<string name="list_size_title">Ukuran daftar grup</string>
<string name="list_size_summary">Ukuran teks dalam daftar grup</string>
<string name="loading_database">Memuat basis data…</string>
<string name="list_size_title">Ukuran daftar Grup</string>
<string name="list_size_summary">Ukuran teks dalam daftar Grup</string>
<string name="loading_database">Memuat database</string>
<string name="lowercase">Huruf kecil</string>
<string name="MaskedPassword">*****</string>
<string name="maskpass_title">Samarkan sandi</string>
<string name="maskpass_summary">Sembunyikan sandi secara bawaan</string>
<string name="maskpass_title">Kata sandi ditutup</string>
<string name="maskpass_summary">Menyembunyikan password secara baku</string>
<string name="menu_about">Tentang</string>
<string name="menu_change_key">Ganti Kunci Master</string>
<string name="menu_copy_pass">Salin Sandi</string>
<string name="menu_copy_user">Salin Pengguna</string>
<string name="menu_create">Buat</string>
<string name="menu_copy_pass">Menyalin Password</string>
<string name="menu_copy_user">Menyalin pengguna</string>
<string name="menu_create">Membuat</string>
<string name="menu_app_settings">Pengaturan</string>
<string name="menu_db_settings">Pengaturan basis data</string>
<string name="menu_db_settings">Pengaturan database</string>
<string name="menu_delete">Hapus</string>
<string name="menu_copy">Buat duplikat</string>
<string name="menu_copy">Membuat duplikat</string>
<string name="menu_move">Pindah ke grup lain</string>
<string name="menu_move_light">Pindah</string>
<string name="menu_navigate">Navigasi ke grup induk</string>
<string name="menu_donate">Donasi...</string>
<string name="menu_edit">Sunting</string>
<string name="menu_hide_password">Sembunyikan Sandi</string>
<string name="menu_lock">Kunci Basis Data</string>
<string name="menu_navigate">Menavigasi ke grup induk</string>
<string name="menu_donate">Menyumbangkan bir...</string>
<string name="menu_edit">Ubah</string>
<string name="menu_hide_password">Menyembunyikan Password</string>
<string name="menu_lock">Mengunci Database</string>
<string name="menu_open">Buka</string>
<string name="menu_close">Tutup</string>
<string name="menu_rename">Ubah nama</string>
<string name="menu_rename">Ganti nama</string>
<string name="menu_search">Cari</string>
<string name="menu_search_advanced">Pencarian Lanjutan</string>
<string name="menu_url">Kunjungi URL</string>
<string name="menu_change_db">Ganti basis data</string>
<string name="menu_show_all">Tampilkan semua ruas</string>
<string name="menu_search_advanced">Pencarian lanjutan</string>
<string name="menu_url">Pergi ke URL</string>
<string name="menu_change_db">Ganti database…</string>
<string name="menu_show_all">Tampilkan semua bidang</string>
<string name="minus">Minus</string>
<string name="never">Tidak pernah</string>
<string name="yes">Ya</string>
<string name="no">Tidak</string>
<string name="no_keys">Tidak ada entri dalam basis data atau grup.</string>
<string name="no_keys">Tidak ada entri dalam database atau grup.</string>
<string name="no_results">Tidak ada hasil pencarian</string>
<string name="omitbackup_title">Jangan cari cadangan dan entri keranjang sampah</string>
<string name="omitbackup_summary">Sembunyikan grup \'Cadangan\' dan Keranjang Sampah dari hasil pencarian</string>
<string name="pass_filename">Nama berkas basis data KeePass</string>
<string name="password_title">Masukkan sandi basis data</string>
<string name="omitbackup_title">Jangan Cari backup dan recycle bin entri</string>
<string name="omitbackup_summary">Menghilangkan grup \'Backup\' dan Recycle Bin dari hasil pencarian</string>
<string name="pass_filename">Nama berkas KeePass basis data</string>
<string name="password_title">Masukkan kata kunci basis data</string>
<string name="master_key_type">Pilih jenis kunci master:</string>
<string name="progress_create">Membuat basis data baru…</string>
<string name="create_database">Buat basis data</string>
<string name="progress_title">Mengerjakan</string>
<string name="remember_keyfile_summary">Ingat lokasi berkas kunci</string>
<string name="remember_keyfile_title">Simpan berkas kunci</string>
<string name="progress_create">Menciptakan basis data baru…</string>
<string name="create_database">Menciptakan basis data</string>
<string name="progress_title">Bekerja…</string>
<string name="remember_keyfile_summary">Mengingat lokasi file kunci</string>
<string name="remember_keyfile_title">Simpan file kunci</string>
<string name="remove_from_filelist">Hapus</string>
<string name="edit">Sunting</string>
<string name="edit">Ubah</string>
<string name="rijndael">Rijndael (AES)</string>
<string name="root">Root</string>
<string name="KeyDerivFunc">Fungsi kunci turunan</string>
<string name="KeyDerivFunc">Fungsi kunci turunan </string>
<string name="rounds">Putaran Enkripsi </string>
<string name="rounds_explaination">Putaran enkripsi yang lebih tinggi memberikan perlindungan tambahan terhadap serangan kasar, tetapi dapat benar-benar memperlambat membuka dan menyimpan.</string>
<string name="rounds_hint">putaran</string>
<string name="argon2memory">Memori untuk Argon 2 (byte)</string>
<string name="argon2memory">Memori untuk Argon 2 (bytes)</string>
<string name="argon2parallelism">Paralelisme untuk Argon 2</string>
<string name="database_name">Nama basis data</string>
<string name="default_username">Nama pengguna baku untuk entri baru</string>
<string name="saving_database">Menyimpan basis data</string>
<string name="exporting_database">Mengekspor basis data</string>
<string name="export_database_successful">Basis data berhasil diekspor!</string>
<string name="database_name">Nama Basis data</string>
<string name="default_username">Default nama pengguna untuk entri baru</string>
<string name="saving_database">Menyimpan basis data...</string>
<string name="exporting_database">Mengekspor basis data...</string>
<string name="export_database_successful">Database berhasil diekspor!</string>
<string name="space">Spasi</string>
<string name="search_label">Cari</string>
<string name="show_password">Tampilkan sandi</string>
<string name="show_password">Menampilkan kata sandi</string>
<string name="sort_menu">Urut berdasarkan...</string>
<string name="sort_name">Urut berdasarkan nama</string>
<string name="sort_db">Urut berdasarkan tanggal dibuat</string>
<string name="sort_moddate">Urut berdasarkan tanggal diubah</string>
<string name="sort_default">Tetap gunakan urutan bawaan</string>
<string name="sort_name">Urutkan berdasarkan nama</string>
<string name="sort_db">Urut berdasarkan tanggal pembuatan</string>
<string name="sort_moddate">Urut berdasarkan tanggal modifikasi</string>
<string name="sort_default">Menjaga urutan asal</string>
<string name="special">Spesial</string>
<string name="search_hint">Cari apa</string>
<string name="search_results">Hasil pencarian</string>
<string name="search_results">Hasil Pencarian</string>
<string name="search_in">Cari di</string>
<string name="select_other_entry">Pilih entri lain</string>
<string name="select_group_then_add">Buka grup yang diinginkan, lalu tekan \"%1$s\"!</string>
<string name="select_group_then_add">Buka grup diinginkan, kemudian tekan \"%1$s\"!</string>
<string name="insert_element_here">Masukkan di sini</string>
<string name="twofish">Twofish</string>
<string name="unsupported_db_version">Versi basis data tidak didukung.</string>
<string name="warning_read_only">Kartu sd dalam mode baca-saja. Anda tidak akan bisa menyimpan perubahan ke basis data.</string>
<string name="warning_unmounted">Kartu sd tidak disematkan pada perangkat anda. Anda tidak akan bisa memuat atau membuat basis data.</string>
<string name="unsupported_db_version">Versi database tidak didukung.</string>
<string name="warning_read_only">Kartu sd saat ini read-only. Anda tidak dapat menyimpan perubahan ke basis data Anda.</string>
<string name="warning_unmounted">Kartu sd saat ini tidak dipasang pada perangkat Anda. Anda tidak akan dapat memuat atau membuat basis data Anda.</string>
<string name="version_label">Versi</string>
<string name="version_history">Riwayat versi</string>
<string name="version_history">Riwayat Versi</string>
<string name="author">Keepass2Android dikembangkan oleh Philipp Crocoll.</string>
<string name="further_authors">Terima kasih untuk kontribusi kode oleh %1$s.</string>
<string name="designers">Terima kasih untuk kontribusi ikon dan desain tata letak oleh %1$s.</string>
<string name="credit_plugin1">Twofish Cipher Plugin untuk Keepass dikembangkan oleh Scott Greenberg dan disertakan di dalam KP2A.</string>
<string name="credit_android_filechooser">android-filechooser dikembangkan oleh Hai Bison</string>
<string name="credit_keyboard">Kibor KP2A didasarkan pada kibor Gingerbread oleh Android Open Source Project dan menggunakan kode Plugin Manager dari Hacker Keyboard oleh Klaus Weidner.</string>
<string name="further_authors">Terima kasih untuk kode kontribusi oleh %1$s.</string>
<string name="designers">Terima kasih kepada ikon dan tata letak desain kontribusi oleh %1$s.</string>
<string name="credit_plugin1">Twofish Cipher Plugin untuk Keepass dikembangkan oleh Scott Greenberg dan termasuk dalam KP2A.</string>
<string name="credit_android_filechooser">Android-filechooser dikembangkan oleh Hai Bison</string>
<string name="credit_keyboard">KP2A keyboard didasarkan pada Gingerbread keyboard oleh proyek Open Source Android dan menggunakan kode Plugin Manager dari Hacker Keyboard oleh Klaus Weidner.</string>
<string name="please_note">Harap dicatat</string>
<string name="contributors">Kontributor</string>
<string name="regular_expression">Ekspresi reguler</string>
<string name="regular_expression">Regular expression</string>
<string name="TanExpiresOnUse_summary">Tandai TAN entri kedaluwarsa saat menggunakan mereka</string>
<string name="ShowUsernameInList_title">Tampilkan nama pengguna dalam daftar</string>
<string name="ShowUsernameInList_summary">Tampilkan nama pengguna di bawah judul entri. Berguna untuk beberapa akun atau TAN.</string>
<string name="RememberRecentFiles_title">Ingat basis data</string>
<string name="RememberRecentFiles_summary">Ingat basis data yang baru dibuka dan tampilkan di layar Buka basis data.</string>
<string name="excludeExpiredEntries">Kecualikan entri kedaluwarsa</string>
<string name="search_options">Opsi</string>
<string name="caseSensitive">Sensitif huruf besar-kecil</string>
<string name="start_open_file">Buka berkas...</string>
<string name="start_create">Buat basis data baru...</string>
<string name="ShowUsernameInList_title">Tampilan nama pengguna dalam daftar</string>
<string name="ShowUsernameInList_summary">Tampilan nama pengguna di bawah judul entri. Berguna untuk beberapa account atau TANs.</string>
<string name="RememberRecentFiles_title">Ingat database</string>
<string name="RememberRecentFiles_summary">Ingat database yang baru dibuka dan tampilkan kepada mereka di layar buka database.</string>
<string name="kp2a_findUrl">Keepass2Android: Cari password</string>
<string name="excludeExpiredEntries">Mengecualikan entri kedaluwarsa</string>
<string name="search_options">Pilihan</string>
<string name="caseSensitive">Sensitif-bentuk</string>
<string name="start_open_file">Buka file...</string>
<string name="start_create">Buat database baru...</string>
<string name="start_open_url">Buka URL...</string>
<string name="start_create_import">Impor berkas ke basis data baru...</string>
<string name="start_create_import">Impor file ke database baru...</string>
<string name="enter_filename_details_url">URL lengkap harus ditentukan termasuk protokol seperti http://.</string>
<string name="enter_filename_details_create_import">Berkas yang akan diimpor akan dipilih pada langkah berikutnya.</string>
<string name="enable_quickunlock">Aktifkan BukaCepat</string>
<string name="QuickUnlock_label">Masukkan %1$d karakter terakhir dari sandi anda:</string>
<string name="QuickUnlock_label_secure">Masukkan kode BukaCepat:</string>
<string name="QuickUnlock_button">BukaCepat!</string>
<string name="QuickUnlock_lockButton">Tutup basis data</string>
<string name="QuickUnlockDefaultEnabled_title">Aktifkan BukaCepat secara baku</string>
<string name="QuickUnlockDefaultEnabled_summary">Menentukan apakah BukaCepat diaktifkan secara baku atau tidak.</string>
<string name="ViewDatabaseSecure_title">Lindungi tampilan basis data</string>
<string name="ViewDatabaseSecure_summary">Jika diaktifkan, tangkapan layar akan diblokir dan thumbnail apl tidak akan ditampilkan dalam daftar apl yang baru dibuka.</string>
<string name="QuickUnlockIconHidden_title">Sembunyikan ikon BukaCepat</string>
<string name="QuickUnlockIconHidden_summary">Fitur BukaCepat tidak bisa bekerja tanpa menampilkan ikon notifikasi. Pilih opsi ini untuk menggunakan ikon transparan.</string>
<string name="QuickUnlockIconHidden16_title">Sembunyikan ikon BukaCepat</string>
<string name="QuickUnlockIconHidden16_summary">QuickUnlock membutuhkan notifikasi untuk bekerja dengan baik. Pilih opsi ini untuk menampilkan notifikasi tanpa ikon.</string>
<string name="QuickUnlockLength_title">Panjang kunci BukaCepat</string>
<string name="QuickUnlockLength_summary">Jumlah maksimum karakter yang digunakan sebagai sandi BukaCepat.</string>
<string name="QuickUnlockHideLength_title">Sembunyikan panjang kode BukaCepat</string>
<string name="QuickUnlockHideLength_summary">Jika diaktifkan, panjang dari kode BukaCepat tidak akan ditampilkan pada layar BukaCepat.</string>
<string name="QuickUnlock_fail">BukaCepat gagal: sandi salah!</string>
<string name="BinaryDirectory_title">Direktori berkas lampiran</string>
<string name="BinaryDirectory_summary">Direktori untuk menyimpan berkas lampiran.</string>
<string name="enter_filename_details_create_import">Untuk mengimpor akan dipilih pada langkah berikutnya.</string>
<string name="enable_quickunlock">Aktifkan QuickUnlock</string>
<string name="QuickUnlock_label">Masukkan %1$d karakter terakhir kata kunci anda:</string>
<string name="QuickUnlock_button">QuickUnlock!</string>
<string name="QuickUnlock_lockButton">Tutup database</string>
<string name="QuickUnlockDefaultEnabled_title">Mengaktifkan QuickUnlock secara baku</string>
<string name="QuickUnlockDefaultEnabled_summary">Menentukan apakah QuickUnlock diaktifkan secara baku atau tidak.</string>
<string name="ViewDatabaseSecure_title">Lindungi tampilan database</string>
<string name="ViewDatabaseSecure_summary">Up.</string>
<string name="QuickUnlockIconHidden_title">Sembunyikan ikon QuickUnlock</string>
<string name="QuickUnlockIconHidden_summary">QuickUnlock sayangnya tidak bekerja tanpa menampilkan ikon pemberitahuan. Pilih opsi ini untuk menggunakan ikon transparan.</string>
<string name="QuickUnlockIconHidden16_title">Sembunyikan ikon QuickUnlock</string>
<string name="QuickUnlockIconHidden16_summary">QuickUnlock memerlukan pemberitahuan untuk bekerja dengan baik. Pilih opsi ini untuk menampilkan pemberitahuan tanpa ikon.</string>
<string name="QuickUnlockLength_title">Panjang kunci QuickUnlock</string>
<string name="QuickUnlockLength_summary">Jumlah maksimum karakter yang digunakan sebagai kata sandi QuickUnlock.</string>
<string name="QuickUnlock_fail">QuickUnlock gagal: password salah!</string>
<string name="BinaryDirectory_title">Direktori file lampiran</string>
<string name="BinaryDirectory_summary">Direktori dimana lampiran file disimpan.</string>
<string name="SaveAttachmentDialog_title">Simpan lampiran</string>
<string name="SaveAttachmentDialog_text">Silakan pilih lokasi untuk menyimpan lampiran.</string>
<string name="SaveAttachmentDialog_open">Simpan ke cache dan buka</string>
<string name="ShowAttachedImage">Tampilkan dengan penampil gambar internal</string>
<string name="SaveAttachment_doneMessage">Berkas disimpan ke %1$s.</string>
<string name="SaveAttachmentDialog_text">Silakan pilih tempat untuk menyimpan lampiran.</string>
<string name="SaveAttachmentDialog_open">Simpan di tembolok dan buka</string>
<string name="ShowAttachedImage">Tampilan dengan penampilan gambar internal</string>
<string name="SaveAttachment_doneMessage">Simpan file ke %1$s.</string>
<string name="SaveAttachment_Failed">Tidak bisa menyimpan lampiran ke %1$s.</string>
<string name="AddUrlToEntryDialog_title">Ingat teks pencarian?</string>
<string name="AddUrlToEntryDialog_text">Apakah anda ingin menyimpan teks pencarian \"%1$s\" di dalam entri yang dipilih agar nanti bisa menemukannya lagi secara otomatis?</string>
<string name="error_invalid_expiry_date">Format tanggal/waktu kedaluwarsa salah!</string>
<string name="error_string_key">Membutuhkan nama ruas untuk setiap string.</string>
<string name="error_string_duplicate_key">Nama ruas hanya bisa digunakan satu kali (%1$s).</string>
<string name="field_name">Nama Ruas</string>
<string name="field_value">Nilai ruas</string>
<string name="protection">Ruas dilindungi</string>
<string name="add_binary">Tambahkan lampiran berkas</string>
<string name="add_extra_string">Tambahkan ekstra lema</string>
<string name="delete_extra_string">Hapus ekstra lema</string>
<string name="database_loaded_quickunlock_enabled">%1$s: Terkunci. BukaCepat diaktifkan.</string>
<string name="AddUrlToEntryDialog_text">Anda ingin menyimpan teks pencarian \"%1$s\" dalam entri yang Anda pilih untuk menemukan secara otomatis di lain waktu?</string>
<string name="error_invalid_expiry_date">Format tanggal/waktu kadaluwarsa salah!</string>
<string name="error_string_key">Nama bidang diperlukan untuk setiap string.</string>
<string name="error_string_duplicate_key">Indonesia.</string>
<string name="field_name">Nama Bidang</string>
<string name="field_value">Nilai bidang</string>
<string name="protection">Bidang dilindungi</string>
<string name="add_binary">Menambahkan lampiran file...</string>
<string name="add_extra_string">Menambahkan tambahan string</string>
<string name="delete_extra_string">Menghapus tambahan string</string>
<string name="database_loaded_quickunlock_enabled">%1$s: terkunci. QuickUnlock diaktifkan.</string>
<string name="database_loaded_unlocked">%1$s: Terbuka.</string>
<string name="credentials_dialog_title">Masukkan kredensial server</string>
<string name="UseFileTransactions_title">Transaksi berkas</string>
<string name="UseFileTransactions_summary">Menggunakan transaksi berkas untuk menyimpan basis data</string>
<string name="UseFileTransactions_title">Transaksi File</string>
<string name="UseFileTransactions_summary">Menggunakan transaksi file untuk menulis database</string>
<string name="LockWhenScreenOff_title">Kunci ketika layar mati</string>
<string name="LockWhenScreenOff_summary">Kunci basis data ketika layar dimatikan.</string>
<string name="LockWhenScreenOff_summary">Kunci database ketika layar dimatikan.</string>
<string name="ClearPasswordOnLeave_title">Bersihkan masukan sandi utama</string>
<string name="ClearPasswordOnLeave_summary">Menghapus sandi utama yang dimasukkan saat meninggalkan layar tanpa membuka basis data.</string>
<string name="LockWhenNavigateBack_title">Kunci ketika meninggalkan apl</string>
<string name="LockWhenNavigateBack_summary">Mengunci basis data ketika meninggalkan apl dengan menekan tombol kembali.</string>
<string name="ActivateSearchViewOnStart_title">Aktifkan ruas pencarian saat mulai</string>
<string name="ActivateSearchViewOnStart_summary">Mengaktifkan ruas pencarian di dalam tampilan grup setelah membuka atau saat mencari entri</string>
<string name="NoDonateOption_title">Sembunyikan opsi donasi</string>
<string name="NoDonateOption_summary">Pengaturan ini adalah untuk para donatur. Tersedia setelah menggunakan Keepass2Android selama beberapa waktu.</string>
<string name="NoDonationReminder_title">Jangan pernah meminta donasi</string>
<string name="ClearPasswordOnLeave_summary">Hapus sandi utama yang dimasukkan saat meninggalkan layar tanpa membuka database.</string>
<string name="LockWhenNavigateBack_title">Kunci ketika meninggalkan app</string>
<string name="LockWhenNavigateBack_summary">Mengunci database ketika meninggalkan app dengan menekan tombol kembali.</string>
<string name="NoDonateOption_title">Sembunyikan pilihan donasi</string>
<string name="NoDonateOption_summary">Pengaturan ini adalah untuk donatur. Tersedia setelah menggunakan Keepass2Android untuk beberapa waktu.</string>
<string name="NoDonationReminder_title">Tidak pernah meminta donasi</string>
<string name="NoDonationReminder_summary">Saya tidak akan memberi sumbangan atau saya telah menyumbang. Jangan meminta donasi lagi, bahkan pada hari ulang tahun pembuat.</string>
<string name="UseOfflineCache_title">Cache basis data</string>
<string name="UseOfflineCache_title">Penyinggahan Database</string>
<string name="CreateBackups_title">Cadangan lokal</string>
<string name="CreateBackups_summary">Buat salinan cadangan lokal setelah berhasil memuat basis data.</string>
<string name="UpdatingBackup">Memperbarui cadangan lokal...</string>
<string name="LocalBackupOf">Cadangan lokal dari %1$s</string>
<string name="show_local_backups">Tampilkan cadangan lokal</string>
<string name="AcceptAllServerCertificates_title">Sertifikat SSL</string>
<string name="AcceptAllServerCertificates_summary">Menentukan perilaku ketika validasi sertifikat gagal. Catatan: anda bisa memasang sertifikat pada perangkat anda jika validasi gagal!</string>
<string name="AcceptAllServerCertificates_summary">Menentukan perilaku ketika validasi sertifikat gagal. Catatan: Anda dapat menginstal sertifikat pada perangkat Anda jika validasi gagal!</string>
<string name="ClearOfflineCache_title">Hapus cache?</string>
<string name="ClearOfflineCache_question">Ini akan menghapus semua cache berkas basis data. Perubahan yang anda buat secara lokal tanpa adanya akses ke sumber basis data dan belum disinkronisasikan akan hilang seluruhnya! Lanjutkan?</string>
<string name="CheckForFileChangesOnSave_title">Periksa perubahan</string>
<string name="CheckForFileChangesOnSave_summary">Periksa apakah berkas telah diubah secara eksternal sebelum menyimpan perubahan.</string>
<string name="CheckForFileChangesOnSave_title">Periksa modifikasi</string>
<string name="CheckForFileChangesOnSave_summary">Periksa apakah file telah diubah secara eksternal sebelum menyimpan perubahan.</string>
<string name="CheckForDuplicateUuids_title">Periksa untuk UUID ganda</string>
<string name="CheckForDuplicateUuids_summary">Periksa apakah berkas basis data rusak karena memiliki beberapa entri dengan ID yang sama. Ini dapat menyebabkan perilaku yang tidak terduga.</string>
<string name="ShowCopyToClipboardNotification_title">Notifikasi papan klip</string>
<string name="ShowCopyToClipboardNotification_summary">Buat nama pengguna dan sandi bisa diakses melalui bilah notifikasi dan papan klip. Hati-hati terhadap para pengintip sandi!</string>
<string name="ShowSeparateNotifications_title">Notifikasi terpisah</string>
<string name="ShowSeparateNotifications_summary">Tampilkan notifikasi terpisah untuk menyalin nama pengguna dan sandi ke papan klip dan mengaktifkan kibor.</string>
<string name="AccServiceAutoFill_prefs">Layanan-Aksesibilitas IsiOtomatis</string>
<string name="AutoFill_prefs">Layanan IsiOtomatis</string>
<string name="ShowKp2aKeyboardNotification_title">Notifikasi kibor KP2A</string>
<string name="ShowKp2aKeyboardNotification_summary">Membuat entri dapat diakses seluruhnya melalui kibor KP2A (disarankan).</string>
<string name="OpenKp2aKeyboardAutomatically_title">Beralih kibor</string>
<string name="OpenKp2aKeyboardAutomatically_summary">Buka dialog pemilih kibor saat entri tersedia melalui kibor KP2A setelah pencarian dari peramban.</string>
<string name="kp2a_switch_rooted">Alihkan kibor secara otomatis</string>
<string name="kp2a_switch_rooted_summary">Beralih secara otomatis ke kibor KP2A saat entri dibuka. Membutuhkan Plugin KeyboardSwap yang disiapkan dengan benar atau perangkat dengan akses root dan apl Secure Settings dengan System+. </string>
<string name="get_keyboardswap">Pasang Plugin KeyboardSwap</string>
<string name="get_keyboardswap_summary">Plugin ini memungkinkan untuk beralih ke kibor KP2A tanpa root. Membutuhkan ADB. </string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_title">Otomatis beralih hanya setelah pencarian</string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_summary">Hanya beralih secara otomatis ke kibor KP2A setelah menggunakan fungsi Bagikan URL (tetapi tidak saat membuka entri dengan cara lain)</string>
<string name="AutoSwitchBackKeyboard_title">Kembali alihkan kibor</string>
<string name="AutoSwitchBackKeyboard_summary">Kembali alihkan ke kibor sebelumnya ketika tidak ada entri yang dibuka.</string>
<string name="ShowUnlockedNotification_title">Ikon notifikasi saat dibuka</string>
<string name="ShowUnlockedNotification_summary">Tampilkan ikon notifikasi saat basis data dibuka.</string>
<string name="IconVisibilityInfo_Android8_text">Android 8 memperkenalkan perilaku baru untuk notifikasi. Jika anda ingin menyembunyikan ikon dari notifikasi Keepass2Android, silakan konfigurasikan melalui pengaturan sistem. Atur tingkat kepentingan dari kategori notifikasi ke Minimum.</string>
<string name="IconVisibilityInfo_Android8_btnSettings">Buka pengaturan</string>
<string name="DontCare">Saya tidak peduli</string>
<string name="DocumentAccessRevoked">Berkas tidak lagi bisa diakses oleh Keepass2Android. Mungkin dihapus atau izin akses telah dicabut. Silakan buka kembali basis data, mis. menggunakan Ubah basis data.</string>
<string name="PreloadDatabaseEnabled_title">Pra-muat berkas basis data</string>
<string name="PreloadDatabaseEnabled_summary">Mulai memuat atau mengunduh berkas basis data di latar belakang selama pengisian sandi.</string>
<string name="AskOverwriteBinary">Apakah anda ingin menimpa binari yang sudah ada dengan nama yang sama?</string>
<string name="AskOverwriteBinary_title">Timpa binari yang sudah ada?</string>
<string name="CheckForDuplicateUuids_summary">Periksa apakah file database korup sehingga memiliki beberapa entri dengan ID yang sama. Ini dapat menyebabkan perilaku yang tidak terduga.</string>
<string name="ShowCopyToClipboardNotification_title">Pemberitahuan Clipboard</string>
<string name="ShowCopyToClipboardNotification_summary">Buat nama pengguna dan kata sandi dapat diakses melalui bilah notifikasi dan papan klip.
Hati-hati terhadap pengintip kata sandi!</string>
<string name="ShowSeparateNotifications_title">Pemberitahuan terpisah</string>
<string name="ShowSeparateNotifications_summary">Tampilkan pemberitahuan terpisah untuk menyalin nama pengguna dan kata sandi ke papan klip dan aktifkan papan ketik.</string>
<string name="AccServiceAutoFill_prefs">Otomatis mengisi Layanan-Aksesibilitas</string>
<string name="ShowKp2aKeyboardNotification_title">KP2A pemberitahuan keyboard</string>
<string name="ShowKp2aKeyboardNotification_summary">Membuat entri dapat diakses penuh melalui keyboard KP2A (disarankan).</string>
<string name="OpenKp2aKeyboardAutomatically_title">Berpindah keyboard</string>
<string name="OpenKp2aKeyboardAutomatically_summary">Buka dialog pemilih papan ketik saat isian tersedia melalui papan ketik KP2A setelah melakukan pencarian dari browser.</string>
<string name="kp2a_switch_rooted">Ganti papan kunci otomatis</string>
<string name="kp2a_switch_rooted_summary">Ganti ke papan kunci KP2A secara otomatis ketika isian terbuka. Membutuhkan plugin KeyboardSwap yang disiapkan dengan benar atau perangkat diroot dan aplikasi Secure Settings dengan System+. </string>
<string name="get_keyboardswap">Instal plugin KeyboardSwap</string>
<string name="get_keyboardswap_summary">Plugin ini membolehkan untuk beralih ke papan ketik KP2A tanpa root. Membutuhkan ADB. </string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_title">Ganti otomatis hanya setelah pencarian</string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_summary">Ganti ke papan ketik KP2A secara otomatis hanya setelah menggunakan fungsi Bagikan URL (tetapi tidak saat membuka isian dengan cara lain)</string>
<string name="AutoSwitchBackKeyboard_title">Kembali ganti papan ketik</string>
<string name="AutoSwitchBackKeyboard_summary">Ganti kembali ke papan ketik sebelumnya ketika tidak ada isian terbuka.</string>
<string name="ShowUnlockedNotification_title">Ikon pemberitahuan ketika tidak terkunci</string>
<string name="ShowUnlockedNotification_summary">Tampilkan ikon pemberitahuan ketika database tidak terkunci.</string>
<string name="PreloadDatabaseEnabled_title">Pra-muat berkas database</string>
<string name="PreloadDatabaseEnabled_summary">Mulai memuat di latar belakang atau mengunduh berkas database selama mengisi kata sandi.</string>
<string name="AskOverwriteBinary">Apakah anda ingin menimpa biner yang sudah ada dengan nama yang sama?</string>
<string name="AskOverwriteBinary_title">Timpa biner yang sudah ada?</string>
<string name="AskOverwriteBinary_yes">Timpa</string>
<string name="AskOverwriteBinary_no">Ubah nama</string>
<string name="AskOverwriteBinary_no">Ganti nama</string>
<string name="AttachFailed">Gagal menambahkan berkas lampiran.</string>
<string name="RecycleBin">Keranjang Sampah</string>
<string name="AskDeletePermanentlyEntry">Apakah anda ingin menghapus entri ini secara permanen? Tekan Tidak untuk menghapus ke keranjang sampah.</string>
<string name="AskDeletePermanentlyGroup">Apakah anda ingin menghapus grup ini secara permanen? Tekan Tidak untuk menghapus ke keranjang sampah.</string>
<string name="AskDeletePermanentlyItems">Apakah anda ingin menghapus elemen yang dipilih secara permanen? Tekan Tidak untuk menghapus ke keranjang sampah.</string>
<string name="AskDeletePermanentlyEntryNoRecycle">Apakah anda ingin menghapus entri ini secara permanen?</string>
<string name="AskDeletePermanentlyGroupNoRecycle">Apakah anda ingin menghapus grup ini secara permanen?</string>
<string name="AskDeletePermanentlyItemsNoRecycle">Apakah anda ingin menghapus elemen yang dipilih secara permanen?</string>
<string name="AskDeletePermanently_title">Hapus secara permanen?</string>
<string name="RecycleBin">Tempat sampah</string>
<string name="AskDeletePermanentlyEntry">Apakah anda ingin menghapus isian ini selamanya? Tekan Tidak untuk daur ulang.</string>
<string name="AskDeletePermanentlyGroup">Apaah anda ingin menghapus grup ini selamanya? Tekan Tidak untuk daur ulang.</string>
<string name="AskDeletePermanentlyItems">Apakah anda ingin menghapus elemen terpilih selamanya? Tekan Tidak untuk daur ulang.</string>
<string name="AskDeletePermanentlyEntryNoRecycle">Apakah Anda ingin menghapus entri ini secara permanen?</string>
<string name="AskDeletePermanentlyGroupNoRecycle">Apakah Anda ingin menghapus kelompok ini secara permanen?</string>
<string name="AskDeletePermanentlyItemsNoRecycle">Apakah Anda ingin menghapus elemen yang dipilih secara permanen?</string>
<string name="AskDeletePermanently_title">Menghapus secara permanen?</string>
<string name="AskReloadFile_title">Buka ulang berkas?</string>
<string name="AskReloadFile">Berkas yang saat ini dibuka diubah oleh program lain. Apakah anda ingin membuka ulang berkas?</string>
<string name="AskDiscardChanges">Apakah anda ingin membuang perubahan yang dibuat? (Tombol Simpan ada dibagian atas formulir.)</string>
<string name="AskDiscardChanges_title">Batalkan perubahan?</string>
<string name="suggest_improvements">Beri saran atau dukungan fitur</string>
<string name="rate_app">Beri nilai apl ini</string>
<string name="translate_app">Terjemahkan KP2A</string>
<string name="AskReloadFile">Berkas yang saat ini terbuka diganti oleh program lain. Apakah Anda ingin membuka ulang berkas?</string>
<string name="AskDiscardChanges">Apakah Anda benar-benar ingin membuang perubahan yang dibuat? (Tombol Simpan adalah di bagian atas Form.)</string>
<string name="AskDiscardChanges_title">Batalkan Perubahan?</string>
<string name="suggest_improvements">Menyarankan atau memilih untuk perbaikan</string>
<string name="rate_app">Menilai app ini</string>
<string name="translate_app">Menerjemahkan KP2A</string>
<string name="AddingEntry">Menambahkan entri…</string>
<string name="AddingGroup">Menambahkan grup…</string>
<string name="DeletingEntry">Menghapus entri…</string>
<string name="DeletingGroup">Menghapus grup…</string>
<string name="DeletingItems">Menghapus elemen…</string>
<string name="SettingPassword">Membuat sandi…</string>
<string name="SettingPassword">Menetapkan kata kunci...</string>
<string name="UndoingChanges">Membatalkan perubahan…</string>
<string name="TransformingKey">Mengubah kunci master…</string>
<string name="DecodingDatabase">Mendekode basis data…</string>
<string name="ParsingDatabase">Mengurai basis data…</string>
<string name="CheckingTargetFileForChanges">Memeriksa berkas target untuk perubahan…</string>
<string name="TitleSyncQuestion">Gabung perubahan?</string>
<string name="MessageSyncQuestion">Berkas basis data telah diubah secara eksternal. Apakah anda ingin memuat dan menggabungkan perubahan sebelum disimpan? Pilih Tidak jika anda ingin menimpa perubahan eksternal.</string>
<string name="DecodingDatabase">Decoding database...</string>
<string name="ParsingDatabase">Parsing database...</string>
<string name="CheckingTargetFileForChanges">Memeriksa file target untuk perubahan…</string>
<string name="TitleSyncQuestion">Menggabungkan perubahan?</string>
<string name="MessageSyncQuestion">Berkas database diubah di luar aplikasi. Apakah anda ingin memuat dan menggabungkan perubahan sebelum disimpan? Pilih Tidak jika anda ingin menimpa perubahan luar.</string>
<string name="SynchronizingDatabase">Menggabungkan perubahan…</string>
<string name="YesSynchronize">Ya, gabungkan</string>
<string name="NoOverwrite">Tidak, timpa</string>
<string name="UseOnlineMode">Sinkronkan salinan cache dengan sumber</string>
<string name="UseOfflineMode_Info">Basis data dimuat dari cache internal. Perubahan hanya disimpan di dalam cache internal dan hanya akan disinkronkan ketika memilih Sinkronkan salinan cache dengan sumber.</string>
<string name="SynchronizingCachedDatabase">Menyinkronkan cache basis data…</string>
<string name="DownloadingRemoteFile">Memuat berkas sumber</string>
<string name="UploadingFile">Simpan berkas…</string>
<string name="RestoringRemoteFile">Memulihkan berkas sumber…</string>
<string name="FilesInSync">Berkas sudah sinkron.</string>
<string name="SynchronizedDatabaseSuccessfully">Basis data berhasil disinkronkan!</string>
<string name="CheckingDatabaseForChanges">Memeriksa perubahan pada basis data…</string>
<string name="CouldNotSaveToRemote">Tidak bisa menyimpan ke berkas sumber: %1$s. Simpan lagi atau gunakan menu Sinkronkan ketika berkas bisa diakses kembali.</string>
<string name="CouldNotLoadFromRemote">Tidak bisa menyimpan ke berkas sumber: %1$s. Berkas dimuat dari cache internal. Anda masih bisa membuat perubahan di dalam basis data dan menyinkronkannya nanti.</string>
<string name="UpdatedRemoteFileOnLoad">Berkas sumber diperbarui.</string>
<string name="LoadedFromRemoteInSync">Berkas sumber dan cache telah disinkronkan.</string>
<string name="UpdatedCachedFileOnLoad">Salinan cache internal diperbarui dari %1$s.</string>
<string name="SynchronizingCachedDatabase">Menyelaraskan database cache…</string>
<string name="FilesInSync">Berkas sudah selaras.</string>
<string name="SynchronizedDatabaseSuccessfully">Berkas sukses diselaraskan!</string>
<string name="CheckingDatabaseForChanges">Memeriksa perubahan pada database</string>
<string name="RemoteDatabaseUnchanged">Tidak ada perubahan terdeteksi.</string>
<string name="ResolvedCacheConflictByUsingRemoteOtpAux">Cache berkas bantu OTP diperbarui: Penghitung sumber lebih tinggi.</string>
<string name="ResolvedCacheConflictByUsingLocalOtpAux">Sumber berkas bantu OTP diperbarui: Penghitung lokal lebih tinggi.</string>
<string name="SynchronizingOtpAuxFile">Menyinkronkan berkas bantu OTP</string>
<string name="database_file">berkas basis data</string>
<string name="otp_aux_file">Berkas bantu OTP</string>
<string name="ErrorOcurred">Telah terjadi kesalahan:</string>
<string name="DuplicateUuidsError">Basis data rusak: ditemukan duplikat ID. (Apakah anda menyimpan dengan Minikeepass?) Silakan impor ulang ke basis data baru dengan Keepass 2 untuk PC dan pilih \'Buat ID baru\'.</string>
<string name="synchronize_database_menu">Sinkronkan basis data…</string>
<string name="CannotMoveGroupHere">Tidak bisa memindahkan grup ke dalam grup ini.</string>
<string name="SynchronizingOtpAuxFile">Menyelarasjan berkas auxiliary OTP…</string>
<string name="database_file">berkas database</string>
<string name="otp_aux_file">berkas auxiliary OTP</string>
<string name="ErrorOcurred">Terjadi sebuah kesalahan:</string>
<string name="DuplicateUuidsError">Database korup: ditemukan ID duplikat. (Apakah anda menyimpan dengan Minikeepass?) Mohon impor ulang ke database baru dengan Keepass 2 untuk PC dan pilih \'Create new IDs\'.</string>
<string name="synchronize_database_menu">Menyelaraskan database…</string>
<string name="CannotMoveGroupHere">Tidak bisa memindah grup ke dalam grup ini.</string>
<string name="donate_question">Hari ini adalah Oktoberfest! Jika anda menyukai Keepass2Android: bukankah hari ini hari yang baik untuk membelikan saya sebotol bir?</string>
<string name="donate_bday_question">10 Mei? Ini hari ulang tahun saya! Jika anda menyukai aplikasi ini, mengapa anda tidak mengirimkan saya ucapan ulang tahun bersamaan dengan hadiah? Ini benar-benar akan membuat saya bahagia! :-)</string>
<string name="donate_missedbday_question">Oh, anda melewatkan ulang tahun saya pada 10 Mei! Jika anda menyukai aplikasi ini, mengapa anda tidak mengirimi saya ucapan ulang tahun dan hadiah? Masih belum terlambat untuk membuat saya bahagia! :-)</string>
<string name="ok_donate">Beri tahu lebih banyak!</string>
<string name="no_thanks">Tidak, saya tidak terlalu menyukainya</string>
<string name="enter_http_login_title">Masukkan data login WebDav:</string>
<string name="hint_http_url">URL folder atau berkas (mis: mycloud.me.com/webdav/)</string>
<string name="hint_http_url">URL atau folder atau berkas (misal: mycloud.me.com/webdav/)</string>
<string name="enter_owncloud_login_title">Masukkan data login OwnCloud:</string>
<string name="hint_owncloud_url">URL OwnCloud (mis: owncloud.me.com)</string>
<string name="hint_sftp_host">hos (mis: 192.168.0.1)</string>
<string name="hint_sftp_port">porta</string>
<string name="hint_owncloud_url">URL OwnCloud (misal: owncloud.me.com)</string>
<string name="hint_sftp_host">host (misal: 192.168.0.1)</string>
<string name="hint_sftp_port">port</string>
<string name="initial_directory">Direktori awal (opsional):</string>
<string name="enter_sftp_login_title">Masukkan data login SFTP:</string>
<string name="enter_ftp_login_title">Masukkan data login FTP:</string>
<string name="select_storage_type">Pilih tipe penyimpanan:</string>
<string name="filestoragename_file">Berkas lokal</string>
<string name="filestoragename_androidget">Ambil dari apl pihak ketiga</string>
<string name="filestoragename_androidsend">Kirim ke apl pihak ketiga</string>
<string name="filestoragename_androidget">Ambil dari aplikasi pihak ketiga</string>
<string name="filestoragename_androidsend">Kirim ke aplikasi pihk ketiga</string>
<string name="filestoragename_ftp">FTP</string>
<string name="filestoragename_http">HTTP (WebDav)</string>
<string name="filestoragename_https">HTTPS (WebDav)</string>
<string name="filestoragename_owncloud">OwnCloud</string>
<string name="filestoragename_dropbox">Dropbox</string>
<string name="filestoragename_dropboxKP2A">Dropbox (folder KP2A)</string>
<string name="filestoragename_gdrive">Google Drive</string>
<string name="filestoragename_gdrive">Penyimpanan Google</string>
<string name="filestoragename_onedrive">OneDrive</string>
<string name="filestoragename_onedrive2">OneDrive</string>
<string name="filestoragename_sftp">SFTP (Transfer Berkas SSH)</string>
<string name="filestoragename_content">Pemilih berkas sistem</string>
<string name="filestorage_setup_title">Inisialisasi akses berkas</string>
<string name="filestoragename_sftp">TFS (Transfer File SSH)</string>
<string name="filestoragename_content">Pemilih file sistem</string>
<string name="filestorage_setup_title">Inisialisasi akses file</string>
<string name="database_location">Lokasi basis data</string>
<string name="help_database_location">Anda bisa menyimpan basis data anda secara lokal pada perangkat Android anda atau di dalam cloud (versi non-Offline saja). Keepass2Android membuat basis data tersedia bahkan ketika anda sedang offline. Karena basis data di enkripsi mengunakan enkripsi AES 256, tidak ada siapapun yang bisa mengakses sandi anda kecuali anda sendiri. Kami rekomendasikan untuk memilih Dropbox: bisa diakses dari perangkat anda dan menyediakan versi cadangan dari berkas sebelumnya.</string>
<string name="hint_database_location">Pilih di mana anda ingin menyimpan basis data:</string>
<string name="button_change_location">Ubah lokasi</string>
<string name="help_quickunlock">Jika diaktifkan, Keepass2Android akan tetap berjalan di belakang layar bahkan ketika basis data terkunci. Memungkinkan anda membuka basis data lagi nanti hanya dengan menggunakan sebagian karakter dari sandi utama.</string>
<string name="master_password">Sandi master</string>
<string name="help_master_password">Basis data anda dienkripsi dengan sandi yang anda masukkan di sini. Pilih sandi yang kuat agar basis data tetap aman! Tip: Buat satu atau dua kalimat dan gunakan huruf pertama dari setiap kata sebagai sandi. Termasuk tanda baca.</string>
<string name="hint_master_password">Pilih sandi master untuk melindungi basis data anda:</string>
<string name="help_database_location">Anda bisa menyimpan basis data anda secara lokal pada perangkat Android anda atau di dalam cloud (versi non-Offline saja). Keepass2Android membuat basis data tersedia bahkan ketika anda sedang offline. semenjak basis data di enkripsi mengunakan enkripsi AES 256, tidak ada siapapun yang bisa mengakses password anda kecuali anda. kami merekomendasikan anda memilih Dropbox: karena Dropbox bisa diakses menggunakan semua perangkan anda dan bahkan menyediakan cadangan dari versi file sebelumnya.</string>
<string name="hint_database_location">Pilih dimana anda ingin menyimpan basis data:</string>
<string name="button_change_location">Rubah lokasi</string>
<string name="help_quickunlock">Jika diaktifkan, Keepass2Android akan tetap berjalan di belakang layar bahkan ketika basis data terkunci. hal ini memungkinkan pembukaan basis data nanti hanya menggunakan bagian pendek dari password utama.</string>
<string name="master_password">Password utama</string>
<string name="help_master_password">Database anda dienkripsi dengan password yang anda masukkan disini. pilih sebuah pasword yang kuat untuk menjaga Database tetap aman! Tip: memuat naik sebuah atau dua buah kalimat dan gunakan huruf pertama dari kata-kata sebagai kata sandi. Sertakan tanda baca.</string>
<string name="hint_master_password">Pilih kata sandi utama untuk melindungi database Anda:</string>
<string name="key_file">Berkas kunci</string>
<string name="hint_key_file">Pilih apakah anda ingin menggunakan berkas kunci sebagai tambahan sandi master anda:</string>
<string name="hint_key_file">Pilih apakah Anda ingin menggunakan berkas kunci selain kata sandi utama Anda:</string>
<string name="use_key_file">Gunakan berkas kunci</string>
<string name="error_adding_keyfile">Terjadi kesalahan saat menambahkan berkas kunci!</string>
<string name="init_otp">Muat berkas bantu OTP…</string>
<string name="otp_hint">OTP %1$d</string>
<string name="CouldntLoadOtpAuxFile">Tidak bisa memuat berkas bantu OTP!</string>
<string name="CouldntLoadOtpAuxFile_Hint">Silakan gunakan plugin OtpKeyProv di KeePass 2.x (PC) untuk mengkonfigurasi basis data anda untuk digunakan dengan OTP!</string>
<string name="otp_discarded_because_no_db">Silakan pilih basis data terlebih dahulu. OTP dibuang untuk alasan keamanan.</string>
<string name="otp_discarded_no_space">OTP dibuang: Semua OTP sudah dimasukkan!</string>
<string name="otp_discarded_because_db_open">Silakan tutup basis data terlebih dahulu. OTP dibuang.</string>
<string name="error_adding_keyfile">Kesalahan saat menambahkan berkas kunci!</string>
<string name="init_otp">Memuat berkas bantu OTP…</string>
<string name="otp_hint">OTP%1$d</string>
<string name="CouldntLoadOtpAuxFile">Tidak bisa memuat file OTP tambahan!</string>
<string name="CouldntLoadOtpAuxFile_Hint">Silakan gunakan plugin OtpKeyProv di KeePass 2.x (PC) untuk mengkonfigurasi database Anda untuk digunakan dengan OTPs!</string>
<string name="otp_discarded_because_no_db">Silahkan pilih database dulu. OTP dibuang karena alasan keamanan.</string>
<string name="otp_discarded_no_space">OTP discarded: All OTPs already entered!</string>
<string name="otp_discarded_because_db_open">Silahkan tutup database dulu. OTP dibuang.</string>
<string name="otps_pending">(Satu atau beberapa OTP sudah tersedia)</string>
<string name="otpsecret_hint">Rahasia OTP (mis. 01 23 ab cd)</string>
<string name="otpsecret_hint">Rahasia OTP (misal 01 23 ab cd...)</string>
<string name="CouldntParseOtpSecret">Kesalahan mengurai rahasia OTP!</string>
<string name="OtpKeyError">Gagal membuat kunci OTP! Pastikan anda telah memasukkan OTP yang benar.</string>
<string name="ErrorUpdatingOtpAuxFile">Kesalahan memperbarui berkas bantu OTP!</string>
<string name="SavingOtpAuxFile">Menyimpan berkas bantu OTP</string>
<string name="NoChallengeApp">Tidak ada apl yang bisa memproses challenge.</string>
<string name="PleaseInstallApp">Silakan pasang %1$s dari Google Play.</string>
<string name="AppOutdated">%1$s tidak lagi didukung.</string>
<string name="bad_resp">Respons challenge salah.</string>
<string name="CouldntLoadChalAuxFile">Tidak bisa memuat berkas bantu challenge!</string>
<string name="CouldntLoadChalAuxFile_Hint">Silakan gunakan plugin KeeChallenge di KeePass 2.x (PC) untuk mengkonfigurasi basis data anda untuk digunakan dengan respon-challenge!</string>
<string name="ErrorUpdatingChalAuxFile">Kesalahan memperbarui berkas bantu OTP!</string>
<string name="TrayTotp_SeedField_title">Nama ruas TOTP Seed</string>
<string name="TrayTotp_SeedField_summary">Jika anda menggunakan plugin Keepass 2 \"TrayTotp\" dengan pengaturan non-standar, masukkan nama ruas untuk ruas seed di sini sesuai dengan pengaturan pada PC.</string>
<string name="TrayTotp_SettingsField_title">Nama ruas Pengaturan TOTP</string>
<string name="TrayTotp_SettingsField_summary">Masukkan nama ruas dari ruas pengaturan untuk TrayTotp di sini.</string>
<string name="OtpKeyError">Gagal membuat kunci OTP! Pastikan Anda telah memasukkan OTPs yang benar.</string>
<string name="ErrorUpdatingOtpAuxFile">Kesalahan memperbarui file bantu OTP!</string>
<string name="SavingOtpAuxFile">Menyimpan file OTP tambahan</string>
<string name="bad_resp">Respons tantangannya salah.</string>
<string name="CouldntLoadChalAuxFile">Tidak dapat memuat berkas tantangan tambahan!</string>
<string name="CouldntLoadChalAuxFile_Hint">Silakan gunakan plugin KeeChallenge di KeePass 2.x (PC) untuk mengkonfigurasi database Anda untuk digunakan dengan respon tantangan!</string>
<string name="ErrorUpdatingChalAuxFile">Kesalahan memperbarui file bantu OTP!</string>
<string name="TrayTotp_SeedField_title">Nama bidang benih TOTP</string>
<string name="TrayTotp_SeedField_summary">Jika Anda menggunakan plugin Keepass 2 \"TrayTotp\" dengan pengaturan non-standar, masukkan nama berkas untuk bidang benih di sini sesuai dengan pengaturan pada PC.</string>
<string name="TrayTotp_SettingsField_title">Nama bidang TOTP pengaturan</string>
<string name="TrayTotp_SettingsField_summary">Masukkan nama bidang bidang pengaturan untuk TrayTotp di sini.</string>
<string name="TrayTotp_prefs">TrayTotp</string>
<string name="DebugLog_prefs_prefs">Berkas-Log untuk Debugging</string>
<string name="DebugLog_prefs_prefs">Log-File untuk Debugging</string>
<string name="DebugLog_title">Gunakan berkas log</string>
<string name="DebugLog_summary">Simpan keluaran apl ke berkas log lokal</string>
<string name="DebugLog_summary">Tuliskan hasil aplikasi ke berkas log lokal</string>
<string name="DebugLog_send">Kirim log debug...</string>
<string name="loading">Memuat…</string>
<string name="plugins">Plug-ins</string>
<string name="plugin_packagename">Nama paket:</string>
<string name="plugin_description">Deskripsi (tidak diverifikasi):</string>
<string name="plugin_author">Pengembang (tidak diverifikasi):</string>
<string name="plugin_author">Penulis (tidak diverifikasi):</string>
<string name="plugin_enabled">diaktifkan</string>
<string name="plugin_disabled">dinonaktifkan</string>
<string name="plugin_web">Cari plug-in secara daring</string>
<string name="plugin_scopes">Skop</string>
<string name="not_enabled">tidak diaktifkan</string>
<string name="query_credentials_for_url">%1$s meminta kredensial untuk %2$s.</string>
<string name="query_credentials">%1$s meminta kredensial. Silakan pilih sebuah entri.</string>
<string name="plugin_disabled">cacat</string>
<string name="plugin_web">Temukan plug-in secara online</string>
<string name="plugin_scopes">Lingkaran</string>
<string name="query_credentials_for_url">%1$s meminta kredensial sebesar %2$s.</string>
<string name="query_credentials">%1$s meminta kredensial. Silahkan pilih sebuah entri.</string>
<string name="plugin_enabled_checkbox">Diaktifkan</string>
<string name="SCOPE_DATABASE_ACTIONS_title">Notifikasi tindakan basis data</string>
<string name="SCOPE_DATABASE_ACTIONS_explanation">Plugin akan diberitahu saat basis data dibuka, ditutup atau disimpan.</string>
<string name="SCOPE_DATABASE_ACTIONS_title">Notifikasi tindakan database</string>
<string name="SCOPE_DATABASE_ACTIONS_explanation">Plugin akan diberitahu saat database dibuka, ditutup atau disimpan.</string>
<string name="SCOPE_CURRENT_ENTRY_title">Data entri saat ini</string>
<string name="SCOPE_CURRENT_ENTRY_explanation">Plugin akan menerima semua data tentang entri basis data saat ini dan akan diizinkan untuk menawarkan tindakan dan mengubah tampilannya.</string>
<string name="SCOPE_QUERY_CREDENTIALS_FOR_OWN_PACKAGE_title">Kueri kredensial milik sendiri</string>
<string name="SCOPE_QUERY_CREDENTIALS_title">Kueri kredensial</string>
<string name="SCOPE_CURRENT_ENTRY_explanation">Plugin akan menerima semua data tentang entri database saat ini dan akan diizinkan untuk menawarkan tindakan dan memodifikasi tampilan itu.</string>
<string name="SCOPE_QUERY_CREDENTIALS_FOR_OWN_PACKAGE_title">Permintaan kredensial sendiri</string>
<string name="SCOPE_QUERY_CREDENTIALS_title">Kredensial permintaan</string>
<string name="get_regular_version">Dapatkan lebih banyak jenis penyimpanan</string>
<string name="CertificateWarning">Peringatan: Validasi sertifikat server gagal: %1$s. Pasang sertifikat root yang sesuai pada perangkat anda atau lihat pengaturan!</string>
<string name="CertificateFailure">Kesalahan: Validasi sertifikat server gagal! pasang sertifikat root yang sesuai pada perangkat anda atau lihat pengaturan!</string>
<string name="CertificateWarning">Peringatan: validasi sertifikat server gagal:%1$s. Instal sertifikat root yang sesuai pada perangkat Anda atau lihat pengaturan!</string>
<string name="CertificateFailure">Kesalahan: validasi sertifikat server gagal! Instal sertifikat root yang sesuai pada perangkat Anda atau lihat pengaturan!</string>
<string name="export_fileformats_title">Pilih format berkas</string>
<string name="killed_by_os">Maaf! Keepass2Android ditutup oleh OS Android! Untuk alasan keamanan, Keepass2Android tidak mempertahankan kredensial pilihan anda pada diska, jadi anda perlu membuka kembali basis data anda. Catatan: Hal ini seharusnya sangat jarang terjadi. Jika iya, silakan kirim pesan di crocoapps@gmail.com.</string>
<string name="FileIsTemporarilyAvailable">Berkas ini hanya tersedia secara sementara untuk Keepass2Android.</string>
<string name="FileIsReadOnly">Berkas yang anda pilih hanya-baca.</string>
<string name="FileIsReadOnlyOnKitkat">Berkas yang anda pilih memiliki akses hanya-baca untuk Keepass2Android karena keterbatasan Android 4.4+.</string>
<string name="CopyFileRequired">Untuk menggunakannya, anda harus menyalinnya ke lokasi lain.</string>
<string name="CopyFileRequiredForEditing">Untuk menyuntingnya, anda harus menyalin berkas ke lokasi lain.</string>
<string name="FileReadOnlyTitle">Basis data hanya-baca</string>
<string name="FileReadOnlyMessagePre">Keepass2Android telah membuka basis data saat ini dalam mode hanya-baca.</string>
<string name="killed_by_os">Maaf! Keepass2Android mati oleh OS Android! Untuk alasan keamanan, Keepass2Android tidak mempertahankan kredensial pilihan Anda pada disk, jadi Anda perlu membuka kembali database Anda. Catatan: Hal ini harus terjadi sangat jarang. Jika ya, tolong kirimi saya pesan di crocoapps@gmail.com.</string>
<string name="FileIsTemporarilyAvailable">File ini hanya sementara tersedia untuk Keepass2Android.</string>
<string name="FileIsReadOnly">Berkas yang Anda pilih hanya bisa dibaca.</string>
<string name="FileIsReadOnlyOnKitkat">Berkas yang Anda pilih hanya bisa dibaca untuk Keepass2Android karena pembatasan pada Android 4.4+.</string>
<string name="CopyFileRequired">Untuk menggunakannya, Anda harus menyalinnya ke lokasi lain.</string>
<string name="CopyFileRequiredForEditing">Untuk mengeditnya, Anda harus menyalin berkas ke lokasi lain.</string>
<string name="FileReadOnlyTitle">Database hanya bisa dibaca</string>
<string name="FileReadOnlyMessagePre">Keepass2Android telah membuka database saat ini dalam mode read-only.</string>
<string name="ReadOnlyReason_PreKitKat">Sepertinya Anda membuka file dari aplikasi eksternal. Dengan cara ini tidak mendukung penulisan. Jika Anda ingin membuat perubahan pada database, tutup database dan pilih Change database. Kemudian buka file dari salah satu pilihan yang tersedia jika memungkinkan.</string>
<string name="ReadOnlyReason_ReadOnlyFlag">Flag read-only diset. Hapus bendera ini jika ingin melakukan perubahan pada database.</string>
<string name="ReadOnlyReason_ReadOnlyKitKat">Menulis tidak mungkin karena pembatasan diperkenalkan di Android KitKat. Jika Anda ingin membuat perubahan pada database, tutup database dan pilih Change database. Kemudian buka file tersebut menggunakan System File Picker.</string>
@@ -522,7 +506,8 @@
<string name="Continue">Terus</string>
<string name="NoFilenameWarning">URI yang Anda masukkan tidak terlihat seperti nama berkas. Apakah Anda yakin ini adalah berkas yang valid?</string>
<string name="FirstInvalidCompositeKeyError">Kunci komposit tidak lengkap Silahkan coba lagi.</string>
<string name="DbQuicklockedChannel_name">BukaCepat</string>
<string name="DbQuicklockedChannel_name">QuickUnlock</string>
<string name="ShowKeyboardDuringFingerprintAuth">Tampilkan soft keyboard untuk input kata sandi saat pemindaian sidik jari aktif.</string>
<string name="ChangeLog_1_03">Versi 1.03\n
    * Layanan aksesibilitas yang telah dihapus untuk IsiOtomatis sesuai permintaan Google. Silakan lihat pengaturan akses kata sandi untuk menemukan plugin yang mereplikasi fungsi sebelumnya.\n
    * Menambahkan aplikasi pihak ketiga sebagai opsi penyimpanan lagi\n
@@ -756,7 +741,7 @@ Rilis publik awal </string>
<item>Password + Key file + Challenge-Response for Keepass XC</item>
</string-array>
<string-array name="sftp_auth_modes">
<item>Sandi</item>
<item>Kata kunci</item>
<item>Private/Public key</item>
</string-array>
<string-array name="AcceptAllServerCertificates_options">

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Commenti</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">Gestione file</string>
<string name="keyboard_prefs">Tastiera</string>
<string name="export_prefs">Esporta il database...</string>
<string name="fingerprint_prefs">Sblocco biometrico</string>
<string name="fingerprint_prefs">Sblocco con Impronta</string>
<string name="import_db_prefs">Importa database in cartella interna</string>
<string name="import_keyfile_prefs">Importa file chiave in cartella interna</string>
<string name="keyboardswitch_prefs">Cambio tastiera</string>
@@ -81,24 +82,26 @@
<string name="disclaimer_formal">Keepass2Android viene distribuito ASSOLUTAMENTE SENZA ALCUNA GARANZIA; Si tratta di software libero e sei invitato a distribuirlo sotto le condizioni della licenza GPL versione 2 o superiore.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Copia negli appunti</string>
<string name="fingerprint_description">Autenticati per continuare</string>
<string name="fingerprint_fatal">Non posso impostare lo Sblocco Biometrico:</string>
<string name="fingerprint_not_recognized">Autenticazione biometrica non riuscita. Riprova</string>
<string name="fingerprint_success">Autenticazione biometrica riuscita</string>
<string name="fingerprint_os_error">Lo Sblocco Biometrico richiede Android 6.0 o successivo.</string>
<string name="fingerprint_hardware_error">Nessun hardware biometrico rilevato.</string>
<string name="fingerprint_no_enrolled">Non hai configurato l\'autenticazione biometrica su questo dispositivo. Per prima cosa vai nelle impostazioni di sistema.</string>
<string name="disable_fingerprint_unlock">Disabilita lo Sblocco Biometrico</string>
<string name="enable_fingerprint_unlock">Abilita lo Sblocco Biometrico completo</string>
<string name="enable_fingerprint_quickunlock">Abilita lo Sblocco Biometrico per QuickUnlock</string>
<string name="fingerprint_unlock_failed">Sblocco con impronta fallito. La chiave di decrittazione è stata invalidata dal sistema. Di solito accade quando l\'autenticazione biometrica o le impostazioni di sicurezza sono state cambiate. </string>
<string name="fingerprint_disabled_wrong_masterkey">Lo sblocco del database è fallito: chiave composita non valida. Lo sblocco biometrico è stato disabilitato perché sembra che la chiave principale non sia più valida. </string>
<string name="fingerprint_reenable">Per favore riattiva lo Sblocco Biometrico per la nuova password principale.</string>
<string name="fingerprint_reenable2">Sblocca il database con la tua password e abilita di nuovo lo Sblocco Biometrico nelle impostazioni del database.</string>
<string name="FingerprintInitFailed">Impossibile inizializzare l\'autenticazione biometrica. </string>
<string name="fingerprint_hint">Sensore di tocco</string>
<string name="fingerprint_description">Conferma l\'impronta per continuare</string>
<string name="fingerprint_fatal">Non posso impostare lo sblocco con Impronta:</string>
<string name="fingerprint_not_recognized">Impronta digitale non riconosciuta. Riprova</string>
<string name="fingerprint_success">Impronta riconosciuta</string>
<string name="fingerprint_os_error">Lo Sblocco con Impronta digitale richiede Android 6.0 o versione successiva.</string>
<string name="fingerprint_hardware_error">Nessun lettore di impronta digitale rilevato.</string>
<string name="fingerprint_no_enrolled">Non hai nessuna impronta digitale registrata su questo dispositivo. Per prima cosa vai nelle impostazioni di sistema.</string>
<string name="disable_fingerprint_unlock">Disabilita lo Sblocco con Impronta</string>
<string name="enable_fingerprint_unlock">Abilita lo Sblocco totale con Impronta</string>
<string name="enable_fingerprint_quickunlock">Abilita lo sblocco con Impronta per QuickUnlock</string>
<string name="fingerprint_unlock_hint">Tocca il sensore per sbloccare il database</string>
<string name="fingerprint_unlock_failed">Sblocco con impronta fallito. La chiave di decrittazione è stata invalidata dal sistema. Di solito accade quando viene registrata una nuova impronta o le impostazioni di sicurezza sono state cambiate. </string>
<string name="fingerprint_disabled_wrong_masterkey">Lo sblocco del database è fallito: chiave composita non valida. Lo sblocco con impronta è stato disabilitato perché sembra che la chiave principale non sia più valida. </string>
<string name="fingerprint_reenable">Per favore riattiva lo Sblocco con Impronta per la nuova password principale.</string>
<string name="fingerprint_reenable2">Sblocca il database con la tua password e abilita di nuovo lo sblocco con Impronta nelle impostazioni del database.</string>
<string name="FingerprintInitFailed">Impossibile inizializzare il sensore di impronte. </string>
<string name="FingerprintSetupFailed">Impossibile crittografare i dati. Questo può accadere se si aggiungono o rimuovono impronte digitali nelle impostazioni di sistema mentre Keepass2Android è in attesa della tua impronta digitale.</string>
<string name="enable_fingerprint_unlock_Info">Questo memorizzerà la password principale su questo dispositivo, cifrata con il Keystore Android e protetta tramite autenticazione biometrica. Permette di sbloccare il database utilizzando solo la biometria.</string>
<string name="enable_fingerprint_quickunlock_Info">Permette di utilizzare l\'autenticazione biometrica anziché il codice di QuickUnlock. Non memorizza alcuna informazione relativa alla tua password principale.</string>
<string name="enable_fingerprint_unlock_Info">Questo memorizzerà la password principale su questo dispositivo, cifrata con il Keystore Android e protetta tramite autenticazione con impronta digitale. Permette di sbloccare il database solo con l\'impronta digitale. </string>
<string name="enable_fingerprint_quickunlock_Info">Permette di utilizzare l\'autenticazione tramite impronta digitale anziché il codice di QuickUnlock. Non necessita di memorizzare alcuna informazione relativa alla tua password principale.</string>
<string name="enter_filename">Inserisci il nome del file del database</string>
<string name="entry_accessed">Ultimo accesso</string>
<string name="entry_cancel">Annulla</string>
@@ -266,7 +269,7 @@
<string name="ShowUsernameInList_summary">Visualizza il nome utente sotto i titoli delle voci. Utile per account multipli o TAN multipli.</string>
<string name="RememberRecentFiles_title">Ricorda i database</string>
<string name="RememberRecentFiles_summary">Ricorda i database aperti di recente e visualizzali nella schermata Apri database.</string>
<string name="kp2a_findUrl">Trova password</string>
<string name="kp2a_findUrl">Keepass2Android: Trova una password</string>
<string name="excludeExpiredEntries">Escludi voci scadute</string>
<string name="search_options">Opzioni</string>
<string name="caseSensitive">Maiuscole e minuscole</string>
@@ -628,13 +631,7 @@ Ecco alcuni suggerimenti che ti potrebbero aiutare a diagnosticare il problema:\
<string name="DbQuicklockedChannel_desc">Notifica del blocco del database con QuickUnlock</string>
<string name="EntryChannel_name">Notifiche della voce</string>
<string name="EntryChannel_desc">Notifica per semplificare l\'accesso alla voce attualmente selezionata.</string>
<string name="CloseDbAfterFailedAttempts">Chiudi il database dopo tre tentativi di sblocco biometrici falliti.</string>
<string-array name="ChangeLog_1_08">
<item>Aggiungi un pulsante di notifica per la copia di TOTP negli appunti</item>
<item>Passato all\'utilizzo di FluentFTP per fornire supporto a TLS 1.2</item>
<item>Passa alle API di BiometricPrompt per migliorare l\'esperienza utente con lo sblocco con impronta e consentire di utilizzare lo sblocco con il volto, ad esempio su Pixel 4.</item>
<item>Correzioni di bug</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">Visualizza la Soft-Keyboard per inserire la password quando la scansione dell\'impronta è attiva.</string>
<string name="ChangeLog_1_07b"> Versione 1.07b\n
* Migliorata la performance di Argon2 usando l\'implementazione nativa (Grazie a Chih-Hsuan Yen!)\n
* Consentita la disabilitazione dell\'impronta digitale cliccando sull\'icona dell\'impronta (evita problemi con i lettori d\'impronte sottoschermo, grazie a marcoDallas!)\n
@@ -962,16 +959,16 @@ Prima release pubblica
<string name="autofill_disable">Disattiva Compilazione automatica per %1$s</string>
<string name="autofill_enable_for">Attiva Compilazione automatica per %1$s</string>
<string name="invalid_link_association">Non è possibile associare il dominio web %1$s con l\'app %2$s</string>
<string name="enable_fingerprint_hint">Keepass2Android ha rilevato l\'hardware biometrico. Desideri attivare lo sblocco biometrico per questo database?</string>
<string name="enable_fingerprint_hint">Keepass2Android ha rilevato un lettore di impronte digitali. Desideri attivare lo sblocco con impronta digitale per questo database?</string>
<string name="understand">Ho capito</string>
<string name="dont_show_again">Non mostrare più</string>
<string name="masterkey_infotext_head">Ricordi la tua password principale?</string>
<string name="masterkey_infotext_main">Nota che senza la password principale non sarai in grado di aprire il database. Non c\'è nessun modo di \"ripristinare\" la password principale.</string>
<string name="masterkey_infotext_fingerprint_note">Nota inoltre che lo Sblocco Biometrico funziona memorizzando la tua password principale nella memoria sicura di Android. Questa memoria può essere eliminata da Android in qualsiasi momento, ad esempio se aggiungi una nuova impronta nelle impostazioni del sistema. Quindi non fare affidamento sullo Sblocco Biometrico, ma ricordati la password principale, per favore!</string>
<string name="masterkey_infotext_fingerprint_note">Nota inoltre che lo sblocco mediante impronte digitali funziona memorizzando la tua password principale nella memoria sicura di Android. Questa memoria può essere eliminata da Android in qualsiasi momento, ad esempio se aggiungi una nuova impronta nelle impostazioni del sistema. Quindi non fare affidamento sulla tua impronta digitale, ma ricordati la password principale, per favore!</string>
<string name="backup_infotext_head">Esiste un backup del tuo database?</string>
<string name="backup_infotext_main">Keepass2Android memorizza le password in un file in una posizione di tua scelta. Sei sicuro di poter accedere a questo file anche quando il telefono viene perso o rubato, o quando il file viene distrutto o cancellato? Assicurati di avere sempre un backup aggiornato in un luogo sicuro!</string>
<string name="backup_infotext_note">Per creare un backup ora, vai a %1$s &gt; %2$s &gt; %3$s.</string>
<string name="emergency_infotext_head">Sei preparato per i casi d\'emergenza?</string>
<string name="emergency_infotext_main">Hai mai pensato cosa succederebbe se tu non fosti più in grado di accedere al database delle tue password? Cosa succederebbe se hai un incidente? È buona norma passare la password principale a qualche persona di fiducia per casi di emergenza. Altrimenti nessuno potrà accedere alle tue password.</string>
<string name="no_secure_display">Il display corrente non è contrassegnato come sicuro. Questo significa che degli screenshot potrebbero essere presi da altre applicazioni. Keepass2Android è configurato per visualizzare le informazioni sensibili solo su display sicuri. Si prega di passare ad un display sicuro (ad esempio scollegando un monitor HDMI) oppure di modificare le impostazioni dell\'app.</string>
<string name="no_secure_display">Il display corrente non è contrassegnato come sicuro. Questo significa degli screenshot potrebbero essere presi da altre applicazioni. Keepass2Android è configurato visualizzare le informazioni sensibili solo su display sicuro. Si prega di cambiare ad un display sicuro (ad esempio scollegando un monitor HDMI) oppure modificare le impostazioni dell\'app.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">フィードバック</string>
@@ -47,7 +48,7 @@
<string name="FileHandling_prefs">ファイル操作</string>
<string name="keyboard_prefs">キーボード</string>
<string name="export_prefs">データベースのエクスポート...</string>
<string name="fingerprint_prefs">生体認証ロック解除</string>
<string name="fingerprint_prefs">指紋認証によるロック解除</string>
<string name="import_db_prefs">データベースを内部のフォルダへインポート</string>
<string name="import_keyfile_prefs">キーファイルを内部のフォルダへインポート</string>
<string name="keyboardswitch_prefs">キーボードの切り替え</string>
@@ -81,24 +82,26 @@
<string name="disclaimer_formal">Keepass2Android によって作られたフリーソフトウェアであり、無保証です。GPLバージョン2以上の条件下でこれを再頒布することができます。</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">クリップボードにコピー</string>
<string name="fingerprint_description">続行するには認証してください</string>
<string name="fingerprint_fatal">生体認証によるロック解除を設定できません:</string>
<string name="fingerprint_not_recognized">生体認証に失敗しました。もう一度やり直してください</string>
<string name="fingerprint_success">生体認証に成功しました</string>
<string name="fingerprint_os_error">生体認証によるロック解除には、Android 6.0 以降が必要です。</string>
<string name="fingerprint_hardware_error">生体認証のハードウェアがありません。</string>
<string name="fingerprint_no_enrolled">このデバイスで生体認証が設定されていません。最初にシステムの設定で登録してください。</string>
<string name="disable_fingerprint_unlock">生体認証ロック解除を無効にする</string>
<string name="enable_fingerprint_unlock">すべての生体認証ロック解除を効にする</string>
<string name="enable_fingerprint_quickunlock">生体認証によるクイック解除を有効にする</string>
<string name="fingerprint_unlock_failed">生体認証のロック解除に失敗しました。Android OS によって復号鍵が無効にされました。これは通常、生体認証、またはセキュリティ設定が変更された場合に発生します。 </string>
<string name="fingerprint_disabled_wrong_masterkey">データベースのロック解除に失敗しました: 無効な複合鍵です。保存されたマスターパスワードが無効になったため、生体認証のロック解除が無効にされました。 </string>
<string name="fingerprint_reenable">新しいマスターパスワードの生体認証によるロック解除を再度有効にしてください。</string>
<string name="fingerprint_reenable2">パスワードでロックを解除して、データベースの設定でもう一度生体認証のロック解除を有効にしてください。</string>
<string name="FingerprintInitFailed">生体認証の初期化に失敗しました。 </string>
<string name="fingerprint_hint">タッチセンサー</string>
<string name="fingerprint_description">続行するには指紋を確認してください</string>
<string name="fingerprint_fatal">指紋認証によるロック解除を設定できません:</string>
<string name="fingerprint_not_recognized">指紋が認識できませんでした。もう一度やり直してください</string>
<string name="fingerprint_success">指紋が認識されました</string>
<string name="fingerprint_os_error">指紋認証によるロック解除には、Android 6.0 以降が必要です</string>
<string name="fingerprint_hardware_error">指紋認証のためのハードウェアがありません</string>
<string name="fingerprint_no_enrolled">このデバイスに指紋が登録されていません。最初にシステムの設定で登録してください</string>
<string name="disable_fingerprint_unlock">指紋認証によるロック解除を効にする</string>
<string name="enable_fingerprint_unlock">指紋認証によるデータベースのロック解除を有効にする</string>
<string name="enable_fingerprint_quickunlock">指紋認証によるクイック解除を有効にする</string>
<string name="fingerprint_unlock_hint">ロック解除のためにセンターにタッチしてください</string>
<string name="fingerprint_unlock_failed">指紋認証のロック解除に失敗しました。Android OS によって復号鍵が無効にされました。これは通常、新しい指紋の登録、またはセキュリティ設定が変更された場合に発生します。 </string>
<string name="fingerprint_disabled_wrong_masterkey">データベースのロックに失敗しました: 無効な複合鍵です。マスターパスワードが無効になったため、指紋認証のロック解除が無効にされたようです。 </string>
<string name="fingerprint_reenable">新しいパスワードのための指紋認証によるロック解除を再度有効にしてください。</string>
<string name="fingerprint_reenable2">パスワードでロックを解除して、データベースの設定でもう一度指紋認証のロック解除を有効にしてください。</string>
<string name="FingerprintInitFailed">指紋センサーの初期化に失敗しました。 </string>
<string name="FingerprintSetupFailed">データの暗号化に失敗しました。これは Keepass2Android が指紋を確認している間、システム設定で指紋を追加または削除した場合に発生することがあります。</string>
<string name="enable_fingerprint_unlock_Info">マスターパスワードを Android キーストアで暗号化した状態でこの端末に保存し、生体認証で保護します。生体認証のみで、データベースのロックを解除できるようになります</string>
<string name="enable_fingerprint_quickunlock_Info">クイック解除のコードのかわりに生体認証を利用するようにします。マスターパスワードに関連する情報格納ません。</string>
<string name="enable_fingerprint_unlock_Info">マスターパスワードを Android キーストアで暗号化した状態で端末に保存し、指紋認証で保護します。指紋認証のみで、データベースのロックを解除できるようになります</string>
<string name="enable_fingerprint_quickunlock_Info">クイック解除のコードのかわりに指紋認証を利用するようにします。マスターパスワードに関連する情報格納する必要はありません。</string>
<string name="enter_filename">データベースファイル名の入力</string>
<string name="entry_accessed">最終アクセス日</string>
<string name="entry_cancel">キャンセル</string>
@@ -266,7 +269,7 @@
<string name="ShowUsernameInList_summary">エントリのタイトルの下にユーザー名を表示します。複数のアカウントやTANに役立ちます。</string>
<string name="RememberRecentFiles_title">データベースを記憶する</string>
<string name="RememberRecentFiles_summary">最近開いたデータベースを記憶して、データベース選択画面に表示します。</string>
<string name="kp2a_findUrl">パスワードを見つける</string>
<string name="kp2a_findUrl">Keepass2Android: パスワードの検索</string>
<string name="excludeExpiredEntries">期限切れのエントリーを除外する</string>
<string name="search_options">オプション</string>
<string name="caseSensitive">大文字と小文字を区別する</string>
@@ -627,13 +630,7 @@
<string name="DbQuicklockedChannel_desc">クイック解除でデータベースがロックされていることに関する通知</string>
<string name="EntryChannel_name">エントリーの通知</string>
<string name="EntryChannel_desc">選択中のエントリーへの簡易アクセスの通知</string>
<string name="CloseDbAfterFailedAttempts">生体認証ロック解除試行に3回失敗した後、データベースを閉じます。</string>
<string-array name="ChangeLog_1_08">
<item>TOTP をクリップボードにコピーするための通知ボタンを追加する</item>
<item>FluentFTP を使用するように切り替えて、TLS 1.2 のサポートを提供</item>
<item>BiometricPrompt API に切り替えて、指紋ロック解除のユーザーエクスペリエンスを改善し、フェイスロック解除を使用できるようにします。 例えば Pixel 4 など。</item>
<item>バグフィックス</item>
</string-array>
<string name="ShowKeyboardDuringFingerprintAuth">指紋スキャンが有効な場合、パスワード入力用のソフト キーボードを表示します。</string>
<string name="ChangeLog_1_07b">バージョン 1.07b\n
* ネイティブ実装を使用して Argon2 のパフォーマンスを向上 (Chih-Hsuan Yen に感謝!)\n
* 指紋アイコンをクリックして指紋を無効にすることができます (画面下の指紋リーダーの問題を回避できます。marcoDallas に感謝!)\n
@@ -957,12 +954,12 @@ Niki Hüttner (www.close-cut.de) の新しいロゴに感謝!\n</string>
<string name="autofill_disable">%1$s の自動入力を無効にする</string>
<string name="autofill_enable_for">%1$s の自動入力を有効にする</string>
<string name="invalid_link_association">ドメイン %1$s をアプリ %2$s と関連付けできません</string>
<string name="enable_fingerprint_hint">Keepass2Android が生体認証ハードウェアを検出しました。生体認証を有効にして、このデータベースのロックを解除しますか?</string>
<string name="enable_fingerprint_hint">Keepass2Android は指紋認証ハードウェアを検出しました。指紋認証を有効にして、このデータベースのロックを解除しますか?</string>
<string name="understand">理解しました</string>
<string name="dont_show_again">二度と表示しない</string>
<string name="masterkey_infotext_head">マスターパスワードを思い出せますか?</string>
<string name="masterkey_infotext_main">マスターキー無しにデータベースを開くことはできません。マスターパスワードをリセットする方法はありません。</string>
<string name="masterkey_infotext_fingerprint_note">また、生体認証のロック解除は Android のセキュリティで保護されたストレージにマスター鍵を格納することに注意してください。例えばシステムの設定に新しい指紋を追加する場合など、Android はいつでもこのストレージを削除することがあります。そのため、生体認証に頼らず、マスターパスワードを覚えておいてください!</string>
<string name="masterkey_infotext_fingerprint_note">また、指紋認証のロック解除は Android のセキュリティで保護されたストレージにマスター鍵を格納することに注意ください。例えばシステムの設定に新しい指紋を追加する場合など、Android はいつでもこのストレージを削除することができます。そのため、指紋に頼らず、マスターパスワードを覚えておいてください!</string>
<string name="backup_infotext_head">データベースはバックアップされていますか?</string>
<string name="backup_infotext_main">Keepass2Android は、お好みの場所でファイルにパスワードを格納します。お使いの携帯電話を紛失したり盗難されたとき、またはファイルが破壊されたり削除されたときに、このファイルにアクセスできますか? 常に安全な場所に最新のバックアップがあることを確認してください!</string>
<string name="backup_infotext_note">バックアップを作成するには、%1$s&gt;%2$s&gt;%3$s へアクセスしてください。</string>

View File

@@ -1,16 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">의견 보내기</string>
<string name="AboutText">Keepass2Android는 Android에서 KeePass 2.x 데이터베이스에 대한 읽기/쓰기 액세스를 제공하는 암호 관리자입니다.</string>
<string name="CreditsText">사용자 인터페이스는 Brian Pellin에 의해 개발된 KeepassDroid 포트에 기반합니다. 데이터베이스 운용 코드는 Dominik Reichl에 의한 KeePass에 기반합니다. Android robot은 구글에 의해 만들어진 저작품으로부터 재생산 또는 수정되었으며 the Creative Commons 3.0 Attribution License에 명시된 조항에 따라 사용되었습니다.</string>
<string name="AboutText">Keepass2Android는 안드로이드에서 KeePass 2.x 데이터베이스에 대한 읽기/쓰기 액세스를 제공하는 패스워드 매니저입니다.</string>
<string name="CreditsText">사용자 인터페이스는 Brian Pellin에 의해 개발된 KeepassDroid 포트에 기반합니다. 데이터베이스 운용 코드는 Dominik Reichl에 의한 KeePass에 기반합니다. 안드로이드 로봇은 구글에 의해 만들어진 저작품으로부터 재생산 또는 수정되었으며 the Creative Commons 3.0 Attribution License에 명시된 조항에 따라 사용되었습니다.</string>
<string name="CreditsTextSFTP">SFTP 지원은 JCraft, Inc,에 의해 개발된 BSD licence의 the JSch library를 사용하여 구현됩니다.</string>
<string name="CreditsIcons">망치 아이콘은 Noun Project의 John Caserta에 의해 만들어 졌습니다. 펭귄 아이콘은 Noun Project의 Adriano Emerick에 의해 만들어 졌습니다. 깃털 아이콘은 Noun Project의 Jon Testa에 의해 만들어 졌습니다. 사과 아이콘은 Noun Project의 Ava Rowell에 의해 만들어 졌습니다. 그림 아이콘은 https://icons8.com/icon/5570/Picture 에서 가져왔습니다.</string>
<string name="CreditsIcons">망치 아이콘은 Noun Project의 John Caserta에 의해 만들어 졌습니다. 펭귄 아이콘은 Noun Project의 Adriano Emerick에 의해 만들어 졌습니다. 깃털 아이콘은 Noun Project의 Jon Testa에 의해 만들어 졌습니다. 사과 아이콘은 Noun Project의 Ava Rowell에 의해 만들어 졌습니다. 그림 아이콘은 https://icons8.com/icon/5570/Picture. 에서 왔습니다.</string>
<string name="accept">승인</string>
<string name="deny"></string>
<string name="deny"></string>
<string name="add_entry">항목 추가</string>
<string name="edit_entry">항목 편집</string>
<string name="add_url_entry">URL에 관한 항목 생성</string>
<string name="add_url_entry">URL에 관한 항목</string>
<string name="add_group">그룹 추가</string>
<string name="add_group_title">그룹 추가</string>
<string name="edit_group_title">그룹 편집</string>
@@ -21,24 +22,25 @@
<string name="app_name_nonet">Keepass2Android Offline</string>
<string name="short_app_name_nonet">KP2A Offline</string>
<string name="app_timeout">앱 시간제한</string>
<string name="app_timeout_summary">앱 비활성화 데이터베이스 잠금 대기 시간을 설정합니다.</string>
<string name="app_timeout_summary"> 비활성화 될 때 데이터베이스그는 시간</string>
<string name="kill_app_label">앱 프로세스 종료</string>
<string name="show_kill_app">종료 버튼</string>
<string name="show_kill_app_summary">비밀번호 화면에 앱 종료 버튼 보여줍니다 (편집증적인 사용자용)</string>
<string name="show_kill_app_summary">비밀번호 화면에 앱 종료 버튼 보이기 (편집증적인 사용자용)</string>
<string name="application"></string>
<string name="application_settings">앱 설정</string>
<string name="ShowGroupnameInSearchResult_title">검색결과에 그룹 표시하기</string>
<string name="ShowGroupnameInSearchResult_resume">검색 결과 중 항목의 제목 아래에 그룹을 표시 합니다. 여러 항목의 이름이 같은 경우 유용합니다.</string>
<string name="NavigationToGroupCompleted_message">현재 표시 그룹: %1$s</string>
<string name="AutofillDisabledQueriesPreference_title">자동 입력 비활성 대상</string>
<string name="OfferSaveCredentials_summary">이 설정을 사용하면 자동입력 가능한 필드에 수동으로 데이터를 입력 후, 자격 증명을 저장하려 할 때, Android가 물어봅니다</string>
<string name="ShowGroupnameInSearchResult_title">검색결과에 그룹이름 표시하기</string>
<string name="ShowGroupnameInSearchResult_resume">검색 결과 중 항목의 제목 아래에 그룹 이름을 표시 합니다. 여러 항목의 이름이 같은 경우 유용합니다.</string>
<string name="NavigationToGroupCompleted_message">표시 그룹은 지금: %1$s</string>
<string name="AutofillDisabledQueriesPreference_title">자동입력 비활성 대상</string>
<string name="AutofillDisabledQueriesPreference_summary">자동입력이 비활성화된 앱과 웹사이트의 리스트를 보여줍니다</string>
<string name="OfferSaveCredentials_summary">활성화되면, 자동입력 가능한 필드에 수동으로 데이터를 입력 후, 자격 증명을 저장하려 할 때, 안드로이드가 물어봅니다</string>
<string name="OfferSaveCredentials_title">자격 증명 저장 제공</string>
<string name="ShowGroupInEntry_title">항목 보기에서 그룹 표시</string>
<string name="unknown_uri_scheme">죄송합니다! Keepass2Android는 반환된 URI %1$s을 처리할 수 없습니다. 개발자에게 연락 하십시오!</string>
<string name="Entry_singular"> 개의 항목</string>
<string name="Entry_plural">%1$d 개의 항목</string>
<string name="IconSet_title">아이콘 세트</string>
<string name="IconSet_install">더 찾아보기...</string>
<string name="ShowGroupInEntry_title">항목 보기에서 그룹 이름 표시</string>
<string name="unknown_uri_scheme">죄송 합니다! Keepass2Android는 반환된 URI %1$s을 처리할 수 없습니다. 개발자에게 연락 하십시오!</string>
<string name="Entry_singular">한개의 항목</string>
<string name="Entry_plural">%1$d 항목</string>
<string name="IconSet_title">아이콘 </string>
<string name="IconSet_install">더 찾기...</string>
<string name="security_prefs">보안</string>
<string name="display_prefs">화면</string>
<string name="password_access_prefs">비밀번호 항목 접근</string>
@@ -46,58 +48,58 @@
<string name="FileHandling_prefs">파일 처리</string>
<string name="keyboard_prefs">키보드</string>
<string name="export_prefs">데이터베이스 내보내기...</string>
<string name="fingerprint_prefs">생체 인식 잠금 해제</string>
<string name="import_db_prefs">내부 폴더에서 데이터베이스 불러오기</string>
<string name="import_keyfile_prefs">내부 폴더에서 키 파일 불러오기</string>
<string name="fingerprint_prefs">지문 인식 잠금 해제</string>
<string name="import_db_prefs">내부 폴더로 부터 데이터베이스 불러오기</string>
<string name="import_keyfile_prefs">내부 폴더 키 파일 불러오기</string>
<string name="keyboardswitch_prefs">키보드 전환</string>
<string name="OnlyAvailableForLocalFiles">로컬 파일에서만 사용 가능 합니다.</string>
<string name="FileIsInInternalDirectory">파일은 내부 디렉토리 안에 저장됩니다.</string>
<string name="DatabaseFileMoved">데이터베이스 내부 폴더로 복사되었습니다. 새 위치에서 열려면 확인을 누르십시오. 참고: 안전한 보관을 위해 정기적으로 데이터베이스를 내보내는 것을 잊지마시기 바랍니다!</string>
<string name="KeyfileMoved"> 파일이 내부 폴더에 복사되었습니다. 현재 위치에서 삭제하기 전에 안전한 백업 있는지 확인하십시오!</string>
<string name="KeyfileMoveRequiresRememberKeyfile">키 파일의 위치가 저장 되지 않으면 내부 폴더를 사용할 수 없습니다. 보안 설정을 변경하십시오.</string>
<string name="unlock_database_button">잠금 해제</string>
<string name="unlock_database_title">데이터베이스 잠금 해제</string>
<string name="DatabaseFileMoved">데이터베이스 내부 폴더로 복사되었습니다. 새 위치에서 열려면 확인을 누르세요. 참고: 안전한 보관을 위해 정기적으로 데이터베이스를 내보내는 것을 잊지마십시오!</string>
<string name="KeyfileMoved">키파일이 내부 폴더에 복사되었습니다. 현재 위치로부터 삭제하기 전에 안전한 백업을 가지고 있는지 확인하십시오!</string>
<string name="KeyfileMoveRequiresRememberKeyfile">키 파일의 위치가 저장 되지 않으면 내부 폴더를 사용할 수 없습니다. 보안 설정을 변경하십시오.</string>
<string name="unlock_database_button">잠금해제</string>
<string name="unlock_database_title">데이터베이스 잠금해제</string>
<string name="brackets">괄호</string>
<string name="cancel">취소</string>
<string name="Ok">확인</string>
<string name="disable_sensor">센서 비활성화</string>
<string name="enable_sensor">센서 활성화</string>
<string name="ClearClipboard">클립보드를 비웠습니다.</string>
<string name="clipboard_timeout">클립보드 시간 제한</string>
<string name="clipboard_timeout_summary">계정 또는 비밀번호 복사 후 클립보드 삭제 대기 시간을 설정합니다</string>
<string name="copy_username">계정을 클립보드에 복사합니다.</string>
<string name="clipboard_timeout_summary">계정 또는 비밀번호 복사 후 클립보드를 지우기까지의 시간</string>
<string name="copy_username">계정을 클립보드에 복사합니다.</string>
<string name="copy_password">비밀번호를 클립보드에 복사합니다.</string>
<string name="copy_totp">TOTP를 클립보드에 복사합니다.</string>
<string name="available_through_keyboard">이 항목은 KP2A 키보드를 통해 사용 가능합니다.</string>
<string name="available_through_keyboard">항목은 KP2A 키보드를 통해 사용 가능합니다.</string>
<string name="entry_is_available">사용 가능</string>
<string name="not_possible_im_picker">입력 방법을 선택하는 대화 상자를 열 수 없습니다. 키보드를 수동으로 활성화 하십시오.</string>
<string name="please_activate_keyboard">시스템 설정에서 Keepass2Android 키보드를 활성화 하십시오.</string>
<string name="not_possible_im_picker">입력 방법을 선택하는 대화 상자를 열 수 없습니다. 키보드를 수동으로 활성화 하세요.</string>
<string name="please_activate_keyboard">시스템 설정에서 Keepass2Android 키보드를 활성화 하세요.</string>
<string name="creating_db_key">데이터베이스 키 생성 중...</string>
<string name="current_group">현재 그룹</string>
<string name="current_group_root">현재 그룹: 루트</string>
<string name="current_group_root">현재 그룹 : 루트</string>
<string name="database">데이터베이스</string>
<string name="digits">숫자</string>
<string name="disclaimer_formal">Keepass2Android는 절대적으로 보증되지 않습니다. 이 앱은 무료 소프트웨어이며, the GPL 버전 2 또는 그 최근 버전의 조건 하에서 재배포가 가능합니다.</string>
<string name="disclaimer_formal">Keepass2Android는 절대 보증되지 않습니다. 이 앱은 무료 소프트웨어이며, the GPL 버전 2 또는 그 최근 버전의 조건 하에서 재배포가 가능합니다.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">클립보드에 복사</string>
<string name="fingerprint_description">계속하려면 인증을 진행해주십시오</string>
<string name="fingerprint_fatal">생체 인식 잠금 해제를 설정할 수 없습니다:</string>
<string name="fingerprint_not_recognized">생체 인증에 실패했습니다. 다시 시도해 주십시오</string>
<string name="fingerprint_success">생체 인증에 성공했습니다</string>
<string name="fingerprint_os_error">생체 인식 잠금 해제는 Android 6.0 이상이 필요합니다.</string>
<string name="fingerprint_hardware_error">감지된 생체 인식 하드웨어가 없습니다.</string>
<string name="fingerprint_no_enrolled">기기에 생체 인증이 설정되어있지 않습니다. 먼저 시스템 설정을 진행해주십시오.</string>
<string name="disable_fingerprint_unlock">생체 인식 잠금 해제 사용 안 함</string>
<string name="enable_fingerprint_unlock">전체 생체 인식 잠금 해제 사용</string>
<string name="enable_fingerprint_quickunlock">QuickUnlock에 생체 인식 잠금 해제 사용</string>
<string name="fingerprint_unlock_failed">생체 인식 잠금 해제에 실패하였습니다. 해독 키가 Android OS에 의해 무효화 되었습니다. 이는 보통 새로운 생체 인증이 등록되었거나 보안 설정이 변경되었을때 발생합니다. </string>
<string name="fingerprint_disabled_wrong_masterkey">데이터베이스 잠금해제 실패: 복합키가 무효합니다. 저장된 마스터 비밀번호가 더 이상 유효하지 않으므로 생체 인식 잠금 해제가 비활성화 되었습니다. </string>
<string name="fingerprint_reenable">새로운 마스터 비밀번호에 대해 생체 인식 잠금 해제를 다시 설정해주십시오.</string>
<string name="fingerprint_reenable2">비밀번호로 잠금을 해제한 후 데이터베이스 설정에서 생체 인식 잠금 해제를 다시 설정해 주십시오.</string>
<string name="FingerprintInitFailed">생체 인증을 초기화 하는데 실패하였습니다. </string>
<string name="fingerprint_hint">센서 접촉</string>
<string name="fingerprint_description">계속하려면 지문 확인</string>
<string name="fingerprint_fatal">지문 잠금 해제를 설정할 수 없습니다:</string>
<string name="fingerprint_not_recognized">지문 인식이 실패하였습니다. 다시 시도해주세요.</string>
<string name="fingerprint_success">지문 인식 완료</string>
<string name="fingerprint_os_error">지문 인식 잠금 해제는 안드로이드 6.0 이상이 필요합니다.</string>
<string name="fingerprint_hardware_error">감지된 지문인식 하드웨어가 없습니다.</string>
<string name="fingerprint_no_enrolled">이 장치에 등록 된 지문이 없습니다. 안드로이드 설정을 먼저 해주세요.</string>
<string name="disable_fingerprint_unlock">지문 잠금 해제 사용안함</string>
<string name="enable_fingerprint_unlock">전체 지문인식 해제 사용</string>
<string name="enable_fingerprint_quickunlock">빠른 잠금해제를 위해 지문인식 잠금해제 사용</string>
<string name="fingerprint_unlock_hint">데이터베이스 잠금을 해제하려면 센서에 접촉하십시오</string>
<string name="fingerprint_unlock_failed">지문잠금 해제가 실패하였습니다. 해독 키가 안드로이드 OS에 의해 무효화 되었습니다. 이는 보통 새로운 지문이 등록되었거나 보안 설정이 변경되었을때 발생합니다. </string>
<string name="fingerprint_disabled_wrong_masterkey">데이터베이스 잠금해제 실패: 잘못된 복합키. 저장된 마스터 비밀번호가 더 이상 유효하지 않으므로 지문 잠금해제가 비활성화 되었습니다. </string>
<string name="fingerprint_reenable">새로운 마스터 비밀번호에 대해 지문 잠금 해제를 다시 설정해주세요.</string>
<string name="fingerprint_reenable2">비밀번호로 잠금을 해제한 후 데이터베이스 설정에서 지문 잠금 해제를 다시 설정해 주세요.</string>
<string name="FingerprintInitFailed">지문 센서를 초기화 하는데 실패했습니다. </string>
<string name="FingerprintSetupFailed">데이터 암호화에 실패했습니다. 이런 문제는 Keepass2Android가 지문을 인식하는 도중에 시스템 설정에 지문을 추가 또는 제거할 시에 발생할수 있습니다.</string>
<string name="enable_fingerprint_quickunlock_Info">QuickUnlock 코드 대신 생체 인증을 사용하는 것을 허용합니다. 마스터 비밀번호와 관련된 정보는 일절 저장하지 않습니다.</string>
<string name="enter_filename">데이터베이스 파일명을 입력하십시오.</string>
<string name="enable_fingerprint_unlock_Info">이 기기에 마스터 비밀번호가 저장되고 Android Keystore로 암호화되며 지문 인증을 사용하여 보호됩니다. 지문만으로 데이터베이스를 잠금 해제 할 수 있습니다.</string>
<string name="enable_fingerprint_quickunlock_Info">QuickUnlock 코드 대신 지문 인증을 사용할 수 있습니다. 마스터 비밀번호와 관련된 정보는 저장하지 않습니다.</string>
<string name="enter_filename">데이터베이스 파일 이름을 입력하세요.</string>
<string name="entry_accessed">접속됨</string>
<string name="entry_cancel">취소</string>
<string name="entry_comment">노트</string>
@@ -106,7 +108,7 @@
<string name="entry_confpassword">비밀번호 확인</string>
<string name="entry_created">생성됨</string>
<string name="entry_expires">만료</string>
<string name="entry_group_name">그룹</string>
<string name="entry_group_name">그룹 이름</string>
<string name="entry_keyfile">키 파일 (선택 사항)</string>
<string name="keyfile_heading">키 파일</string>
<string name="entry_modified">수정됨</string>
@@ -114,35 +116,35 @@
<string name="entry_save">저장</string>
<string name="entry_title">이름</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">계정</string>
<string name="entry_user_name">계정</string>
<string name="entry_extra_strings">추가 문자열 필드</string>
<string name="entry_binaries">첨부 파일</string>
<string name="error_can_not_handle_uri">Keepass2Android가 이 URI를 처리할 수 없습니다.</string>
<string name="error_could_not_create_group">그룹 생성 오류</string>
<string name="error_could_not_create_parent">상위 디렉터리를 만들 수 없습니다.</string>
<string name="error_could_not_create_group">그룹생성 오류</string>
<string name="error_could_not_create_parent">부모 디렉터리를 만들 수 없습니다.</string>
<string name="error_database_exists">이 파일이 이미 존재 합니다.</string>
<string name="error_database_settinoverrgs">데이터베이스 설정을 저장하는데 실패 했습니다.</string>
<string name="error_failed_to_launch_link">링크를 여는데 실패 했습니다.</string>
<string name="error_filename_required">파일이 필요합니다.</string>
<string name="error_failed_to_launch_link">링크를 시작하지 못했습니다.</string>
<string name="error_filename_required">파일 이름이 필요합니다.</string>
<string name="error_file_not_create">파일을 만들 수 없습니다.</string>
<string name="error_invalid_db">잘못된 데이터베이스입니다.</string>
<string name="error_invalid_path">잘못된 경로입니다.</string>
<string name="error_no_name">이름이 필요합니다.</string>
<string name="error_nopass">비밀번호 또는 키 파일이 필요합니다.</string>
<string name="error_pass_gen_type">적어도 하나 이상의 비밀번호 생성 유형을 선택해야 합니다.</string>
<string name="error_pass_gen_type">하나 이상의 비밀번호 생성 종류를 선택해야 합니다.</string>
<string name="error_pass_match">비밀번호가 맞지 않습니다.</string>
<string name="error_rounds_not_number">정수는 숫자여야 합니다.</string>
<string name="error_param_not_number">매개 변수는 숫자여야 합니다.</string>
<string name="error_title_required">제목이 필요합니다.</string>
<string name="error_wrong_length">길이 필드에 양수를 입력하십시오.</string>
<string name="error_wrong_length">길이 필드에 양수를 입력하세요.</string>
<string name="FileNotFound">파일을 찾을 수 없습니다.</string>
<string name="file_browser">파일 탐색기</string>
<string name="file_browser">파일탐색기</string>
<string name="generate_password">비밀번호 생성</string>
<string name="group">그룹</string>
<string name="hint_comment">노트</string>
<string name="hint_conf_pass">비밀번호 확인</string>
<string name="hint_generated_password">생성된 비밀번호</string>
<string name="hint_group_name">그룹</string>
<string name="hint_generated_password">생성 된 비밀번호</string>
<string name="hint_group_name">그룹 이름</string>
<string name="hint_keyfile">키 파일</string>
<string name="hint_length">길이</string>
<string name="hint_pass">비밀번호</string>
@@ -151,26 +153,25 @@
<string name="hint_url">URL</string>
<string name="hint_override_url">URL 덮어쓰기</string>
<string name="hint_tags">태그1, 태그2</string>
<string name="hint_username">계정</string>
<string name="hint_username">계정</string>
<string name="InvalidPassword">잘못된 비밀번호 또는 키 파일입니다.</string>
<string name="invalid_algorithm">잘못된 알고리즘입니다.</string>
<string name="invalid_db_sig">데이터베이스 형식을 인식할 수 없습니다.</string>
<string name="keyfile_does_not_exist">키 파일이 존재하지 않습니다.</string>
<string name="no_keyfile_selected">선택된 키 파일이 없습니다.</string>
<string name="no_keyfile_selected">선택된 키 파일이 없습니다</string>
<string name="keyfile_is_empty">키 파일이 비어있습니다.</string>
<string name="length">길이</string>
<string name="list_size_title">그룹 목록 크기</string>
<string name="list_size_summary">그룹 목록의 텍스트 크기를 설정합니다</string>
<string name="loading_database">데이터베이스 불러오는 중...</string>
<string name="list_size_summary">그룹 목록의 텍스트 크기</string>
<string name="loading_database">데이터베이스 로드중...</string>
<string name="lowercase">소문자</string>
<string name="MaskedPassword">*****</string>
<string name="maskpass_title">비밀번호 가림</string>
<string name="maskpass_summary">비밀번호 숨기기를 기본으로 설정합니다</string>
<string name="maskpass_title">비밀번호 숨기기</string>
<string name="maskpass_summary">비밀번호 숨기기를 기본설정으로</string>
<string name="menu_about">Keepass2Android 정보</string>
<string name="menu_change_key">마스터 키 변경하기</string>
<string name="menu_copy_pass">비밀번호 복사</string>
<string name="menu_copy_user">계정 복사</string>
<string name="menu_copy_totp">TOTP 복사</string>
<string name="menu_create">생성</string>
<string name="menu_app_settings">설정</string>
<string name="menu_db_settings">데이터베이스 설정</string>
@@ -181,200 +182,202 @@
<string name="menu_navigate">상위 그룹으로 이동</string>
<string name="menu_donate">맥주 기부하기...</string>
<string name="menu_edit">수정</string>
<string name="menu_hide_password">비밀번호 숨</string>
<string name="menu_hide_password">비밀번호 숨기기</string>
<string name="menu_lock">데이터베이스 잠금</string>
<string name="menu_open">열기</string>
<string name="menu_close">닫기</string>
<string name="menu_rename">이름 바꾸기</string>
<string name="menu_search">검색</string>
<string name="menu_search_advanced">고급 검색</string>
<string name="menu_search_advanced">고급검색</string>
<string name="menu_url">URL로 이동</string>
<string name="menu_change_db">데이터베이스 변경</string>
<string name="menu_show_all">모든 필드 표시</string>
<string name="minus">빼기</string>
<string name="menu_change_db">데이터베이스 변경하기</string>
<string name="menu_show_all">모든 필드 표시</string>
<string name="minus">빼기(-)</string>
<string name="never">없음</string>
<string name="yes"></string>
<string name="no">아니</string>
<string name="no">아니</string>
<string name="no_keys">데이터베이스나 그룹에 항목이 없습니다.</string>
<string name="no_results">검색결과가 없습니다.</string>
<string name="no_url_handler">이 URL의 작업도구가 없습니다.</string>
<string name="open_recent">최근 데이터베이스 열기 (탭해서 여십시오)</string>
<string name="omitbackup_title">백업과 휴지통 항목은 검색 안 함</string>
<string name="omitbackup_summary">\'백업\'과 휴지통 그룹은 검색결과에서 생략합니다</string>
<string name="pass_filename">KeePass 데이터베이스 파일</string>
<string name="password_title">데이터베이스 비밀번호를 입력하십시오</string>
<string name="master_key_type">마스터 키 유형 선택:</string>
<string name="no_url_handler">이 URL의 핸들러가 없습니다.</string>
<string name="open_recent">최근 데이터베이스 열기 (\'열기\'를 클릭하세요)</string>
<string name="omitbackup_title">백업과 휴지통 항목은 검색하지 않습니다.</string>
<string name="omitbackup_summary">백업과 휴지통은 검색결과에서 생략합니다.</string>
<string name="pass_filename">KeePass 데이터베이스 파일 이름</string>
<string name="password_title">데이터베이스 비밀번호를 입력하세요.</string>
<string name="master_key_type">마스터 키 유형 선택합니다.</string>
<string name="progress_create">새 데이터베이스 만들기...</string>
<string name="create_database">데이터베이스 만들기</string>
<string name="progress_title">작업 중...</string>
<string name="remember_keyfile_summary">키 파일 위치 기억합니다</string>
<string name="remember_keyfile_summary">키 파일 위치 기억</string>
<string name="remember_keyfile_title">키 파일 저장</string>
<string name="remove_from_filelist">제거</string>
<string name="edit">수정</string>
<string name="rijndael">Rijndael (AES)</string>
<string name="root">루트</string>
<string name="rijndael">레인달 (AES)</string>
<string name="root">경로</string>
<string name="AutoReturnFromQuery_title">요청 화면에서 자동으로 돌아오기</string>
<string name="AutoReturnFromQuery_summary">앱이나 웹사이트의 항목을 찾고 있을 때: 데이터베이스에 일치하는 항목이 단 하나만 있는 경우, 자동으로 요청 화면으로 돌아옵니다</string>
<string name="AutoReturnFromQuery_summary">앱이나 웹사이트의 항목을 찾고 있을때:
만약 단 하나의 일치하는 항목이 있는 경우, 자동으로 쿼리 화면으로 돌아옵니다</string>
<string name="KeyDerivFunc">키 유도 함수</string>
<string name="rounds">암호화 정수</string>
<string name="rounds_explaination">더 높은 암호화 정수는 무차별 대입 공격으로부터 보다 안전하지만, 가져오기나 저장하기 시 많이 느려질 수 있습니다.</string>
<string name="rounds_explaination">더 높은 암호화 정수는 해킹으로부터 보다 안전하지만, 가져오기나 저장하기 시 많이 느려질 수 있습니다.</string>
<string name="rounds_hint">정수</string>
<string name="argon2memory">Argon 2 용 메모리 (bytes)</string>
<string name="argon2memory">Argon 2 용 메모리 (바이트)</string>
<string name="argon2parallelism">Argon 2 용 병렬계산</string>
<string name="database_name">데이터베이스 </string>
<string name="database_name">데이터베이스 이름</string>
<string name="default_username">새 항목 추가 시 기본 계정명 설정</string>
<string name="saving_database">데이터베이스 저장...</string>
<string name="exporting_database">데이터베이스 내보내는 중…</string>
<string name="saving_database">데이터베이스 저장...</string>
<string name="exporting_database">데이터베이스 내보내기...</string>
<string name="export_database_successful">데이터베이스를 성공적으로 내보냈습니다!</string>
<string name="space">스페이스</string>
<string name="space">빈칸</string>
<string name="search_label">검색</string>
<string name="show_password">비밀번호 표시</string>
<string name="sort_menu">정렬 기준...</string>
<string name="sort_name">이름으로 정렬</string>
<string name="sort_db">만든 날짜 순으로 정렬</string>
<string name="sort_moddate">수정된 날짜 순으로 정렬</string>
<string name="sort_db">만든 날짜로 정렬</string>
<string name="sort_moddate">수정된 날짜순으로 정렬</string>
<string name="sort_default">기본 순서 유지</string>
<string name="special">특수</string>
<string name="search_hint">찾을 내용</string>
<string name="search_results">검색 결과</string>
<string name="search_in">검색</string>
<string name="select_other_entry">다른 항목 선택</string>
<string name="select_group_then_add">원하는 그룹을 연 다음, \"%1$s\" 클릭!</string>
<string name="insert_element_here">여기에 입력하십시오</string>
<string name="select_group_then_add">원하는 그룹을 연 다음, \"%1$s\"!</string>
<string name="insert_element_here">여기에 넣으세요.</string>
<string name="twofish">Twofish</string>
<string name="underline">밑줄</string>
<string name="unsupported_db_version">지원되지 않는 데이터베이스 버전입니다.</string>
<string name="uppercase">대문자</string>
<string name="warning_read_only">현재 SD 카드 속성이 읽기 전용입니다. 변경사항을 데이터베이스에 저장할 수 없습니다.</string>
<string name="warning_unmounted">SD 카드가 기기에 마운트 되지 않았습니다. 데이터베이스를 가져오거나 생성할 수 없습니다.</string>
<string name="warning_read_only">현재 SD 카드 속성이 read-only 입니다. 변경사항을 데이터베이스에 저장할 수 없습니다.</string>
<string name="warning_unmounted">SD 카드가 장착되지 않았습니다. 데이터베이스를 가져오거나 생성할 수 없습니다.</string>
<string name="version_label">버전</string>
<string name="version_history">버전 이력</string>
<string name="author">Keepass2Android는 Philipp Crocoll에 의해 개발되었습니다.</string>
<string name="further_authors">%1$s 코드 제공에 감사합니다.</string>
<string name="designers">아이콘과 레이아웃 디자인을 기해주신 %1$s 님께 감사를 표합니다.</string>
<string name="credit_plugin1">Keepass에 쓰이는 Twofish 암호화 플러그인은 Scott Greenberg에 의해 개발 되었으며 KP2A에 포함됩니다.</string>
<string name="credit_android_filechooser">Android 파일 선택기는 Hai Baison에 의해 개발되었습니다</string>
<string name="credit_keyboard">KP2A 키보드는 Android 오픈소스 프로젝트에 따른 Gingerbread 키보드를 기반으로 하고 Klaus Weidner에 의한 Hacker\'s Keyboard의 플러그인 매니저 코드를 사용합니다.</string>
<string name="please_note">주의 바랍니다</string>
<string name="contributors">기여자</string>
<string name="designers">아이콘과 레이아웃 디자인을 기해주신 %1$s에 감사드립니다.</string>
<string name="credit_plugin1"> Keepass에 쓰이는 Twofish 암호화 플러그인은 Scott Greenberg에 의해 개발 되었 KP2A에 포함됩니다.</string>
<string name="credit_android_filechooser">안드로이드 파일선택기는 Hai Baison에 의해 개발되었습니다.</string>
<string name="credit_keyboard">KP2A 키보드는 안드로이드 오픈소스 프로젝트에 따른 진저브레드 키보드를 기반으로 하고 Klaus Weidner에 의한 Hacker\'s Keyboard의 플러그인 매니저 코드를 사용합니다.</string>
<string name="please_note">알아두세요.</string>
<string name="contributors">도와준 사람들</string>
<string name="regular_expression">정규 표현식</string>
<string name="TanExpiresOnUse_title">TAN 사용 만료</string>
<string name="TanExpiresOnUse_summary">TAN 항목 사용 시 만료된 항목 표시합니다</string>
<string name="ShowUsernameInList_title">목록에 계정 표시하기</string>
<string name="ShowUsernameInList_summary">제목 아래에 계정명을 표시합니다. 다중계정이나 TAN에 유용합니다.</string>
<string name="TanExpiresOnUse_title">TAN 사용 만료되었습니다</string>
<string name="TanExpiresOnUse_summary">TAN 사용 시 만료된 항목 표시하기</string>
<string name="ShowUsernameInList_title">목록에 계정 표시하기</string>
<string name="ShowUsernameInList_summary">제목 아래에 계정 표시하기. 다중계정이나 TANs에 유용합니다.</string>
<string name="RememberRecentFiles_title">데이터베이스 기억하기</string>
<string name="RememberRecentFiles_summary">최근에 열린 데이터베이스를 기억하고 데이터베이스 열기 화면에 표시합니다.</string>
<string name="kp2a_findUrl">비밀번호 찾기</string>
<string name="RememberRecentFiles_summary">최근에 열린 데이터베이스를 기억하고 데이터베이스 열기 화면에 보이기</string>
<string name="kp2a_findUrl">Keepass2Android : 비밀번호 찾기</string>
<string name="excludeExpiredEntries">만료된 항목 제외</string>
<string name="search_options">옵션</string>
<string name="caseSensitive">대소문자 구분</string>
<string name="start_open_file">파일 열기...</string>
<string name="caseSensitive">/소문자 구분</string>
<string name="start_open_file">파일 열기</string>
<string name="start_create">새 데이터베이스 만들기...</string>
<string name="start_open_url">URL 열기...</string>
<string name="start_create_import">새 데이터베이스 파일 가져오기...</string>
<string name="enter_filename_details_url">http:// 같은 프로토콜을 포함하는 완전한 URL이 지정되어야 합니다.</string>
<string name="enter_filename_details_url">Http:// 같은 프로토콜을 포함하는 완전한 URL이 지정되어야 합니다.</string>
<string name="enter_filename_details_create_import">가져올 파일은 다음 단계에서 선택됩니다.</string>
<string name="enable_quickunlock">QuickUnlock 활성화</string>
<string name="QuickUnlock_label">비밀번호의 마지막 %1$d 문자를 입력하십시오:</string>
<string name="QuickUnlock_label">비밀번호의 마지막 %1$d 문자를 입력하세요 :</string>
<string name="QuickUnlock_label_secure">QuickUnlock 코드 입력:</string>
<string name="QuickUnlock_button">QuickUnlock!</string>
<string name="QuickUnlock_lockButton">데이터베이스 닫기</string>
<string name="QuickUnlockDefaultEnabled_title">QuickUnlock을 기본으로 활성화</string>
<string name="QuickUnlockDefaultEnabled_summary">QuickUnlock을 기본으로 사용할지 설정합니다.</string>
<string name="QuickUnlockDefaultEnabled_title">QuickUnlock 활성화를 기본설정으로</string>
<string name="QuickUnlockDefaultEnabled_summary">QuickUnlock을 기본으로 사용할지를 정의합니다.</string>
<string name="ViewDatabaseSecure_title">데이터베이스 표시 보호</string>
<string name="ViewDatabaseSecure_summary">이 설정을 사용하면 스크린샷 기능을 막고 최근 앱 리스트에 앱의 썸네일을 표시하지 않습니다.</string>
<string name="QuickUnlockIconHidden_title">QuickUnlock 아이콘 숨</string>
<string name="QuickUnlockIconHidden_summary">QuickUnlock은 알림 아이콘 표시 없이는 동하지 않습니다. 투명한 아이콘을 사용하려면 이 옵션을 선택하십시오.</string>
<string name="QuickUnlockIconHidden16_title">QuickUnlock 아이콘 숨</string>
<string name="QuickUnlockIconHidden16_summary">QuickUnlock이 제대로 작동하려면 알림 표시가 필요합니다. 아이콘 없이 알림창을 표시하려면 이 옵션을 선택하십시오.</string>
<string name="ViewDatabaseSecure_summary">스크린샷 기능을 막고 최근 앱 리스트에 앱의 썸네일을 표시하지 않습니다.</string>
<string name="QuickUnlockIconHidden_title">빠른 잠금해제 아이콘 숨기기</string>
<string name="QuickUnlockIconHidden_summary">빠른 잠금해제는 알림 아이콘 표시 없이는 동작을 하지 않습니다. 투명한 아이콘을 사용하려면 이 옵션을 선택하세요.</string>
<string name="QuickUnlockIconHidden16_title">빠른 잠금해제 아이콘 숨기기</string>
<string name="QuickUnlockIconHidden16_summary">QuickUnlock이 제대로 작동 하려면 알림 표시가 필요합니다. 아이콘 없이 알림창을 표시하려면 이 옵션을 선택합니다.</string>
<string name="QuickUnlockLength_title">QuickUnlock 키 길이</string>
<string name="QuickUnlockLength_summary">QuickUnlock 비밀번호로 사용될 최대 문자 수를 설정합니다.</string>
<string name="QuickUnlockHideLength_title">QuickUnlock 길이 숨</string>
<string name="QuickUnlockLength_summary">QuickUnlock 비밀번호로 사용될 최대 문자 수</string>
<string name="QuickUnlockHideLength_title">QuickUnlock 길이 숨기기</string>
<string name="QuickUnlockHideLength_summary">이 설정을 사용하면 QuickUnlock 코드의 길이가 QuickUnlock 화면에 표시되지 않습니다.</string>
<string name="QuickUnlock_fail">QuickUnlock 실패 : 잘못된 비밀번호!</string>
<string name="BinaryDirectory_title">첨부파일 폴더</string>
<string name="BinaryDirectory_summary">첨부파일이 저장될 폴더를 설정합니다.</string>
<string name="BinaryDirectory_summary">첨부파일이 저장될 폴더</string>
<string name="SaveAttachmentDialog_title">첨부파일 저장</string>
<string name="SaveAttachmentDialog_text">첨부파일을 저장할 위치를 선택하십시오.</string>
<string name="SaveAttachmentDialog_text">첨부파일을 저장할 위치를 선택하세요.</string>
<string name="SaveAttachmentDialog_save">파일로 내보내기...</string>
<string name="SaveAttachmentDialog_open">캐시에 저장하고 열기</string>
<string name="ShowAttachedImage">내부 이미지 뷰어로 보기</string>
<string name="SaveAttachment_doneMessage">%1$s에 파일을 저장합니다.</string>
<string name="SaveAttachment_Failed">%1$s에 첨부파일을 저장하지 못했습니다.</string>
<string name="AddUrlToEntryDialog_title">검색한 글자를 기억할까요?</string>
<string name="AddUrlToEntryDialog_text">다음 자동으로 찾기 위해 선택된 항목에 있는 검색 문자 \"%1$s\"를 저장하시겠습니까?</string>
<string name="error_invalid_expiry_date">만료 날짜/시간 형식이 잘못 되었습니다!</string>
<string name="error_string_key">각각의 문자열에 필드명이 필요합니다.</string>
<string name="error_string_duplicate_key">필드명을 중복되게 사용할 수 없습니다 (%1$s).</string>
<string name="field_name">필드</string>
<string name="AddUrlToEntryDialog_text">다음 자동으로 찾기 위해 선택된 항목에 있는 검색문자 \"%1$s\"를 저장할까요?</string>
<string name="error_invalid_expiry_date">만료 날짜/시간이 잘못된 형식입니다.</string>
<string name="error_string_key">필드 이름은 각각의 문자열이 필수입니다.</string>
<string name="error_string_duplicate_key">필드 이름을 두 번(%1$s) 사용할 수 없습니다.</string>
<string name="field_name">필드이름</string>
<string name="field_value">필드 값</string>
<string name="protection">보호된 필드</string>
<string name="add_binary">첨부파일 추가</string>
<string name="add_binary">첨부파일 추가...</string>
<string name="add_extra_string">추가 문자열 더하기</string>
<string name="delete_extra_string">추가 문자열 지우기</string>
<string name="database_loaded_quickunlock_enabled">%1$s: 잠김. QuickUnlock 사용가능.</string>
<string name="database_loaded_unlocked">%1$s: 풀림.</string>
<string name="credentials_dialog_title">서버 자격증명 입력</string>
<string name="UseFileTransactions_title">파일 트랜젝션</string>
<string name="UseFileTransactions_summary">데이터베이스 쓰기에 파일 트랜젝션을 사용합니다</string>
<string name="LockWhenScreenOff_title">화면 꺼질 때 잠</string>
<string name="LockWhenScreenOff_summary">화면 꺼질 때 데이터베이스급니다.</string>
<string name="ClearPasswordOnLeave_title">입력된 마스터 패스워드 지</string>
<string name="UseFileTransactions_title">파일 처리</string>
<string name="UseFileTransactions_summary">데이터베이스 쓰기 사용</string>
<string name="LockWhenScreenOff_title">화면 꺼질 때 잠그기</string>
<string name="LockWhenScreenOff_summary">화면 꺼질 때 데이터베이스 잠그기</string>
<string name="ClearPasswordOnLeave_title">입력된 마스터 패스워드우기</string>
<string name="ClearPasswordOnLeave_summary">데이터베이스를 잠금해제 하지 않고 화면을 떠날 경우 입력된 마스터 패스워드를 지웁니다.</string>
<string name="LockWhenNavigateBack_title">앱을 닫을 때 잠금</string>
<string name="LockWhenNavigateBack_summary">뒤로 버튼을 눌러 앱을 닫을 때 데이터베이스를 잠급니다.</string>
<string name="UseKp2aKeyboardInKp2a_title">Keepass2Android 내장 키보드 사용</string>
<string name="UseKp2aKeyboardInKp2a_title">Keepass2Android 내장 키보드 사용</string>
<string name="UseKp2aKeyboardInKp2a_summary">기본 키보드 제공자를 신뢰할 수 없다면, 이 옵션을 체크해 마스터 키를 입력할 때나 항목을 편집할 때 내장 키보드를 사용하십시오.</string>
<string name="ActivateSearchViewOnStart_title">시작 시 검색 필드 활성화</string>
<string name="ActivateSearchViewOnStart_summary">잠금 해제 또는 항목 검색 시 그룹보기에서 검색 필드 활성화합니다</string>
<string name="NoDonateOption_title">기부 버튼 숨</string>
<string name="NoDonateOption_summary">기부자를 위한 옵션입니다. 이 앱을 한동안 사용한 후에만 설정이 가능합니다.</string>
<string name="NoDonateOption_question">이 앱은 기부 없이는 존재하거나 지속적으로 발전할 수 없습니다! 아직 기부를 하지 않으셨다면, 지금 기부에 대해 고려해 주십시오</string>
<string name="ActivateSearchViewOnStart_title">시작시 검색 필드 활성화</string>
<string name="ActivateSearchViewOnStart_summary">잠금 해제 또는 항목 검색시 그룹보기에서 검색 필드 활성화</string>
<string name="NoDonateOption_title">기부 버튼 숨기기</string>
<string name="NoDonateOption_summary">기부자를 위한 옵션입니다.
이 앱을 한동안 사용한 후에만 설정이 가능합니다.</string>
<string name="NoDonateOption_question">이 앱은 기부 없이는 존재하거나 지속적으로 발전할 수 없습니다! 아직 기부를 하지 않으셨다면, 지금 기부에 대해 고려해 주세요</string>
<string name="NoDonationReminder_title">기부에 대해 다시는 묻지 않기</string>
<string name="NoDonationReminder_summary">나는 너에게 한 푼도 주지 않을 것이거나 이미 기증 했다. 제작자 생일이라도 기부에 대한 요청 하지마라.</string>
<string name="NoDonationReminder_summary">나는 한 푼도 주지 않을 것이거나 이미 기증 했다. 제작자 생일도 기부에 대한 요청 하지마라.</string>
<string name="UseOfflineCache_title">데이터베이스 캐싱</string>
<string name="UseOfflineCache_summary">앱의 캐시 디렉토리에 데이터베이스 파일의 사본을 보관합니다. 이렇게하면 데이터베이스 파일에 접근 할 수 없는 동안에도 데이터베이스를 사용할 수 있습니다.</string>
<string name="UseOfflineCache_summary">응용 프로그램 캐시 디렉토리에 데이터베이스 파일의 사본을 보관하십시오. 이렇게하면 데이터베이스 파일에 접근 할 수 없는 동안에도 데이터베이스를 사용할 수 있습니다.</string>
<string name="CreateBackups_title">기기 내부 백업</string>
<string name="CreateBackups_summary">성공적으로 데이터베이스를 불러온 후 기기 내부 백업의 복사본을 만듭니다.</string>
<string name="UpdatingBackup">기기 내부 백업을 업데이트 중...</string>
<string name="UpdatingBackup">기기 내부 백업을 업데이트중...</string>
<string name="LocalBackupOf">%1$s의 기기 내부 백업</string>
<string name="show_local_backups">내부 백업 보기</string>
<string name="AcceptAllServerCertificates_title">SSL 인증서</string>
<string name="AcceptAllServerCertificates_summary">인증서 유효성 검사 실패 시 동작을 정합니다. 참고: 유효성 검사가 실패하면 인증서를 기기에 설치할 수 있습니다.</string>
<string name="AcceptAllServerCertificates_summary">인증서 유효성 검사 실패 시 동작을 정합니다. 참고: 유효성 검사가 실패하면 인증서를 장치에 설치할 수 있습니다.</string>
<string name="ClearOfflineCache_title">캐시를 지울까요?</string>
<string name="ClearOfflineCache_question">캐시 된 모든 데이터베이스 파일이 삭제됩니다. 원본 데이터베이스에 액세스 하지 않고 아직 동기화되지 않은 상태에서 변경한 내용은 손실 됩니다! 진행 하시겠습니까?</string>
<string name="CheckForFileChangesOnSave_title">수정 확인</string>
<string name="CheckForFileChangesOnSave_summary">파일이 외부에서 수정되었는지 변경사항을 저장하기 전에 확인합니다.</string>
<string name="ClearOfflineCache_question">캐시 된 모든 데이터베이스 파일이 삭제됩니다. 원본 데이터베이스에 액세스 하지 않고 아직 동기화되지 않은 상태에서 변경 한 내용은 손실 됩니다! 진행 하시겠습니까?</string>
<string name="CheckForFileChangesOnSave_title">수정 확인하기</string>
<string name="CheckForFileChangesOnSave_summary">파일이 외부에서 수정되었는지 변경사항을 저장하기 전에 확인하기</string>
<string name="CheckForDuplicateUuids_title">중복된 UUID 확인</string>
<string name="CheckForDuplicateUuids_summary">동일한 ID의 항목이 여러 개 있으 데이터베이스 파일이 손상되었는지 확인합니다. 예기치 못한 동작이 발생할 수 있습니다.</string>
<string name="CheckForDuplicateUuids_summary">동일한 ID의 항목이 여러 개 있으므로 데이터베이스 파일이 손상되었는지 확인하십시오. 예기치 않은 동작이 발생할 수 있습니다.</string>
<string name="ShowCopyToClipboardNotification_title">클립보드 알림</string>
<string name="ShowCopyToClipboardNotification_summary">계정과 비밀번호를 알림창과 클립보드를 통해 접근할 수 있도록 합니다. 비밀번호 스니퍼를 주의하십시오!</string>
<string name="ShowCopyToClipboardNotification_summary">계정과 비밀번호를 알림창과 클립보드를 통해 접근할 수 있도록 . 비밀번호 유출 주의!</string>
<string name="ShowSeparateNotifications_title">분리된 알림</string>
<string name="ShowSeparateNotifications_summary">계정명과 암호를 클립 보드로 복사하기 위한 알림과 키보드를 활성화 하기 위한 알림을 별도로 표시합니다.</string>
<string name="AccServiceAutoFill_prefs">자동 입력 접근성 서비스</string>
<string name="AutoFill_prefs">자동 입력 서비스</string>
<string name="ShowSeparateNotifications_summary">사용자 이름과 암호를 클립 보드로 복사하 키보드를 활성화 하기 위한 별도의 알림 표시.</string>
<string name="AccServiceAutoFill_prefs">자동 완성 접근성-서비스</string>
<string name="AutoFill_prefs">자동 완성 서비스</string>
<string name="ShowKp2aKeyboardNotification_title">KP2A 키보드 알림</string>
<string name="ShowKp2aKeyboardNotification_summary">KP2A 키보드를 통해 전체 항목에 접근할 수 있도록 합니다. (권장)</string>
<string name="OpenKp2aKeyboardAutomatically_title">키보드 전환</string>
<string name="OpenKp2aKeyboardAutomatically_summary">브라우저에서 검색 후 KP2A 키보드를 통한 항목 선택이 가능할 때 키보드 선택창을 엽니다.</string>
<string name="kp2a_switch_rooted">키보드 자동 전환</string>
<string name="kp2a_switch_rooted_summary">항목을 열면 KP2A 키보드로 자동 전환됩니다. 제대로 설정된 KeyboardSwap 플러그인 또는 루팅 된 기기와 Secure Settings 앱 및 System+ 모듈이 필요합니다. </string>
<string name="get_keyboardswap">KeyboardSwap 플러그인 설치</string>
<string name="get_keyboardswap_summary">이 플러그인을 사용하면 루팅 없이 KP2A 키보드로 전환 할 수 있습니다. ADB가 필요합니다. </string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_title">검색 후에만 자동 전환</string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_summary">URL 공유 기능을 사용한 경우에만 자동으로 KP2A 키보드로 전환합니다 (단, 다른 방법으로 항목을 열 때는 작동하지 않습니다)</string>
<string name="OpenKp2aKeyboardAutomatically_title">키보드 바꾸기</string>
<string name="OpenKp2aKeyboardAutomatically_summary">브라우저에서 검색 후 KP2A 키보드를 통한 항목 선택이 가능할 때 키보드 선택창을 열기</string>
<string name="kp2a_switch_rooted">자동-스위칭 키보드</string>
<string name="kp2a_switch_rooted_summary">항목을 열면 KP2A 키보드로 자동 전환됩니다. 제대로 설정된 KeyboardSwap 플러그인 또는 루팅 된 장치와 System+의 보안 설정 앱이 필요합니다. </string>
<string name="get_keyboardswap">키보드 스왑 플러그인 설치</string>
<string name="get_keyboardswap_summary">이 플러그인을 사용하면 루팅 없이 KP2A 키보드로 전환 할 수 있습니다. ADB가 필요합니다. </string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_title">검색 후 자동으로 전환</string>
<string name="OpenKp2aKeyboardAutomaticallyOnlyAfterSearch_summary">URL 공유 기능을 사용한 경우에만 자동으로 KP2A 키보드로 전환합니다 (단, 다른 방법으로 항목을 열지는 않음).</string>
<string name="AutoSwitchBackKeyboard_title">원래 키보드로 전환</string>
<string name="AutoSwitchBackKeyboard_summary">열린 항목이 없으면 이전 키보드로 전환 합니다.</string>
<string name="ShowUnlockedNotification_title">잠금이 해제되어 있는 동안 알림 아이콘 표시</string>
<string name="ShowUnlockedNotification_summary">데이터베이스가 열려있는 동안 알림창에 열림 상태를 표시합니다.</string>
<string name="ShowUnlockedNotification_title">잠금이 해제되어 있는 동안 알림 아이콘 표시</string>
<string name="ShowUnlockedNotification_summary">데이터베이스가 열려있는 동안 알림창에 열림 상태를 알림</string>
<string name="IconVisibilityInfo_Android8_text">Android 8에서는 알림에 대한 새로운 동작을 도입했습니다. Keepass2Android의 알림 아이콘을 숨기려면 시스템 설정을 통해 변경하십시오. 알림 범주의 중요도를 최소로 설정하십시오.</string>
<string name="IconVisibilityInfo_Android8_btnSettings">설정 열기</string>
<string name="DontCare">상관 없음</string>
<string name="DocumentAccessRevoked">Keepass2Android에서 더 이상 파일에 접근 할 수 없습니다. 파일이 제거 되었거나 접근 권한이 취소되었습니다. 파일을 다시 열어 사용하십시오. 예시: 데이터베이스 변경 사용</string>
<string name="PreloadDatabaseEnabled_title">데이터베이스 파일 미리 불러오기</string>
<string name="PreloadDatabaseEnabled_summary">비밀번호 항목 사용 중에 백그라운드 불러오기나 데이터베이스 파일 다운로드를 시작합니다.</string>
<string name="DocumentAccessRevoked">Keepass2Android에서 더 이상 파일에 접근 할 수 없습니다. 제거 되었거나 접근 권한이 취소되었습니다. 파일을 다시 열어 사용하십시오. 예, 데이터베이스 변경 사용</string>
<string name="PreloadDatabaseEnabled_title">데이터베이스 파일 미리 불러오기</string>
<string name="PreloadDatabaseEnabled_summary">비밀번호 항목 사용 중에 백그라운드 로딩이나 데이터베이스 파일 다운로드를 시작하기</string>
<string name="AskOverwriteBinary">같은 이름의 기존 바이너리를 덮어쓰시겠습니까?</string>
<string name="AskOverwriteBinary_title">기존의 바이너리를 덮어쓰시겠습니까?</string>
<string name="AskOverwriteBinary_title">기존의 바이너리를 덮어쓸까요?</string>
<string name="AskOverwriteBinary_yes">덮어쓰기</string>
<string name="AskOverwriteBinary_no">이름 바꾸기</string>
<string name="AttachFailed">첨부파일을 추가하지 못했습니다.</string>
@@ -386,10 +389,10 @@
<string name="AskDeletePermanentlyGroupNoRecycle">이 그룹을 영구적으로 삭제 하시겠습니까?</string>
<string name="AskDeletePermanentlyItemsNoRecycle">선택된 요소를 영구적으로 삭제 하시겠습니까?</string>
<string name="AskDeletePermanently_title">영구적으로 삭제 하시겠습니까?</string>
<string name="AskReloadFile_title">파일을 다시 불러오시겠습니까?</string>
<string name="AskReloadFile">현재 열려있는 파일이 다른 프로그램에 의해 변경되었습니다. 다시 불러오시겠습니까?</string>
<string name="AskReloadFile_title">파일을 다시 불러올까요?</string>
<string name="AskReloadFile">현재 열려있는 파일이 다른 프로그램에 의해 변경되었습니다. 다시 불러올까요?</string>
<string name="AskDiscardChanges">변경사항을 정말 취소하시겠습니까? (저장 버튼은 상단에 있습니다.)</string>
<string name="AskDiscardChanges_title">변경사항을 취소하시겠습니까?</string>
<string name="AskDiscardChanges_title">변경사항을 취소할까요?</string>
<string name="suggest_improvements">개선을 위한 제안이나 투표</string>
<string name="rate_app">앱 평가하기</string>
<string name="translate_app">KP2A 번역하기</string>
@@ -404,11 +407,11 @@
<string name="DecodingDatabase">데이터베이스 디코딩...</string>
<string name="ParsingDatabase">데이터베이스 분석...</string>
<string name="CheckingTargetFileForChanges">변경사항을 위한 대상파일 검사...</string>
<string name="TitleSyncQuestion">변경사항을 통합하시겠습니까?</string>
<string name="MessageSyncQuestion">데이터베이스 파일이 외부에서 수정되었습니다. 저장하기 전에 변경사항을 통합해서 가져오시겠습니까? 외부 변경사항으로 덮어쓰려면 \"아니오\"를 선택하십시오.</string>
<string name="TitleSyncQuestion">변경사항을 통합할까요?</string>
<string name="MessageSyncQuestion">데이터파일이 외부에서 수정되었습니다. 저장하기 전에 변경사항을 통합해서 가져올까요? 외부 변경사항으로 덮어쓰려면 \"아니오\"를 선택하세요.</string>
<string name="SynchronizingDatabase">변경사항 통합...</string>
<string name="YesSynchronize"></string>
<string name="NoOverwrite">아니오, 덮어씁니다</string>
<string name="NoOverwrite">아니</string>
<string name="UseOfflineMode">내부 캐시로만 작업</string>
<string name="UseOnlineMode">소스와 캐시 사본 동기화</string>
<string name="UseOfflineMode_Info">데이터베이스가 내부 캐시에서 로드 되었습니다. 변경 사항은 내부 캐시에만 저장되며 캐시 사본과 소스 동기화를 선택할 때만 동기화됩니다.</string>
@@ -432,16 +435,16 @@
<string name="SynchronizingOtpAuxFile">OTP 보조 파일 동기화...</string>
<string name="database_file">데이터베이스 파일</string>
<string name="otp_aux_file">OTP 보조 파일</string>
<string name="ErrorOcurred">오류가 발생했습니다:</string>
<string name="DuplicateUuidsError">데이터베이스가 손상되었습니다: 중복 ID가 발견되었습니다. (혹시 Minikeepass로 저장 하셨습니까?) PC 용 Keepass 2를 사용하여 새 데이터베이스를 다시 불러와서 \'새 ID 만들기\' 를 선택하십시오.</string>
<string name="DuplicateUuidsErrorAdditional">설정/앱 설정/파일 처리/중복된 UUID 확인 에서 이 오류 메시지를 비활성화 할 수 있습니다. 예기치 못한 동작이 발생할 수 있습니다. 데이터베이스 수정이 권장됩니다.</string>
<string name="ErrorOcurred">에러가 발생했습니다. : </string>
<string name="DuplicateUuidsError">데이터베이스가 손상: 중복 ID가 발견되었습니다. (Minikeepass로 저장 습니까?) PC 용 Keepass 2를 사용하여 새 데이터베이스를 다시 가져 와서 \'새 ID 만들기\' 를 선택하십시오.</string>
<string name="DuplicateUuidsErrorAdditional">설정 / 응용 프로그램 설정 / 파일 처리 / 중복된 UUID 확인 에서 이 오류 메시지를 비활성화 할 수 있습니다. 예기치 않은 동작이 발생할 수 있으므로 데이터베이스 수정하는 것이 좋습니다.</string>
<string name="synchronize_database_menu">데이터베이스 동기화...</string>
<string name="CannotMoveGroupHere">이 그룹에 그룹을 이동할 수 없습니다.</string>
<string name="donate_question">오늘이 맥주 축제날이네요! Keepass2Android가 마음에 드셨다면 오늘이 제게 맥주 한 번 사기 좋은 날 아닐까요?</string>
<string name="donate_bday_question">5월 10일? 제 생일이네요! 이 앱이 맘에 드셨다면 제게 작은 생일선물과 함께 축하인사를 보내주시면 안될까요? 그럼 진짜 행복할 것 같은데요! :-)</string>
<string name="donate_missedbday_question">아, 5월 10일 제 생일을 놓치셨네요! 이 앱이 맘에 드신다면 작은 생일선물과 함께 축하인사를 보내주시면 안될까요? 저를 행복하게 해주시기에 아직 늦지 않았답니다! :-)</string>
<string name="ok_donate">제게 좀 더 자세히 말해세요!</string>
<string name="no_thanks">아뇨, 그게 그다지 좋진 않습니다</string>
<string name="ok_donate">제게 좀 더 말해세요!</string>
<string name="no_thanks">아뇨. 그게 그다지 좋진 않습니다.</string>
<string name="enter_http_login_title">WebDav 로그인 데이터 입력:</string>
<string name="hint_http_url">폴더 또는 파일의 주소 (예: mycloud.me.com/webdav/)</string>
<string name="enter_owncloud_login_title">OwnCloud 로그인 데이터 입력:</string>
@@ -452,13 +455,13 @@
<string name="hint_sftp_port">포트</string>
<string name="initial_directory">초기 디렉터리 (선택사항) :</string>
<string name="enter_sftp_login_title">SFTP 로그인 데이터 입력:</string>
<string name="sftp_auth_mode">인증 모드</string>
<string name="sftp_auth_mode">인증모드</string>
<string name="send_public_key">공개 키 보내기...</string>
<string name="enter_ftp_login_title">FTP 로그인 데이터 입력:</string>
<string name="select_storage_type">저장소 유형을 선택하십시오.</string>
<string name="select_storage_type">저장소 유형을 선택하세요.</string>
<string name="filestoragename_file">로컬 파일</string>
<string name="filestoragename_androidget">다른 앱에서 가져오기</string>
<string name="filestoragename_androidsend">다른 앱으로 보내기</string>
<string name="filestoragename_androidget">제3의 앱에서 가져오기</string>
<string name="filestoragename_androidsend">제3의 앱으로 보내기</string>
<string name="filestoragename_ftp">FTP</string>
<string name="filestoragename_http">HTTP (WebDav)</string>
<string name="filestoragename_https">HTTPS (WebDav)</string>
@@ -466,104 +469,102 @@
<string name="filestoragename_nextcloud">Nextcloud</string>
<string name="filestoragename_dropbox">드롭박스</string>
<string name="filestoragename_dropboxKP2A">드롭박스 (KP2A 폴더)</string>
<string name="filestoragehelp_dropboxKP2A">KP2A가 당신의 Dropbox 전체 목록에 접근하는 것을 원하지 않는다면 이 옵션을 선택하십시오. Apps/Keepass2Android 폴더에만 접근을 요청합니다. 새로운 데이터베이스를 생성할 때 특히 적합합니다.
이미 데이터베이스 파일를 갖고 있다면, 이 옵션을 선택해서 폴더를 생성한 다음, 기존의 데이터베이스 파일을 생성된 폴더에 넣으십시오. (PC나 기타 경로를 통해서)
그 다음 이 옵션을 다시 선택하 데이터베이스 파일을 여십시오.</string>
<string name="filestoragename_gdrive">Google 드라이브</string>
<string name="filestoragehelp_dropboxKP2A">KP2A가 당신의 Dropbox 전체 목록에 접근하는 것을 원하지 않는다면 이 옵션을 선택하세요. 그럼 오직 Apps/Keepass2Android 폴더에만 접근을 요청합니다. 이건 새로운 데이터베이스를 생성할 때 특히 적합합니다.
이미 데이터베이스 파일를 갖고 있다면, 이 옵션을 선택해서 폴더를 생성한 다음, 기존의 데이터베이스 파일을 생성된 폴더에 넣습니다. (PC나 기타 경로를 통해서)
그 다음 이 옵션을 다시 선택하 데이터베이스 파일을 엽니다.</string>
<string name="filestoragename_gdrive">구글 드라이브</string>
<string name="filestoragename_pcloud">PCloud</string>
<string name="filestoragehelp_pcloud">이 저장공간 유형은 오직 \"Application/Keepass2Android\" 폴더에만 접근을 요청할 것입니다. 만약 PCloud 계정에 존재하는 데이터베이스를 사용하길 원하신다면, 데이터베이스 파일이 이 폴더 내에 있는지 확인해주십시오.</string>
<string name="filestoragehelp_pcloud">이 저장공간 유형은 오직 \"Application/Keepass2Android\" 폴더에만 접근을 요청할 것입니다. 만약 PCloud 계정에 존재하는 데이터베이스를 사용하길 원하신다면, 데이터베이스 파일이 이 폴더 내에 있는지 확인해주세요.</string>
<string name="filestoragename_onedrive">원드라이브</string>
<string name="filestoragename_onedrive2">원드라이브</string>
<string name="filestoragename_onedrive2_full">모든 파일 및 공유한 파일</string>
<string name="filestoragename_onedrive2_myfiles">내 파일</string>
<string name="filestoragename_onedrive2_appfolder">Keepass2Android 앱 폴더</string>
<string name="filestoragename_sftp">SFTP (SSH 파일 전송)</string>
<string name="filestoragename_content">시스템 파일 선택</string>
<string name="filestoragename_content">시스템 파일 탐색</string>
<string name="filestorage_setup_title">파일 액세스 초기화</string>
<string name="database_location">데이터베이스 위치</string>
<string name="help_database_location">데이터베이스 파일을 Android 기기나 클라우드에 저장할 수 있습니다. (오프라인이 아닌 버전에서만 가능)
<string name="help_database_location">데이터베이스 파일을 안드로이드 기기나 클라우드에 저장할 수 있습니다. (온라인 버전에서만)
Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이 가능합니다. 데이터베이스 파일은 AES 256 비트 암호화로 안전하게 저장되어 있으며, 당신을 제외하고는 그 누구도 당신의 비밀번호에 접근할 수 없습니다.
우리는 드롭박스를 선택하시길 권장합니다: 드롭박스는 당신이 가진 모든 기기에서 접근이 가능할 뿐더러 이전 파일의 백업도 지원하기 때문입니다.</string>
<string name="hint_database_location">데이터베이스를 저장할 위치를 선택하십시오:</string>
우리는 Dropbox를 선택하시길 권장합니다.
그건 당신이 가진 모든 장치에서 접근이 가능할 뿐더러 이전 파일의 백업도 지원하거든요.</string>
<string name="hint_database_location">데이터베이스를 저장할 위치를 선택합니다.</string>
<string name="button_change_location">위치 변경</string>
<string name="help_quickunlock">이 설정을 사용하면 Keepass2Android가 데이터베이스가 잠겨 있어도 백그라운드에서 계속 실행됩니다. 이렇게 하면 나중에 마스터 비밀번호의 일부만 사용하여 데이터베이스를 잠금 해제 할 수 있습니다.</string>
<string name="master_password">마스터 비밀번</string>
<string name="help_master_password">데이터베이스 파일은 여기 입력된 비밀번호로 암호화 됩니다. 데이터베이스의 안전성을 유지하려면 강력한 비밀번호를 선택하십시오! 팁: 하나 또는 두 가지의 문장을 만들어서 단어들의 첫번째 글자들을 비밀번호로 쓰는 겁니다. 문장부호도 포함해서요.</string>
<string name="hint_master_password">데이터베이스 보호를 위해 위해 마스터 비밀번호를 선택 하십시오:</string>
<string name="help_quickunlock">사용하도록 설정하면 Keepass2Android가 데이터베이스가 잠겨 있어도 백그라운드에서 계속 실행됩니다. 이렇게 하면 나중에 마스터 비밀번호의 일부만 사용하여 데이터베이스를 잠금 해제 할 수 있습니다.</string>
<string name="master_password">마스터 </string>
<string name="help_master_password">데이터베이스 파일은 여기 입력된 비밀번호로 암호화 됩니다. 데이터베이스의 안전성을 유지하려면 강력한 비밀번호를 선택하세요! >> 팁: 하나 또는 두 가지의 문장을 만들어서 단어들의 첫번째 글자들을 비밀번호로 쓰는 겁니다. 문장부호도 포함해서요.</string>
<string name="hint_master_password">데이터베이스 보호하기 위해 마스터 비밀번호를 선택 합니다.</string>
<string name="key_file">키 파일</string>
<string name="help_key_file">키 파일은 기본적으로 파일 안에 저장되는 비밀번호입니다. 키 파일들은 전형적으로 마스터 비밀번호보다 더 강력합니다.
왜냐하면 그 키는 더욱 더 많이 복잡하기 때문입니다. 하지만 그것 또한 비밀을 유지하기엔 어렵습니다. 만약 데이터베이스 파일을 클라우드에 저장한다면, 키 파일은 거기 같이 저장하지 마십시오! 이는 키 파일을 전혀 쓸모 없게 만듭니다! 중요: 데이터베이스를 생성한 후에는 키 파일의 내용을 수정하지 마십시오!</string>
<string name="hint_key_file">키 파일을 마스터 비밀번호와 함께 쓰고자 한다면 선택하십시오:</string>
<string name="help_key_file">키 파일은 기본적으로 파일 안에 저장되는 비밀번호입니다. 키 파일들은 전형적으로 마스터 보다 더 강력하지요.
왜냐하면 그 키는 더욱 더 많이 복잡하니까요. 하지만 그것 또한 비밀을 유지하기엔 어렵습니다. 만약 데이터베이스 파일을 클라우드에 저장한다면, 키 파일은 거기 같이 저장하지 마세요! 그럼 전혀 쓸모 없니다! 중요: 데이터베이스를 생성한 후에는 키 파일의 내용을 수정하지 마세요!</string>
<string name="hint_key_file">마스터 비밀번호와 더불어 키 파일을 쓰고자 한다면 선택하세요.</string>
<string name="use_key_file">키 파일 사용</string>
<string name="error_adding_keyfile">키 파일을 추가하는 동안 오류가 발생했습니다!</string>
<string name="init_otp">OTP 보조 파일 불러오기...</string>
<string name="otp_explanation">다음 One-time-password (OTP) 를 입력하십시오. NFC를 통해 입력하려면 기기의 뒷면에 Yubikey NEO를 스치십시오 (Yubiclip 앱이 필요합니다).</string>
<string name="otp_explanation">다음 One-time-passwords (OTPs) 를 입력합니다. NFC를 통해 입력하려면 장치의 뒷면에 Yubikey NEO를 스치세요 (Yubiclip 앱이 필요합니다).</string>
<string name="otp_hint">OTP %1$d</string>
<string name="CouldntLoadOtpAuxFile">OTP 보조 파일을 불러올 수 없습니다!</string>
<string name="CouldntLoadOtpAuxFile_Hint">OTP를 사용하기 위해 데이터베이스를 설정하려면 KeePass 2.x (PC)에서 OtpKeyProv 플러그인을 사용해 주십시오!</string>
<string name="otp_discarded_because_no_db">데이터베이스부터 선택해주십시오. OTP는 보안상의 이유로 폐기됩니다.</string>
<string name="otp_discarded_no_space">모든 OTP가 이미 입력되었기 때문에 OTP 폐기되었습니다!</string>
<string name="otp_discarded_because_db_open">데이터베이스부터 닫아주십시오. OTP는 폐기됩니다.</string>
<string name="otps_pending">(하나 이상의 OTP가 이미 사용 가능)</string>
<string name="otpsecret_hint">OTP secret (예시: 01 23 ab cd…)</string>
<string name="CouldntLoadOtpAuxFile_Hint">OTPs를 사용하기 위해 데이터베이스를 설정하려면 KeePass 2.x (PC)에서 OtpKeyProv 플러그인을 사용하세요.</string>
<string name="otp_discarded_because_no_db">데이터베이스부터 선택하세요. OTP는 보안상의 이유로 폐기됩니다.</string>
<string name="otp_discarded_no_space">모든 OTPs가 이미 입력되었기 때문에 OTP 폐기되었습니다.</string>
<string name="otp_discarded_because_db_open">데이터베이스부터 닫아주세요. OTP는 폐기됩니다.</string>
<string name="otps_pending">(하나 이상의 OTPs가 이미 사용 가능)</string>
<string name="otpsecret_hint">OTP 비밀 (e.g. 01 23 ab cd…)</string>
<string name="CouldntParseOtpSecret">OTP secret 분석 오류!</string>
<string name="OtpKeyError">OTP 키 생성에 실패했습니다! 정확한 OTP를 입력하십시오.</string>
<string name="OtpKeyError">OTP 키 생성에 실패했습니다! 정확한 OTPs를 입력하세요.</string>
<string name="ErrorUpdatingOtpAuxFile">OTP 보조 파일 갱신 오류!</string>
<string name="SavingOtpAuxFile">보조 OTP 파일 저장...</string>
<string name="NoChallengeApp">이 시도를 다룰 수 있는 앱을 찾지 못했습니다.</string>
<string name="PleaseInstallApp">Google Play에서 %1$s을 설치해 주시기 바랍니다.</string>
<string name="AppOutdated">%1$s 앱은 더 이상 지원하지 않습니다.</string>
<string name="PleaseInstallApp">Google Play에서 %1$s을 설치해 주시기 바랍니다.</string>
<string name="AppOutdated">%1$s 더 이상 지원하지 않습니다.</string>
<string name="bad_resp">시도-응답이 잘못되었습니다.</string>
<string name="CouldntLoadChalAuxFile">보조 시도 파일을 불러올 수 없습니다!</string>
<string name="CouldntLoadChalAuxFile_Hint">KeeChallenge 플러그인을 KeePass 2.x (PC)에서 사용하여 시도-응답에 사용할 데이터베이스를 구성해 주십시!</string>
<string name="CouldntLoadChalAuxFile_Hint">KeeChallenge 플러그인을 KeePass 2.x (PC)에서 사용하여 시도-응답에 사용할 데이터베이스를 구성십시!</string>
<string name="ErrorUpdatingChalAuxFile">OTP 보조 파일 갱신 오류!</string>
<string name="TrayTotp_SeedField_title">TOTP 시드 필드 이름</string>
<string name="TrayTotp_SeedField_summary">기본값이 아닌 설정으로 Keepass 2 플러그인인 \"TrayTotp\" 를 사용하는 경우 PC의 설정에 따라 여기에 시드 필드의 필드을 입력하십시오.</string>
<string name="TrayTotp_SettingsField_title">TOTP 설정 필드</string>
<string name="TrayTotp_SettingsField_summary">여기에 TrayTotp의 설정 필드에 대한 필드을 입력하십시오.</string>
<string name="TrayTotp_SeedField_summary">기본값이 아닌 설정으로 Keepass 2 플러그인인 \"TrayTotp\" 를 사용하는 경우 PC의 설정에 따라 여기에 시드 필드의 필드 이름을 입력하십시오.</string>
<string name="TrayTotp_SettingsField_title">TOTP 설정 필드 이름</string>
<string name="TrayTotp_SettingsField_summary">여기에 TrayTotp의 설정 필드에 대한 필드 이름을 입력하십시오.</string>
<string name="TrayTotp_prefs">TrayTotp</string>
<string name="DebugLog_prefs_prefs">디버깅을 위한 로그 파일</string>
<string name="DebugLog_title">로그 파일 사용</string>
<string name="DebugLog_summary">앱의 출력을 내부 로그 파일에 작성합니다</string>
<string name="DebugLog_summary">앱의 출력을 내부 로그 파일에 쓰기</string>
<string name="DebugLog_send">디버그 로그 보내기...</string>
<string name="loading">불러오는 중…</string>
<string name="plugins">플러그인</string>
<string name="plugin_packagename">패키지:</string>
<string name="loading">로딩 중…</string>
<string name="plugins">플러그 </string>
<string name="plugin_packagename">패키지 이름:</string>
<string name="plugin_description">설명 (확인 되지 않음):</string>
<string name="plugin_author">저자 (확인 되지 않음):</string>
<string name="plugin_enabled">활성화됨</string>
<string name="plugin_disabled">비활성화됨</string>
<string name="plugin_web">온라인에서 러그인 찾기</string>
<string name="plugin_web">온라인에서 러그인 찾기</string>
<string name="plugin_scopes">범위</string>
<string name="not_enabled">비활성화됨</string>
<string name="query_credentials_for_url">%1$s가 %2$s의 계정 정보를 요청하고 있습니다.</string>
<string name="query_credentials">%1$s가 자격증명을 요청합니다. 항목을 선택하십시오.</string>
<string name="plugin_enabled_checkbox">사용 가능</string>
<string name="SCOPE_DATABASE_ACTIONS_title">데이터베이스 작업 알림</string>
<string name="SCOPE_DATABASE_ACTIONS_explanation">플러그인 데이터베이스가 열리거나 닫히거나 저장 될 때 알림을 받습니다.</string>
<string name="SCOPE_DATABASE_ACTIONS_explanation">플러그인 데이터베이스가 열리거나 닫히거나 저장 될 때 알림을 받습니다.</string>
<string name="SCOPE_CURRENT_ENTRY_title">현재 항목 데이터</string>
<string name="SCOPE_CURRENT_ENTRY_explanation">플러그인 현재 데이터베이스 항목에 대한 모든 데이터를 받아 액션을 제공하고 해당 표시를 수정할 수 있도록 허가니다.</string>
<string name="SCOPE_CURRENT_ENTRY_explanation">플러그인 현재 데이터베이스 항목에 대한 모든 데이터를 받아 액션을 제공하고 해당 표시를 수정도록 허가니다.</string>
<string name="SCOPE_QUERY_CREDENTIALS_FOR_OWN_PACKAGE_title">자신의 자격증명 요청</string>
<string name="SCOPE_QUERY_CREDENTIALS_FOR_OWN_PACKAGE_explanation">플러그인 자체 패키지와 연관된 자격 증명을 요청할 수 있도록 허가합니다.</string>
<string name="SCOPE_QUERY_CREDENTIALS_FOR_OWN_PACKAGE_explanation">플러그인 자체 응용 프로그램 패키지와 연관된 자격 증명을 요청 할 수 있니다.</string>
<string name="SCOPE_QUERY_CREDENTIALS_title">자격 증명 요청</string>
<string name="SCOPE_QUERY_CREDENTIALS_explanation">플러그인 사이트 또는 앱의 인증을 위해 자격 증명을 요청할 수 있도록 허가합니다.</string>
<string name="get_regular_version">더 많은 저장소 유형 가져오기</string>
<string name="CertificateWarning">경고: 서버 인증서 유효성 검사에 실패했습니다: %1$s. 기기에 적절한 루트 인증서를 설치하거나 설정을 확인하십시오!</string>
<string name="CertificateFailure">오류: 서버 인증서 유효성 검사에 실패했습니다. 기기에 적절한 루트 인증서를 설치하거나 설정을 확인하십시오!</string>
<string name="SCOPE_QUERY_CREDENTIALS_explanation">플러그인 웹사이트 또는 앱의 인증을 위해 자격 증명을 요청 할 수 있니다.</string>
<string name="get_regular_version">더 많은 저장소 종류를 가져오기</string>
<string name="CertificateWarning">경고: 서버 인증서 유효성 검사에 실패했습니다: %1$s. 장치의 적절한 루트 인증서를 설치하거나 설정을 확인하세요!</string>
<string name="CertificateFailure">오류: 서버 인증서 유효성 검사에 실패했습니다. 장치의 적절한 루트 인증서를 설치하거나 설정을 확인하세요!</string>
<string name="export_fileformats_title">파일 형식 선택</string>
<string name="killed_by_os">죄송합니다! Keepass2Android가 Android OS에 의해 강제종료 되었습니다! 보안상의 이유로 Keepass2Android는 선택한 자격 증명을 디스크에 저장하지 않으므로 데이터베이스를 다시 열어야합니다. 참고: 이 상황은 매우 드물게 발생합니다. crocoapps@gmail.com 으로 메시지를 보내주십시오.</string>
<string name="killed_by_os">죄송합니다! Keepass2Android는 안드로이드 OS에 의해 강제종료 되었습니다! 보안상의 이유로 Keepass2Android는 선택한 자격 증명을 디스크에 저장하지 않으므로 데이터베이스를 다시 열어야합니다. 참고: 이 상황은 매우 드물게 발생합니다. 그렇다면 crocoapps@gmail.com으로 메시지를 보내주십시오.</string>
<string name="FileIsTemporarilyAvailable">Keepass2Android에서 일시적으로만 사용할 수 있는 파일입니다.</string>
<string name="FileIsReadOnly">선택 파일 읽기 전용입니다.</string>
<string name="FileIsReadOnlyOnKitkat">선택 파일 Android 4.4 이상에서의 제한으로 인해 Keepass2Android에서 읽기 전용으로 열립니다.</string>
<string name="CopyFileRequired"> 파일을 사용하려면 다른 위치로 복사해야 합니다.</string>
<string name="CopyFileRequiredForEditing"> 파일을 수정하려면 다른 위치로 복사해야 합니다.</string>
<string name="FileIsReadOnly">귀하가 선택 파일 읽기 전용입니다.</string>
<string name="FileIsReadOnlyOnKitkat">선택 파일 Android 4.4 이상에서의 제한으로 인해 Keepass2Android에서 읽기 전용니다.</string>
<string name="CopyFileRequired"> 사용하려면 다른 위치로 복사 해야 합니다.</string>
<string name="CopyFileRequiredForEditing"> 수정 하려면 다른 위치로 복사 해야 합니다.</string>
<string name="ClickOkToSelectLocation">확인을 클릭하여 파일을 복사 할 위치를 선택하십시오.</string>
<string name="FileReadOnlyTitle">데이터베이스가 읽기 전용입니다</string>
<string name="FileReadOnlyMessagePre">Keepass2Android 현재 데이터베이스를 읽기 전용 모드로 열었습니다.</string>
<string name="ReadOnlyReason_PreKitKat">외부 앱에서 파일을 연 듯 합니다. 이 방법은 쓰기 권한이 지원되지 않습니다. 데이터베이스를 변경하려면 데이터베이스를 닫고 데이터베이스 변경을 선택해주십시오. 가능하다면 사용 가능한 옵션 중 하나에서 파일을 여십시오.</string>
<string name="FileReadOnlyMessagePre">Keepass2Android 현재 데이터베이스를 읽기 전용 모드로 열었습니다.</string>
<string name="ReadOnlyReason_PreKitKat">외부 앱에서 파일을 연 것처럼 보입니다. 이 방법은 쓰기권한이 지원되지 않습니다. 데이터베이스를 변경하려면 데이터베이스를 닫고 데이터베이스 변경을 선택십시오. 가능하다면 사용 가능한 옵션 중 하나에서 파일을 여세요.</string>
<string name="ReadOnlyReason_ReadOnlyFlag">읽기 전용 플래그가 설정됩니다. 데이터베이스를 변경하려면 이 플래그를 제거하십시오.</string>
<string name="ReadOnlyReason_ReadOnlyKitKat">Android KitKat에 도입 된 제한사항으로 인해 쓰기 권한이 없습니다. 데이터베이스를 변경하려면 데이터베이스를 닫고 데이터베이스 변경을 선택하십시오. 그런 다음 시스템 파일 선택기를 사용하여 파일을 여십시오.</string>
<string name="ReadOnlyReason_LocalBackup">내부 백업은 수정할 수 없습니다. 데이터베이스 설정 - 데이터베이스 내보내기를 사용하여 이 백업을 다시 열 수 있는 다른 위치로 내보낼 수 있습니다. 그러면 다시 수정할 수 있습니다.</string>
<string name="ReadOnlyReason_ReadOnlyKitKat">Android KitKat에 도입 된 제한사항으로 인해 쓰기 권한이 없습니다. 데이터베이스를 변경하려면 데이터베이스를 닫고 데이터베이스 변경을 선택하십시오. 그런 다음 시스템 파일 선택기를 사용하여 파일을 엽니다.</string>
<string name="ReadOnlyReason_LocalBackup">내부 백업은 수정할 수 없습니다. 데이터베이스 설정 - 데이터베이스 내보내기를 사용하여 이 백업을 다시 열 수 있는 다른 위치로 내보낼 수 있습니다. 그러면 다시 수 있습니다.</string>
<string name="AddCustomIcon">파일에서 아이콘을 추가...</string>
<string name="CopyingFile">파일 복사 중...</string>
<string name="DuplicateTitle">복사</string>
@@ -581,16 +582,16 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="TemplateField_Number">번호</string>
<string name="TemplateField_CreditCard_CVV">CVV</string>
<string name="TemplateField_CreditCard_PIN">PIN</string>
<string name="TemplateField_CreditCard_Owner">카드 소유자</string>
<string name="TemplateField_CreditCard_Owner">카드소유자</string>
<string name="TemplateTitle_CreditCard">신용카드</string>
<string name="TemplateTitle_Membership">멤버십</string>
<string name="ChangeLog_title">변경 로그</string>
<string name="AskAddTemplatesTitle">서식을 추가 하시겠습니까?</string>
<string name="AskAddTemplatesMessage">Keepass2Android에는 이메일 계정, 무선 LAN 암호, 보안 메모 등을 위한 입력 서식이 포함되어 있습니다. 데이터베이스에 추가 하시겠습니까? 아니를 선택하면 나중에 데이터베이스 설정에서 추가 할 수 있습니다.</string>
<string name="AskAddTemplatesTitle">템플릿을 추가 니까?</string>
<string name="AskAddTemplatesMessage">Keepass2Android에는 이메일 계정, 무선 LAN 암호, 보안 메모 등을 위한 입력 서식이 포함되어 있습니다. 데이터베이스에 추가 하시겠습니까? 아니를 선택하면 나중에 데이터베이스 설정에서 추가 할 수 있습니다.</string>
<string name="AddTemplates_pref">데이터베이스에 서식 추가</string>
<string name="PreviewWarning">주의하십시오! 이것은 프리뷰 릴리즈이며 몇 가지 결함이 있을 수 있습니다! *어떤 결함이든* 예기치 못한 일이 발생한다면 제게 알려주십시오. (Google+ 베타 테스터 그룹 또는 이메일을 통해 알려 주시면 됩니다.)</string>
<string name="PreviewWarning">주의하십시오! 이것은 미리보기 릴리즈이며 몇 가지 결함이 있을 수 있습니다! *어떠한* 예기치 않은 일이 발생하면 알려주십시오. (Google+ 베타 테스터 그룹 또는 이메일 알려 주시기 바랍니다)</string>
<string name="Continue">계속</string>
<string name="NoFilenameWarning">입력 한 URI가 파일이 아닌 같습니다. 정말로 올바른 파일이 맞습니까?</string>
<string name="NoFilenameWarning">입력 한 URI가 파일 이름이 아닌 같습니다. 정말로 올바른 파일니까?</string>
<string name="FirstInvalidCompositeKeyError">복합 키가 잘못 되었습니다! 다시 시도 하십시오.</string>
<string name="RepeatedInvalidCompositeKeyHelp">복합 키가 잘못 되었습니다! 데이터베이스 잠금을 해제하려면 다음 단계를 수행하십시오.:\n
@@ -600,13 +601,13 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="HintLocalBackupInvalidCompositeKey">\n
&#8226; 힌트: 데이터베이스 파일이 손상되었거나 마스터 키를 수정 한 후에 기억하지 못한다면 \"%1$s\"를 클릭하고 내부 백업을 선택하여 마지막으로 성공적으로 연 파일 버전을 시도 할 수 있습니다.</string>
<string name="HintLocalBackupOtherError">\n
&#8226; 힌트: Keepass2Android는 마지막으로 성공적으로 연 파일 버전을 내부 메모리에 저장했습니다. \"%1$s\" 항목을 탭하고 내부 백업을 선택하여 열 수 있습니다. </string>
&#8226; 힌트: Keepass2Android는 마지막으로 성공적으로 연 파일 버전을 내부 메모리에 저장했습니다. \"%1$s\" 탭하고 내부 백업을 선택하여 열 수 있습니다. </string>
<string name="CorruptDatabaseHelp">파일이 손상되었습니다. \n
다음은 문제를 진단하는 데 도움이되는 몇 가지 힌트입니다:\n
다음은 문제를 진단하는 데 도움이되는 몇 가지 힌트입니다. \n
&#8226; USB (MTP-Mode)로 파일을 복사 한 경우 MyPhoneExplorer와 같은 도구로 다시 시도하십시오. MTP 파일을 잘라내는 경우가 있습니다.\n
&#8226; PC의 동일한 위치에서 파일을 열 수 없으면 파일이 실제로 손상되었을 가능성이 큽니다. 데이터베이스 백업을 사용하십시오. Keepass2Android가 파일을 손상시켰다고 추정되면 지원 팀에 문의해 주십시오.\n
&#8226; PC에서 파일을 여는 것이 가능한 경우 지원에 문의해 주십시오. PC에 다른 설정(예: 압축이 풀린 상태)으로 저장한 후 Keepass2Android에서 다시 시도해볼 수 있습니다.
USB (MTP-Mode)로 파일을 복사 한 경우 MyPhoneExplorer와 같은 도구로 다시 시도하십시오. 어떤 경우 MTP 파일을 자릅니다. \n
PC의 동일한 위치에서 파일을 열 수 없으면 파일이 실제로 손상되었을 가능성이 큽니다. 데이터베이스 백업을 사용하십시오. Keepass2Android가 파일을 손상다고 가정하면 고객지원에 문의십시오. \n
PC에서 파일을 여는 것이 가능한 경우 고객지원에 문의십시오. PC에 다른 설정 (예: 압축풀기)으로 저장하려고 시도한 후 Keepass2Android에서 다시 시도해보십시오.
</string>
<string name="open_other_db">다른 데이터베이스 열기...</string>
@@ -615,13 +616,13 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="child_dbs_title">하위 데이터베이스</string>
<string name="unspecified">지정되지 않음</string>
<string name="child_db_explanation">하위 데이터베이스는 상위 데이터베이스를 열 때 자동으로 열 수 있는 다른 데이터베이스입니다. 그러므로, 하위 데이터베이스의 마스터 키와 파일 위치는 상위 데이터베이스에 저장됩니다. 이 기능은 몇몇 비밀번호를 다른 사람과 공유할 수 있게 합니다. 이 구현사항은 PC용 KeeAutoExec과 호환됩니다.</string>
<string name="child_db_enabled_on_this_device">기기에서 허용됨</string>
<string name="child_db_enable_on_this_device">기기에서 용하기</string>
<string name="child_db_disable_on_this_device">기기에서 사용 </string>
<string name="child_db_enable_a_copy_for_this_device">기기용으로 복사하기</string>
<string name="unconfigured_child_dbs">데이터베이스가 새 하위 데이터베이스들을 \"AutoOpen\" 그룹에 포함하고 있습니다. 이 하위 데이터베이스들기기에서 사용 할지 명시해 주십시오.</string>
<string name="child_db_enabled_on_this_device">장치에서 사용가능함</string>
<string name="child_db_enable_on_this_device">장치에서 용하기</string>
<string name="child_db_disable_on_this_device">장치에서 사용 불가능</string>
<string name="child_db_enable_a_copy_for_this_device">장치용으로 복사하기</string>
<string name="unconfigured_child_dbs">데이터베이스가 새 하위 데이터베이스들을 \"AutoOpen\" 그룹에 포함하고 있습니다. 이 하위 데이터베이스들장치에서 사용되어야한다면 지정해 주십시오.</string>
<string name="add_child_db">하위 데이터베이스 추가...</string>
<string name="EnableCopyForThisDevice_Info">하위 데이터베이스 설정의 복사본을 만들고 활성화합니다. 복사된 설정은 이 기기를 위해 특별히 추가됩니다.</string>
<string name="EnableCopyForThisDevice_Info">하위 데이터베이스 설정의 복사본을 만들고 활성화합니다. 복사된 설정은 이 장치를 위해 특별히 추가됩니다.</string>
<string name="Visible_title">표시</string>
<string name="child_db_Enabled_title">자동으로 열기</string>
<string name="database_file_heading">데이터베이스 파일</string>
@@ -632,21 +633,7 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="DbQuicklockedChannel_desc">QuickUnlock으로 잠긴 데이터베이스에 대한 알림</string>
<string name="EntryChannel_name">항목 알림</string>
<string name="EntryChannel_desc">현재 선택된 항목을 위한 간단한 접근 알림.</string>
<string-array name="ChangeLog_1_08">
<item>TOTP 클립보드 복사 알림 버튼 추가</item>
<item>TLS 1.2 지원을 위해 FluentFTP로 변경</item>
<item>사용자 경험과 지문 인식 잠금 해제 향상 및 안면 인식 잠금 해제 지원을 위해 BiometricPrompt API로 전환, 예시: Pixel 4 기기 등.</item>
<item>버그 수정</item>
</string-array>
<string name="ChangeLog_1_07b">버전 1.07b\n
* 네이티브 구현을 통해 Argon2 퍼포먼스 향상 (Chih-Hsuan Yen님께 감사드립니다!)\n
* 지문 아이콘을 클릭해서 지문 인식 비활성화 허용 (이를 통해 스크린 밑으로 나간 지문 인식 리더 문제를 피할 수 있습니다. marcoDallas님께 감사드립니다!)\n
* 암호 표기 토글 시 커서 위치 복구 (DDoSolitary님께 감사드립니다!)\n
* pCloud 구현 향상 (gilbsgilbs님께 다시 한번 감사드립니다!)\n
* 조금 더 많은 브라우저에서 자동 입력 지원 \n
* 새 OneDrive 구현: 비즈니스 용 OneDrive, 공유된 파일, 선택 가능한 액세스 범위, 다중 계정 지원 및 오프라인 접근 수정 포함\n
* 버그 수정
</string>
<string name="ShowKeyboardDuringFingerprintAuth">지문 인증이 활성화되면 암호 입력을 위한 소프트 키보드를 표시합니다.</string>
<string name="ChangeLog_1_07">버전 1.07\n
* 삼성 Android 9 장치에서 발생한 문제를 수정했습니다.\n
* 한 개 이상의 데이터베이스 열람을 허용했습니다. KeeAutoExec과 호환됩니다.\n
@@ -697,7 +684,7 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="ChangeLog_1_02"> 버전 1.02\n
* 몇 가지 보안 개선 사항. jean-baptiste.cayrou@thalesgroup.com과 vincent.fargues@thalesgroup.com 그리고 그들의 협력을 통한
보안 리포트 제공에 깊은 감사를 드립니다!\n
* 키보드 스왑 플러그인 지원 (암호 접근 옵션을 보세요): 루팅 되지 않은 장치에서 입력 방식을 자동적으로 전환 할 수 있습니다. XDA-Developers의 Mishaal Rahman님께 감사의 말을 전합니다.\n
* 키보드 스왑 플러그인 지원 (암호 접근 옵션을 보세요): 루팅 되지 않은 장치에서 입력 방식을 자동적으로 전환 할 수 있습니다. XDA-Developers의 Mishaal Rahman 감사의 말을 전합니다.\n
* 최신 크롬 버전에서의 접근성 서비스 문제 수정\n
* 지문 데이터를 불필요하게 지우는 문제 수정\n
* 사소한 충돌 수정\n
@@ -708,16 +695,16 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<string name="ChangeLog_1_01g"> 버전 1.01-g\n
* 오프라인으로 작업 할 때 충돌 문제 수정\n
* FTP(S) 자격 증명의 잘못된 인코딩 수정\n
* 원드라이브 및 이전 Android 버전에서 충돌 문제 수정\n
* OneDrive 및 이전 Android 버전에서 충돌 문제 수정\n
* 입력 화면에서 현지 시간으로 시간 표시\n
</string>
<string name="ChangeLog_1_01d"> 버전 1.01-d\n
* 원드라이브 파일 목록 수정\n
* OneDrive 파일 목록 수정\n
* 호스트 이름 확인이 실패 할 때도 인증서 오류를 무시할 수 있습니다 (일반적인 용도로는 권장되지 않음).\n
* 올바른 잠금 해제 코드에도 불구하고 QuickUnlock이 때때로 실패하는 문제 수정\n
</string>
<string name="ChangeLog_0_9_8c"> 버전 0.9.8c\n
* Microsoft Live SDK의 SSL 취약성 수정 (원드라이브를 통해 파일에 액세스 할 때 사용)\n
* Microsoft Live SDK의 SSL 취약성 수정 (OneDrive를 통해 파일에 액세스 할 때 사용)\n
* 버그 수정: 이전 버전에서의 중복된 입력 방법 수정 (하나가 충돌)\n
</string>
<string name="ChangeLog_1_01"> 버전 1.01\n
@@ -767,7 +754,7 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
* 스토리지 액세스 프레임 워크 지원 (KP2A 오프라인에서 SD 카드 및 Google 드라이브에 쓰기 가능)\n
* WebDAV URL (파일 대신 디렉토리) 을 입력 할 때 잘못된 사용자 입력을 탐지\n
* 비밀번호 글꼴 변경\n
* 드롭박스 계 변경 허가\n
* 드롭박스 계 변경 허가\n
* 버그 수정: 이제 OTP 비밀번호가 기억됩니다</string>
<string name="ChangeLog_0_9_7b">버전 0.9.7b\n
* 번역 업데이트\n
@@ -820,7 +807,7 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
* 이제 QuickUnlock 아이콘은 기본적으로 Android 4.2 이상의 기기에 표시되지 않습니다.\n </string>
<string name="ChangeLog_0_9_3_r5"><b>버전 0.9.3 r5</b>\n
* Xamarin의 수정 사항: Keepass2Android가 Android 4.4.2의 ART와 호환됩니다. 드디어!\n
* 버그 수정: 동기화 버그 (표시 새로 고침, http 변경 사항 확인), Android 2.x 기기의 버그, Google 드라이브 및 원드라이브 저장소 구현의 버그, 닫기 데이터베이스의 클립 보드 지우기, 첨부 파일 열기 버그, 키보드 문제 표시\n</string>
* 버그 수정: 동기화 버그 (표시 새로 고침, http 변경 사항 확인), Android 2.x 기기의 버그, Google 드라이브 및 OneDrive 저장소 구현의 버그, 닫기 데이터베이스의 클립 보드 지우기, 첨부 파일 열기 버그, 키보드 문제 표시\n</string>
<string name="ChangeLog_0_9_3"><b>버전 0.9.3</b>\n
* 수많은 개선사항을 포함한 새 키보드. 맞춤 설정을 참조하십시오.\n
* kdb (Keepass 1 파일) 에 대한 읽기 전용 지원. 실험용!\n
@@ -836,8 +823,8 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
* 향상된 SSL 인증서 유효성 검사\n
* 버그 수정\n</string>
<string name="ChangeLog_0_9_1"><b>버전 0.9.1</b>\n
* 통합된 SkyDrive 지원 (Keepass2Android 일반 버전 전용)\n
* Google 드라이브 통합에서의 문제 해결\n
* 통합된 SkyDrive 지원 (Keepass2Android 일반 버전 전용)\n
* 구글 드라이브 통합에서의 문제 해결\n
* NTLM 지원 추가</string>
<string name="ChangeLog_0_9"><b>버전 0.9</b>\n
* 통합된 드롭박스 및 Google 드라이브 지원 (읽기/쓰기 데이터베이스, Keepass2Android 일반 에디션 전용)\n
@@ -938,15 +925,15 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<item>명시적 암호화 (FTP over TLS, FTPS)</item>
</string-array>
<string-array name="cred_remember_modes">
<item>계정과 비밀번호를 기억하지 않습니다</item>
<item>계정만 기억합니다</item>
<item>계정과 비밀번호를 기억합니다</item>
<item>계정과 비밀번호를 기억하지 않습니다.</item>
<item>계정만 기억합니다.</item>
<item>계정과 비밀번호를 기억합니다.</item>
</string-array>
<string-array name="password_modes">
<item>비밀번호 인증</item>
<item>비밀번호 + 키 파일</item>
<item>비밀번호 + OTP</item>
<item>비밀번호 + OTP secret (복구 모드)</item>
<item>비밀번호 + OTP 비밀 (복구 모드)</item>
<item>비밀번호 + 시도-응답 인증</item>
<item>비밀번호 + 시도-응답 (복구 모드)</item>
<item>Keepass XC를 위한 비밀번호 + 시도-응답 인증</item>
@@ -957,30 +944,29 @@ Keepass2Android는 오프라인에서도 데이터베이스 파일의 사용이
<item>비공개/공개 키</item>
</string-array>
<string-array name="AcceptAllServerCertificates_options">
<item>인증서 유효성 검사 오류 무시</item>
<item>유효성 검사 실패 알림</item>
<item>유효하지 않은 인증서 허용 안 함</item>
<item>인증서 유효성 검사 오류 무시</item>
<item>유효성 검사 실패할 경우 알림</item>
<item>유효하지 않은 인증서 허용하지 않습니다.</item>
</string-array>
<string name="ClearClipboardWarning">이 기능이 시스템에서 작동하는지 확인하고 그렇지 않은 경우 내장 키보드 사용을 고려하십시오.</string>
<string name="PluginDescription">플러그인에서 제공 한 설명:</string>
<string name="autofill_hint">Keepass2Android는 Android의 자동 입력 기능을 지원하지만 아직 사용 설정이 되지 않은 것 같습니다.</string>
<string name="autofill_enable">자동 입력 활성화</string>
<string name="autofill_enable_failed">죄송합니다. 기기가 앱 내부에서 설정을 열 수 있도록 지원하지 않는 것 같습니다. 서비스를 사용하려면 시스템 설정으로 직접 이동하여 자동 입력을 활성화 해주십시오.</string>
<string name="show_autofill_help">자동 입력 도움말 보기</string>
<string name="autofill_hint">Keepass2Android는 Android의 자동 완성 기능을 지원하지만 아직 사용 설정을 하지 않은 것 같습니다.</string>
<string name="autofill_enable">자동 완성 활성화</string>
<string name="autofill_enable_failed">죄송합니다. 기기가 앱 내부에서 설정을 열 수 있도록 지원 하지 않는 것 같습니다. 서비스를 사용하려면 시스템 설정으로 직접 이동하여 자동 완성을 활성화 십시오.</string>
<string name="show_autofill_help">자동 완성 도움말 보기</string>
<string name="autofill_sign_in_prompt">Keepass2Android로 입력</string>
<string name="autofill_disable">%1$s에 대해 자동 입력 비활성화</string>
<string name="autofill_enable_for">%1$s에 대해 자동 입력 활성화</string>
<string name="autofill_disable">%1$s에 대해 자동완성 비활성화</string>
<string name="autofill_enable_for">%1$s에 대해 자동완성 활성화</string>
<string name="invalid_link_association">웹 도메인 %1$s를 앱 %2$s에 연결 할 수 없습니다.</string>
<string name="enable_fingerprint_hint">Keepass2Android가 생체 인식 장치를 발견했습니다. 데이터베이스를 생체 인식으로 잠금 해제하시겠습니까?</string>
<string name="understand">이해했습니다</string>
<string name="enable_fingerprint_hint">Keepass2Android가 지문인식장치를 발견했습니다. 데이터베이스를 지문인식으로 잠금 해제하시겠습니까?</string>
<string name="understand">이해했습니다.</string>
<string name="dont_show_again">다시 보지 않기</string>
<string name="masterkey_infotext_head">마스터 비밀번호를 기억하고 계십니까?</string>
<string name="masterkey_infotext_main">마스터 키가 없으면 데이터베이스를 열 수 없습니다. 마스터 비밀번호를 \"재설정\" 할 수 있는 방법은 없습니다.</string>
<string name="masterkey_infotext_fingerprint_note">생체 인식 잠금 해제는 마스터 키를 Android의 보안 저장소에 저장하여 작동합니다. 이 저장소는 새로운 지문이 추가되는 등 변경사항이 발생 시 언제든지 Android에 의해 삭제될 수 있습니다. 그러므로 지문에 완전히 의존하지 말고 마스터 비밀번호를 반드시 기억하십시오!</string>
<string name="masterkey_infotext_fingerprint_note">지문 인식 잠금 장치는 마스터 키를 Android의 보안 저장소에 저장하여 작동합니다. 이 저장소는 새로운 지문이 추가되는 등 변경사항이 발생 시 언제든지 Android에 의해 삭제될 수 있습니다. 그러므로 지문에 완전히 의존하지 말고 마스터 비밀번호를 반드시 기억하십시오!</string>
<string name="backup_infotext_head">데이터베이스가 백업 되어 있습니까?</string>
<string name="backup_infotext_main">Keepass2Android는 선택한 위치의 파일에 비밀번호를 저장합니다. 휴대폰를 분실하거나 도난 당했을 때나 파일이 파괴되거나 삭제 되었을 때 이 파일에 계속 액세스 할 수 있습니까? 항상 안전한 장소에 최신 백업이 있는지 반드시 확인하십시오!</string>
<string name="backup_infotext_note">지금 백업을 만드려면, %1$s &gt; %2$s &gt; %3$s로 가십시오.</string>
<string name="emergency_infotext_head">긴급 상황에 대비하고 있습니까?</string>
<string name="emergency_infotext_main">더 이상 암호 데이터베이스에 접근 할 수 없다면 어떻게 될지 생각해 보셨습니까? 만약 사고가 났다면? 비상 사태의 경우 신뢰할 수 있는 사람에게 마스터 키를 전달하는 것이 좋습니다. 그렇지 않으면 누구도 귀하의 비밀번호에 액세스 할 수 없습니다.</string>
<string name="no_secure_display">현재 유효한 화면이 안전하다고 판단되지 않습니다.이는 다른 앱이 스크린샷을 찍을 수 있다는 것을 의미합니다. Keepass2Android는 민감한 정보를 안전한 화면에서만 표시하도록 설정되어 있습니다. 안전한 화면으로 전환(예시: HDMI 모니터 제거)하거나 앱의 설정을 변경해 주십시오.</string>
<string name="backup_infotext_note">지금 백업을 만드려면, %1$s &gt; %2$s &gt; %3$s로 가세요.</string>
<string name="emergency_infotext_head">긴급 상황에 대비 하고 있습니까?</string>
<string name="emergency_infotext_main">더 이상 암호 데이터베이스에 접근 할 수 없다면 어떻게 될지 생각해 보셨습니까? 사고가 났다면? 비상 사태의 경우 신뢰 할 수 있는 사람에게 마스터 키를 전달하는 것이 좋습니다. 그렇지 않으면 누구도 귀하의 비밀번호에 액세스 할 수 없습니다.</string>
</resources>

View File

@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--Generated by crowdin.net-->
<resources>
<string name="about_feedback">Tilbakemelding</string>
@@ -37,6 +38,7 @@
<string name="FileHandling_prefs">Filhåndtering</string>
<string name="keyboard_prefs">Tastatur</string>
<string name="export_prefs">Eksporter database...</string>
<string name="fingerprint_prefs">Fingeravtrykk opplåsing</string>
<string name="import_db_prefs">Importer databasen til en intern mappe</string>
<string name="import_keyfile_prefs">Importer nøkkelfil til intern mappe</string>
<string name="keyboardswitch_prefs">Tastatur veksling</string>
@@ -67,6 +69,25 @@
<string name="disclaimer_formal">Keepass2Android kommer HELT UTEN NOEN FORM FOR GARANTI; Dette er fri programvare, og du er velkommen til å redistribuere det under vilkårene i GPL versjon 2 eller senere.</string>
<string name="ellipsis">\u2026</string>
<string name="copy_to_clipboard">Kopier til utklippstavle</string>
<string name="fingerprint_hint">Trykksensor</string>
<string name="fingerprint_description">Bekreft fingeravtrykk for å fortsette</string>
<string name="fingerprint_fatal">Kan ikke sette opp fingeravtrykksopplåsning:</string>
<string name="fingerprint_not_recognized">Fingeravtrykk ikke gjenkjent. Prøv igjen</string>
<string name="fingerprint_success">Fingeravtrykk gjenkjent</string>
<string name="fingerprint_os_error">Fingeravtrykksopplåsning krever Android 6.0 eller nyere.</string>
<string name="fingerprint_hardware_error">Ingen fingeravtrykksleser funnet.</string>
<string name="fingerprint_no_enrolled">Du har ingen lagrede fingeravtrykk på denne enheten. Venligst gå til systeminnstillinger først.</string>
<string name="disable_fingerprint_unlock">Deaktiver fingeravtrykk opplåsning</string>
<string name="enable_fingerprint_unlock">Aktiver fingeravtrykk opplåsning</string>
<string name="enable_fingerprint_quickunlock">Slå på fingeravtrykk opplåsning i QuickUnlock</string>
<string name="fingerprint_unlock_hint">Trykk på sensoren for å låse opp databasen</string>
<string name="fingerprint_unlock_failed">Opplåsing med fingeravtrykk mislyktes. Dekrypteringsnøkkelen har blitt trukket tilbake av Android OS. Dette skjer vanligvis dersom et nytt fingeravtrykk har blitt registrert eller sikkerhetsinnstillingene har blitt endret.</string>
<string name="fingerprint_disabled_wrong_masterkey">Kunne ikke låse opp databasen: Ugyldig sammensatt nøkkel. Opplåsing med fingeravtrykk har blitt deaktivert fordi det lagrede hovedpassordet tilsynelatende ikke er gyldig lenger. </string>
<string name="fingerprint_reenable">Vennligst aktiver fingeravtrykk opplåsning for det nye master passordet.</string>
<string name="fingerprint_reenable2">Vennligst benytt passord for å låse opp og deretter slå på opplåsing med fingeravtrykk igjen i databaseinnstillingene.</string>
<string name="FingerprintInitFailed">Kunne ikke initialisere fingeravtrykksensoren. </string>
<string name="enable_fingerprint_unlock_Info">Dette vil lagre hovedpassordet ditt på enheten, kryptert med Android nøkkelring og beskyttet av fingeravtrykksautentisering. Dette gjør det mulig å låse opp databasen din ved bruk av ditt fingeravtrykk.</string>
<string name="enable_fingerprint_quickunlock_Info">Tillater opplåsing ved hjelp av fingeravtrykk i stedet for QuickUnlock. Lagrer ingen informasjon relatert til hovedpassordet ditt.</string>
<string name="enter_filename">Angi filnavnet for databasen</string>
<string name="entry_accessed">Brukt</string>
<string name="entry_cancel">Avbryt</string>
@@ -223,6 +244,7 @@
<string name="ShowUsernameInList_summary">Vis brukernavn under oppføringstitler. Nyttig for flere kontoer eller TANs.</string>
<string name="RememberRecentFiles_title">Husk databaser</string>
<string name="RememberRecentFiles_summary">Husk nylig åpnede databaser og vis dem i skjermbildet for åpne databaser.</string>
<string name="kp2a_findUrl">Keepass2Android: Finn passord</string>
<string name="excludeExpiredEntries">Utelukk utløpte oppføringer</string>
<string name="search_options">Alternativer</string>
<string name="caseSensitive">Skill mellom små og store bokstaver</string>
@@ -520,6 +542,7 @@ Her er noen tips som kan hjelpe med å feilsøke problemet:\n
<string name="DbQuicklockedChannel_desc">Varsel om at databasen har blitt låst med QuickUnlock</string>
<string name="EntryChannel_name">Varsel om oppføring</string>
<string name="EntryChannel_desc">Varsel for å forenkle tilgangen til den valgte oppføringen.</string>
<string name="ShowKeyboardDuringFingerprintAuth">Vis skjermtastatur for passordinntasting når fingeravtrykkleser er aktiv.</string>
<string name="ChangeLog_1_05">Versjon 1.05\n
* Benytter varslingskanaler på Android 8, slik at oppsett kan gjøres i systeminnstillingene\n
* Viser varsel for oppføring\n
@@ -687,6 +710,7 @@ Her er noen tips som kan hjelpe med å feilsøke problemet:\n
<string name="dont_show_again">Ikke vis dette igjen</string>
<string name="masterkey_infotext_head">Husker du hovedpassordet?</string>
<string name="masterkey_infotext_main">Vær oppmerksom på at du ikke vil kunne åpne databasen uten hovednøkkelen. Det finnes ingen måte å \"nullstille\" hovedpassordet på.</string>
<string name="masterkey_infotext_fingerprint_note">Vær også oppmerksom på at opplåsing med fingeravtrykk fungerer ved at hovedpassordet lagres i Androids sikre lager. Dette lageret kan slettes av Android når som helst, f.eks. dersom du legger inn nytt fingeravtrykk i systeminnstillingene. Du kan ikke basere deg kun på fingeravtrykket, men vær så snill å sørge for å huske hovedpassordet!</string>
<string name="backup_infotext_head">Har du sikkerhetskopiert databasen?</string>
<string name="backup_infotext_main">Keepass2Android lagrer dine passord i en fil på valgfritt sted. Er du sikker på at du fortsatt har tilgang på denne filen dersom du mister telefonene eller den blir stålet, eller dersom filen blir ødelagt eller slettet? Vennligst kontroller at du alltid har en oppdatert sikkerhetskopi på et trygt sted!</string>
<string name="backup_infotext_note">For å opprette en sikkerhetskopi nå, gå til %1$s &gt; %2$s &gt; %3$s.</string>

Some files were not shown because too many files have changed in this diff Show More