Files
Hadrian Burkhardt 4706e2669c Initial commit: Foto Dup Finder 1.0.1
An Android duplicate-photo finder. Pure-Kotlin core (SHA-256 + dHash hashing, exact and
perceptual union-find grouping, three sensitivity presets) with MediaStore access, a
persistent SQLite hash index and a tiered ScanEngine behind a Jetpack Compose UI.
No INTERNET permission, no ads, no analytics, no account.

Ships versionCode 2 / versionName 1.0.1, carrying the scan-stall hardening (BoundedCall
breaker) and verified against a 5,363-photo device library. 80 JVM unit tests, lint clean.

Release paperwork is in docs/ (Play checklist, store listing, edge-case testing), the
upload-ready Play graphics and screenshots in store-assets/, and the generators for those
assets in tools/.
2026-10-13 23:13:39 +02:00

41 lines
1.9 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="1024" height="500" viewBox="0 0 1024 500">
<!--
Play feature graphic (1024 x 500, no transparency).
Same palette as the app icon (#1B5E20) with the icon motif on the left and the
store copy on the right. Text stays inside the middle band because Play crops the
graphic to a square for some placements.
-->
<defs>
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#0D3D13" />
<stop offset="0.55" stop-color="#1B5E20" />
<stop offset="1" stop-color="#2E7D32" />
</linearGradient>
</defs>
<rect x="0" y="0" width="1024" height="500" fill="url(#bg)" />
<!-- Icon motif: the two photo frames, centred on (210, 250) at ~300 px wide. -->
<g transform="translate(210,250) scale(7.46) translate(-49.8,-46.85)">
<g transform="translate(30,22) scale(1.9)">
<path d="M4,5 h16 a1,1 0 0 1 1,1 v12 a1,1 0 0 1 -1,1 h-16 a1,1 0 0 1 -1,-1 v-12 a1,1 0 0 1 1,-1 z"
fill="#FFFFFF" fill-opacity="0.45" />
</g>
<g transform="translate(24,28) scale(1.9)">
<path d="M4,5 h16 a1,1 0 0 1 1,1 v12 a1,1 0 0 1 -1,1 h-16 a1,1 0 0 1 -1,-1 v-12 a1,1 0 0 1 1,-1 z"
fill="none" stroke="#FFFFFF" stroke-width="1.6" />
<path d="M7.5,9 m-1.4,0 a1.4,1.4 0 1 0 2.8,0 a1.4,1.4 0 1 0 -2.8,0" fill="#FFFFFF" />
<path d="M4,17 l4,-5 l3,3.5 l3.5,-4.5 l5.5,6 z" fill="#FFFFFF" />
</g>
</g>
<!-- Store copy -->
<text x="420" y="205" font-family="DejaVu Sans" font-weight="bold" font-size="56"
fill="#FFFFFF">Foto Dup Finder</text>
<text x="422" y="258" font-family="DejaVu Sans" font-size="25"
fill="#FFFFFF" fill-opacity="0.92">Find and remove duplicate photos</text>
<text x="422" y="296" font-family="DejaVu Sans" font-size="25"
fill="#FFFFFF" fill-opacity="0.92">Fast, ad-free and completely offline</text>
</svg>