Prepare Android release artifacts and listing (#112)
Add Rust distribution auditing, pinned post-build AAB signing, complete offline third-party notices, an Android privacy policy and reviewable Play listing assets. Preserve the application ID and audit both ARM ABIs, native symbols, baseline profiles and R8 mapping. Fix dialog focus ownership, navigation-triggered cleanup loops and stale authentication errors after first-run setup, with native and real-activity regressions. Google Play publication is deferred by the user. Issue #112 remains open for production signing, Console declarations and actual Play install/update verification.
No files matched your search
@@ -0,0 +1,42 @@
|
||||
# Google Play listing draft
|
||||
|
||||
`listing.toml` is the English text for publisher review. Nothing in this directory
|
||||
has been uploaded to Google Play. Account enrollment, legal declarations,
|
||||
production signing, the rating questionnaire and publication are still pending.
|
||||
See `docs/android/distribution.md` for the release gate and remaining evidence.
|
||||
|
||||
## Graphics
|
||||
|
||||
- `graphics/icon.png`: 512×512, 32-bit PNG, using the existing vault artwork.
|
||||
- `graphics/feature-graphic.png`: 1024×500, opaque 24-bit PNG. Its editable SVG
|
||||
combines that same artwork with the app name and GPG/Git/TOTP description.
|
||||
|
||||
The source SVGs reference the existing Android vault image. Exports use the
|
||||
system Arial font. No store badges, ratings or unsupported security claims are
|
||||
included.
|
||||
|
||||
## Phone screenshots
|
||||
|
||||
The four numbered PNGs under `screenshots/` are opaque 24-bit, 1080×1920 images
|
||||
captured from the actual optimized Android app on the retained ARM64 API 37
|
||||
emulator on 15 October 2026. They contain only agent-managed demonstration data:
|
||||
|
||||
1. Home: a local Git branch, three commits and a clean working tree.
|
||||
2. Passwords: a demonstration folder and a locked password entry.
|
||||
3. TOTP: cached-entry search and the genuine empty-catalog state; no invented OTP.
|
||||
4. Privacy: the offline Android privacy policy with its normal scrollable dialog.
|
||||
|
||||
These descriptions can also be used as screenshot alt text. No password,
|
||||
passphrase, key, token, repository location or diagnostic transcript is shown.
|
||||
|
||||
Android Studio's native capture includes the physical 1080×2400 display. The
|
||||
temporary logical display was 1080×1920, letterboxed with 240 pixels above and
|
||||
below. Unmodified captures are retained in `screenshots/source/`; each SVG
|
||||
exports exactly that logical viewport, without scaling or changing app pixels.
|
||||
The emulator's original display size and Android Studio screenshot destination
|
||||
were restored afterward. These are phone assets; tablet screenshots have not
|
||||
been captured or submitted.
|
||||
|
||||
The exported PNG dimensions, bit depth, color type and file-size limits were
|
||||
checked, and the visible captures were reviewed for blank/transient frames and
|
||||
secrets. Recheck current Play requirements and the final app before submission.
|
||||
|
After Width: | Height: | Size: 429 KiB |
@@ -0,0 +1,10 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1024" height="500" viewBox="0 0 1024 500">
|
||||
<title>IronStorage — local-first passwords with GPG, Git and TOTP</title>
|
||||
<rect width="1024" height="500" fill="#191d26"/>
|
||||
<image xlink:href="../../app/src/main/res/drawable-nodpi/ic_vault.png" width="500" height="500"/>
|
||||
<rect x="500" width="1" height="500" fill="#444955"/>
|
||||
<rect x="548" y="134" width="48" height="4" rx="2" fill="#d5c0f2"/>
|
||||
<text x="545" y="216" fill="#faf8ff" font-family="Arial, sans-serif" font-size="54" font-weight="700">IronStorage</text>
|
||||
<text x="548" y="272" fill="#d8dce5" font-family="Arial, sans-serif" font-size="27">Local-first passwords</text>
|
||||
<text x="548" y="319" fill="#b3bac8" font-family="Arial, sans-serif" font-size="24">GPG · Git · TOTP</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 845 B |
|
After Width: | Height: | Size: 470 KiB |
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="512" viewBox="0 0 512 512">
|
||||
<title>IronStorage vault icon</title>
|
||||
<image xlink:href="../../app/src/main/res/drawable-nodpi/ic_vault.png" width="512" height="512"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 278 B |
@@ -0,0 +1,37 @@
|
||||
# Draft listing; publication and the IARC questionnaire are still pending.
|
||||
locale = "en-US"
|
||||
title = "IronStorage"
|
||||
short_description = "Local-first pass-compatible passwords, TOTP, Autofill and HTTPS Git sync."
|
||||
category = "PRODUCTIVITY"
|
||||
contains_ads = false
|
||||
support_url = "https://git.rfc1437.de/hugo/IronStorage/issues"
|
||||
privacy_url = "https://git.rfc1437.de/hugo/IronStorage/src/branch/main/android/features/src/main/res/raw/privacy.txt"
|
||||
full_description = """
|
||||
Keep control of your password store. IronStorage works locally with the standard
|
||||
pass repository format: GPG-encrypted entries in a Git repository.
|
||||
|
||||
Create a local store or connect your own HTTPS Git server. Browse folders, search
|
||||
entries, generate passwords, edit credentials and synchronize changes. Configure
|
||||
your own GPG recipients and Git identity. IronStorage does not require an
|
||||
IronStorage account or operate a password-storage service.
|
||||
|
||||
Use time-based one-time passwords, including cached discovery and search while
|
||||
the store is locked. Optional Android biometric unlock protects saved
|
||||
passphrases with Android Keystore. Enable Autofill in Android settings or, on
|
||||
Android 14 and later, select IronStorage as a Credential Manager provider.
|
||||
Credential selection remains under your control.
|
||||
|
||||
Transfer compatible GPG key material through QR codes. Camera frames are
|
||||
processed on your device. Review the warning before exporting private keys.
|
||||
|
||||
No advertising or analytics. Your optional HTTPS Git host receives your encrypted
|
||||
repository and unencrypted Git metadata; its administrator controls retention.
|
||||
Android cloud backup and device transfer are disabled. Uninstalling removes the
|
||||
local store and protected records: keep independent copies of the repository,
|
||||
GPG private keys and passphrases you need. Synchronization is not a substitute
|
||||
for a recovery plan.
|
||||
|
||||
Requires Android 8.0 or later on ARM. Autofill and biometric availability depend
|
||||
on Android and device configuration. Credential Manager requires Android 14 or
|
||||
later. HTTPS Git is supported; SSH is not enabled in this Android release.
|
||||
"""
|
||||
|
After Width: | Height: | Size: 300 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1080" height="1920" viewBox="0 240 1080 1920"><image width="1080" height="2400" xlink:href="source/01-home.png"/></svg>
|
||||
|
After Width: | Height: | Size: 210 B |
|
After Width: | Height: | Size: 190 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1080" height="1920" viewBox="0 240 1080 1920"><image width="1080" height="2400" xlink:href="source/02-passwords.png"/></svg>
|
||||
|
After Width: | Height: | Size: 215 B |
|
After Width: | Height: | Size: 165 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1080" height="1920" viewBox="0 240 1080 1920"><image width="1080" height="2400" xlink:href="source/03-totp.png"/></svg>
|
||||
|
After Width: | Height: | Size: 210 B |
|
After Width: | Height: | Size: 648 KiB |
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1080" height="1920" viewBox="0 240 1080 1920"><image width="1080" height="2400" xlink:href="source/04-privacy.png"/></svg>
|
||||
|
After Width: | Height: | Size: 213 B |
|
After Width: | Height: | Size: 140 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 230 KiB |