Compare commits
26 Commits
1.2a
...
1840ec3a78
Author | SHA1 | Date | |
---|---|---|---|
1840ec3a78 | |||
ba2d0ac024 | |||
f33b4672b0 | |||
b6b69587fa | |||
06a006c0a2 | |||
8ae38f4250 | |||
3e1252cc0a | |||
e4357a66e0 | |||
21f2c0d69f | |||
340789989c | |||
2428f4e50b | |||
f4c9eddd22 | |||
6a5e971619 | |||
5829f18908 | |||
426d94ba81 | |||
a58d208d49 | |||
069edaf6a2 | |||
d0aa2fbeb9 | |||
17c75f27bc | |||
1738664f83 | |||
a5b55fe214 | |||
0cd90413d1 | |||
653ee1ccc1
|
|||
9b6a69e227 | |||
e40305b680
|
|||
668e9d653f
|
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -32,7 +32,7 @@ jobs:
|
||||
gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch keystore.asc > app/keystore.properties
|
||||
gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch key.asc > app/key.jks
|
||||
|
||||
- uses: gradle/wrapper-validation-action@v2
|
||||
- uses: gradle/wrapper-validation-action@v3
|
||||
|
||||
- name: create and checkout branch
|
||||
if: github.event_name == 'pull_request'
|
||||
|
@ -47,7 +47,8 @@
|
||||
|
||||
## ⚙️ Permissions
|
||||
|
||||
- `CAMERA`: necessary for the scanning of barcodes
|
||||
- `CAMERA`: necessary for importing barcodes from camera
|
||||
- `READ_MEDIA_VISUAL_USER_SELECTED`: necessary for the importing barcode from images
|
||||
|
||||
## 📝 Contribute
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
plugins {
|
||||
id 'com.android.application'
|
||||
id 'org.jetbrains.kotlin.android'
|
||||
id 'org.jetbrains.kotlin.plugin.serialization' version '1.9.23'
|
||||
id 'org.jetbrains.kotlin.plugin.serialization' version '1.9.24'
|
||||
}
|
||||
|
||||
|
||||
@ -34,6 +34,7 @@ android {
|
||||
buildTypes {
|
||||
debug {
|
||||
debuggable true
|
||||
signingConfig = signingConfigs.getByName("release")
|
||||
}
|
||||
release {
|
||||
minifyEnabled true
|
||||
@ -73,11 +74,11 @@ android {
|
||||
dependencies {
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.4'
|
||||
|
||||
implementation 'androidx.camera:camera-lifecycle:1.3.2'
|
||||
implementation 'androidx.camera:camera-view:1.3.2'
|
||||
runtimeOnly 'androidx.camera:camera-camera2:1.3.2'
|
||||
implementation 'androidx.camera:camera-lifecycle:1.3.3'
|
||||
implementation 'androidx.camera:camera-view:1.3.3'
|
||||
runtimeOnly 'androidx.camera:camera-camera2:1.3.3'
|
||||
|
||||
implementation 'com.google.code.gson:gson:2.10.1'
|
||||
implementation 'com.google.android.material:material:1.11.0'
|
||||
implementation 'com.google.code.gson:gson:2.11.0'
|
||||
implementation 'com.google.android.material:material:1.12.0'
|
||||
implementation 'com.google.zxing:core:3.5.3'
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:versionCode="6"
|
||||
android:versionName="1.2a">
|
||||
android:versionCode="7"
|
||||
android:versionName="1.2b">
|
||||
|
||||
<uses-feature android:name="android.hardware.camera" />
|
||||
|
||||
|
@ -151,6 +151,11 @@ class CreateEntry : Fragment() {
|
||||
kpEntry.second
|
||||
)
|
||||
)
|
||||
if (!binding.checkboxProtected.isChecked) {
|
||||
val r = KeepassWrapper.entryExtract(kpEntry.first)
|
||||
CacheManager.addFidelity(r)
|
||||
}
|
||||
activity?.supportFragmentManager?.popBackStack()
|
||||
} catch (e: ActivityNotFoundException) {
|
||||
ErrorToaster.noKP2AFound(context)
|
||||
} catch (e: Exception) {
|
||||
|
@ -68,7 +68,7 @@ class Scanner : Fragment() {
|
||||
this.fmt = format
|
||||
}
|
||||
val isDone = this.code.isNotEmpty() && this.fmt.isNotEmpty()
|
||||
requireActivity().runOnUiThread {
|
||||
activity?.runOnUiThread {
|
||||
binding.btnScanDone.isEnabled = isDone
|
||||
binding.ScanActive.isEnabled = !isDone
|
||||
}
|
||||
|
@ -7,8 +7,8 @@ import org.json.JSONObject
|
||||
object Kp2aControl {
|
||||
|
||||
fun getAddEntryIntent(
|
||||
fields: HashMap<String?, String?>,
|
||||
protectedFields: ArrayList<String?>?
|
||||
fields: HashMap<String, String>,
|
||||
protectedFields: ArrayList<String>?
|
||||
): Intent {
|
||||
val outputData = JSONObject((fields as Map<*, *>)).toString()
|
||||
val startKp2aIntent = Intent(Strings.ACTION_START_WITH_TASK)
|
||||
|
@ -21,10 +21,10 @@ object KeepassWrapper {
|
||||
code: String,
|
||||
format: String,
|
||||
protectCode: Boolean,
|
||||
): Pair<HashMap<String?, String?>, ArrayList<String?>> {
|
||||
): Pair<HashMap<String, String>, ArrayList<String>> {
|
||||
|
||||
val fields = HashMap<String?, String?>()
|
||||
val protected = ArrayList<String?>()
|
||||
val fields = HashMap<String, String>()
|
||||
val protected = ArrayList<String>()
|
||||
fields[KeepassDef.TitleField] = title
|
||||
fields[KeepassDef.UrlField] =
|
||||
"androidapp://" + fragment.requireActivity().packageName
|
||||
|
@ -1,8 +1,8 @@
|
||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||
|
||||
plugins {
|
||||
id 'com.android.application' version '8.3.1' apply false
|
||||
id 'com.android.library' version '8.3.1' apply false
|
||||
id 'org.jetbrains.kotlin.android' version '1.9.23' apply false
|
||||
id 'com.autonomousapps.dependency-analysis' version '1.30.0' apply true
|
||||
id 'com.android.application' version '8.4.1' apply false
|
||||
id 'com.android.library' version '8.4.1' apply false
|
||||
id 'org.jetbrains.kotlin.android' version '2.0.0' apply false
|
||||
id 'com.autonomousapps.dependency-analysis' version '1.32.0' apply true
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 19 KiB |
1
metadata/en-US/permission_description.txt
Normal file
1
metadata/en-US/permission_description.txt
Normal file
@ -0,0 +1 @@
|
||||
<ul><li><b>CAMERA:</b> necessary for importing barcodes from camera</li><li><b>READ_MEDIA_VISUAL_USER_SELECTED:</b> necessary for the importing barcode from images</li></ul>
|
Reference in New Issue
Block a user