Compare commits

...
17 Commits
Author SHA1 Message Date
sora 2a9a0463b9 Update .github/workflows/build.yml 2026-09-20 08:59:35 +02:00
bot 29006aae25 Merge pull request 'Update plugin com.android.library to v9.4.1' (#332) from renovate/com.android.library-9.x into main 2026-09-20 04:02:43 +02:00
Renovate Bot 0994a7ba72 Update plugin com.android.library to v9.4.1 2026-09-20 02:02:41 +00:00
bot 391e530953 Merge pull request 'Update dependency joda-time:joda-time to v2.14.4' (#335) from renovate/joda-time-joda-time-2.x into main 2026-09-20 04:02:32 +02:00
Renovate Bot 6ab13de711 Update dependency joda-time:joda-time to v2.14.4 2026-09-20 02:02:29 +00:00
sora 28b0d15511 Update README.md 2026-09-19 18:23:40 +02:00
sora 598293d0ac Upload files to ".github/images" 2026-09-19 18:20:59 +02:00
sora 9791607581 Update .github/workflows/build.yml 2026-09-19 12:17:34 +02:00
sora b311932e27 Add PRIVACY.md 2026-09-19 11:40:00 +02:00
bot 8f249e351d Merge pull request 'Update plugin com.android.application to v9.4.1' (#331) from renovate/com.android.application-9.x into main 2026-09-19 04:02:51 +02:00
Renovate Bot 9797e249f3 Update plugin com.android.application to v9.4.1 2026-09-19 02:02:50 +00:00
sora 978cc062d2 Update .github/workflows/build.yml 2026-09-18 23:27:11 +02:00
sora 5b5a204bf4 Update .github/workflows/build.yml 2026-09-18 22:39:09 +02:00
sora 5ccb4aa900 Update .github/workflows/build.yml 2026-09-18 22:37:16 +02:00
sora fa658c525c Update .github/workflows/build.yml 2026-09-18 22:30:28 +02:00
sora 8596906ef1 Update .github/workflows/build.yml 2026-09-18 22:19:11 +02:00
sora 7ab553e85c Add app/src/main/assets/adi-registration.properties 2026-09-18 11:57:18 +02:00
8 changed files with 118 additions and 5 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

+19 -1
View File
@@ -40,6 +40,11 @@ jobs:
gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch keystore.asc > app/keystore.properties 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 gpg -d --passphrase "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}" --batch key.asc > app/key.jks
- name: Generate Dynamic Release Notes
run: |
mkdir -p tmp/whatsnew
echo "Various improvements for you to experience..." > tmp/whatsnew/whatsnew-en-US
- name: create and checkout branch - name: create and checkout branch
if: github.event_name == 'pull_request' if: github.event_name == 'pull_request'
env: env:
@@ -69,7 +74,9 @@ jobs:
else else
VERSION_NAME="${VERSION_BASE}" VERSION_NAME="${VERSION_BASE}"
fi fi
./gradlew assembleSignedRelease -PVERSION_CODE=$VERSION_CODE -PVERSION_NAME=$VERSION_NAME ./gradlew bundleSignedRelease assembleSignedRelease -PVERSION_CODE=$VERSION_CODE -PVERSION_NAME=$VERSION_NAME
# ./gradlew assembleSignedRelease -PVERSION_CODE=$VERSION_CODE -PVERSION_NAME=$VERSION_NAME
# ./gradlew bundleSignedRelease -PVERSION_CODE=$VERSION_CODE -PVERSION_NAME=$VERSION_NAME
- name: Upload APK - name: Upload APK
uses: actions/upload-artifact@v7 uses: actions/upload-artifact@v7
@@ -90,3 +97,14 @@ jobs:
else else
echo "true" echo "true"
fi fi
- name: Upload to Google Play
uses: r0adkll/upload-google-play@v1
if: startsWith(github.ref, 'refs/tags/')
with:
serviceAccountJsonPlainText: ${{ secrets.SERVICE_ACCOUNT_JSON }}
packageName: net.helcel.fidelity
releaseFiles: app/build/outputs/bundle/signedRelease/app-signedRelease.aab
tracks: ${{ startsWith(github.ref, 'refs/tags/') && 'production' || 'alpha' }}
status: completed
whatsNewDirectory: tmp/whatsnew
+77
View File
@@ -0,0 +1,77 @@
# Privacy Policy for Keepass Fidelity
**App:** Keepass Fidelity (`net.helcel.fidelity`)
**Developer:** Helcel
**Effective date:** 19 September 2026
## What we collect
Nothing. We operate no servers and receive no data from the app. Keepass
Fidelity has no internet access, no account, and contains no analytics,
advertising, or tracking libraries.
## Your data
Your loyalty cards (names and barcodes) are stored in the
KeePass database you choose, not in a separate store controlled by us:
- **Standalone mode:** the app opens a `.kdbx` file you select, using the
bundled KeePassDX engine. The file stays where you put it, encrypted by
KeePass with your password or key file.
- **Keepass2Android plugin mode:** entries are read and created through the
Keepass2Android app installed on your device. That app holds the database and
its own privacy policy applies to it.
Your database password is used only to unlock your database on the device. It is
never stored anywhere by us and never leaves your device.
If your database file is kept in a folder synchronised by another app or cloud
service, that service handles the file under its own privacy policy.
## On-device cache
For quick access, the app keeps a recently-used history and may cache entry data
in its private storage. You can mark individual entries to be excluded from
caching, and the cache can be cleared from the app or by clearing the app's data
in Android Settings.
## Permissions
- `CAMERA` — scanning a barcode to create an entry. Camera frames are processed
on the device and are not stored or transmitted.
- `READ_MEDIA_VISUAL_USER_SELECTED` — reading a barcode from an image you
explicitly select. Only the images you pick are accessed, and only while
importing.
## Retention and deletion
Cached data and history remain until you clear them or uninstall the app.
Uninstalling does not delete your KeePass database, which is your own file:
delete it yourself, or remove entries through the app or any KeePass client.
## Children
Keepass Fidelity is suitable for all ages and collects no data from any user,
including children.
## Security
Your cards are protected by KeePass encryption, which depends on the strength of
the password or key file you choose. On-device cache and history are held in the
app's private storage, protected by the Android sandbox.
## Open source
Keepass Fidelity is released into the public domain under the Unlicense. The
full source is available at https://github.com/helcel-net/keepass-fidelity, so
these statements can be independently verified.
## Changes
Any change affecting privacy will be published in this document before or with
the release that introduces it.
## Contact
Email: net.helcel+privacy@google.com
Issues: https://github.com/helcel-net/keepass-fidelity/issues
+18 -1
View File
@@ -43,13 +43,23 @@
<div style="display: flex; justify-content: center; align-items: center; flex-direction: row;"> <div style="display: flex; justify-content: center; align-items: center; flex-direction: row;">
<a href="https://apt.izzysoft.de/fdroid/index/apk/net.helcel.fidelity"> <a href="https://apt.izzysoft.de/fdroid/index/apk/net.helcel.fidelity">
<img width="200" height="80" alt="Izzy Download" src=".github/images/izzy.png"> <img width="200" height="84" alt="Izzy Download" src=".github/images/izzy.png">
</a> </a>
<a href="https://github.com/helcel-net/keepass-fidelity/releases/latest"> <a href="https://github.com/helcel-net/keepass-fidelity/releases/latest">
<img width="200" height="84" alt="APK Download" src=".github/images/apk.png"> <img width="200" height="84" alt="APK Download" src=".github/images/apk.png">
</a> </a>
<a future-href="https://f-droid.org/en/packages/net.helcel.fidelity">
<img width="200" height="84" alt="Fdroid Download" src=".github/images/fdroid.png">
</a>
<a href="https://play.google.com/store/apps/details?id=net.helcel.fidelity">
<img width="200" height="84" alt="GooglePlay Download" src=".github/images/playstore.png">
</a>
</div> </div>
Note:
- Fdroid: requested, see https://gitlab.com/fdroid/rfp/-/work_items/4411
- PlayStore: alpha test restriction by Google. To access, join https://groups.google.com/g/helcel-android-test
## ⚙️ Permissions ## ⚙️ Permissions
- `CAMERA`: necessary for importing barcodes from camera - `CAMERA`: necessary for importing barcodes from camera
@@ -68,6 +78,13 @@ Keepass-Fidelity is a user-driven project. We welcome any contribution, big or s
Thanks to all contributors, the developers of our dependencies, and our users. Thanks to all contributors, the developers of our dependencies, and our users.
## Signinig key
```
net.helcel.fidelity
D1:96:54:FE:1D:79:16:76:47:D7:A6:12:0E:F6:AB:7D:56:9D:45:AD:FD:41:EF:D6:FA:80:9D:26:52:73:F6
```
## 📝 License ## 📝 License
``` ```
+1 -1
View File
@@ -145,7 +145,7 @@ dependencies {
//Submodule //Submodule
//noinspection NewerVersionAvailable //noinspection NewerVersionAvailable
implementation 'joda-time:joda-time:2.14.3' implementation 'joda-time:joda-time:2.14.4'
implementation 'org.joda:joda-convert:3.0.1' implementation 'org.joda:joda-convert:3.0.1'
testImplementation 'junit:junit:4.13.2' testImplementation 'junit:junit:4.13.2'
@@ -0,0 +1 @@
CUE6FCSBR6JIAAAAAAAAAAAAAA
+2 -2
View File
@@ -7,8 +7,8 @@ buildscript {
} }
plugins { plugins {
id 'com.android.application' version '9.3.2' apply false id 'com.android.application' version '9.4.1' apply false
id 'com.android.library' version '9.3.2' apply false id 'com.android.library' version '9.4.1' apply false
id 'org.jetbrains.kotlin.android' version '2.3.21' apply false id 'org.jetbrains.kotlin.android' version '2.3.21' apply false
id 'com.autonomousapps.dependency-analysis' version '3.13.0' apply true id 'com.autonomousapps.dependency-analysis' version '3.13.0' apply true
} }