Add thumbnail in the EXIF tag of JPEG picture not having one (batch processing)
About this app
This application for android devices searches for pictures (JPEG) on your device and adds a thumbnail if they don't have one yet. Thumbnails are added to the EXIF metadata structure.
It is designed to work from android Oreo (android 8, SDK 26).
Please report issues here: https://github.com/tenzap/exif-thumbnail-adder/issues
For more information, some known facts and how you may contribute, refer to the [project homepage][1].
Rationale
On some smartphones, when wanting to import pictures to Windows (or any device/operating system supporting MTP or PTP protocols), I noticed the pictures may not display a thumbnail in the import wizard (whether through the Photos app, or through the Windows Explorer import feature).
There are two possible reasons for that behaviour. First, the thumbnail is not present in the picture, usually because the app that created the picture didn't add a thumbnail. Second, there is a thumbnail but it is ignored because some EXIF tags are missing.
Features
- Add thumbnail to pictures (JPEG) that don't yet have one - Lanczos algorithm to downsample picture thanks to [FFmpeg's swscale library][2] for best results. - Select one or more folders to scan from any storage (internal, SDCard...). For example DCIM, Pictures... - Exclude one subdirectory from selected directories - Preserve timestamps of the pictures - Processing log - Synchronize deleted files in the source directory to the backup and working directory (so that you don't keep in the backup folder pictures you don't have anymore in the source folder) - Conservative default options (backup pictures, skip corrupt files) - Install app on internal storage or external storage - Default EXIF library: [Exiv2][3]. - Alternative libraries: Android-Exif-Extended, libexif, pixymeta-android. See known facts on project page to learn more on benefits and drawbacks of each library. - Settings:  - Rotate the thumbnail  - Replace existing thumbnail  - Backup of original pictures (backup is never overwritten by the app once created if you choose to add the thumbnail to the input file in its initial location)  - Skip pictures having malformed metadata (this can be disabled to process also files having corrupt tags)  - Replace picture in place or write new picture to another directory
Requested permissions
- WRITE_EXTERNAL_STORAGE, READ_EXTERNAL_STORAGE, READ_MEDIA_IMAGES - MANAGE_EXTERNAL_STORAGE - ACCESS_MEDIA_LOCATION - POST_NOTIFICATIONS - get more details on the project homepage
Installation
- Prerequisites: minimum android Oreo (android 8, SDK 26). App was tested up to Android 11. - Download it through F-Droid app [here][4] - Download the APK from the [release page][5]
License
GPL-3.0 (see "COPYING" file on project homepage)
URLs
- [1]: https://github.com/tenzap/exif-thumbnail-adder - [2]: https://ffmpeg.org/libswscale.html - [3]: https://www.exiv2.org - [4]: https://f-droid.org/packages/com.exifthumbnailadder.app - [5]: https://github.com/tenzap/exif-thumbnail-adder/releases
Licensed under GPL-3.0-or-later.
What's New in v1.0.1
Imported from the F-Droid repository index.
- 1.0.1
- - Add support for Android 15 (& set targetSdk to 35) & update toolchain
- - exiv2: update to 0.28.5 & expat to 2.7.1
- - libexif: update to 0.6.25
- - update all gradle dependencies to latest version (except ExifInterface)
- - Note: if you run on AOSP or on devices without Google apps, you may loose the GPS information inside your files (at least on emulator image for Android 13). See project homepage for more information.
Version history
May 24, 2025 · 24.6 MB · Android API 26–35 · code 767
Imported from the F-Droid repository index.
- 1.0.1
- - Add support for Android 15 (& set targetSdk to 35) & update toolchain
- - exiv2: update to 0.28.5 & expat to 2.7.1
- - libexif: update to 0.6.25
- - update all gradle dependencies to latest version (except ExifInterface)
- - Note: if you run on AOSP or on devices without Google apps, you may loose the GPS information inside your files (at least on emulator image for Android 13). See project homepage for more information.
SHA-256 6322a66590354b51404fe9d72216dc5f354f32bb35bfa3006d3eff43a35f4f03
May 9, 2024 · 24.8 MB · Android API 26–34 · code 724
Imported from the F-Droid repository index.
- 1.0.0
- - Add support for Android 14 (& set targetSdk to 34)
- - exiv2: update to 0.28.2 & expat to 2.6.2
- - update all gradle dependencies to latest version
- - add spanish translation (thanks to jose-454 & l.a.r.monteon1989)
- - Note: if you run on AOSP or on devices without Google apps, you may loose the GPS information inside your files (at least on emulator image for Android 13). See project homepage for more information.
SHA-256 ca11e64201165c51cc879e666e889a3999d6e2c458d26ec1015738c9a89410e2
Apr 13, 2023 · 21.4 MB · Android API 26–33 · code 679
Imported from the F-Droid repository index.
- 0.9.19
- - libexif: skip processing of pictures having XMP metadata
- - pixymeta: merge fix from upstream for InterOpIFD
- - pixymeta: skip processing of pictures having maker notes
- - display warning on main window when libexif or pixymeta are used, & add link to read the notes.
- - update labels of permission requests.
SHA-256 22a951336bd0836519dae15cf40e9c2b42a27af8a73445470a37b4be93ba476f
Will it run on your device?
92%
- Runs on a broad range of modern Android versions.
- Multiple CPU architectures are covered.
- Aligned with the latest Android target SDK expectations.
Installation Guide
Open Settings on your Android device
Go to Security → Unknown sources (or Install unknown apps)
Enable "Allow from this source" for your browser or file manager
Open the downloaded APK file from your Downloads folder
Tap "Install" and wait for installation to complete
Launch the app from your home screen
Make sure to re-enable Unknown Sources restrictions after installation for security.
How to install this safely
How to verify the file you downloaded
Before you install anything, confirm the file is the one described here. On a computer, run shasum -a 256 your-download.apk (macOS or Linux) or certutil -hashfile your-download.apk SHA256 (Windows), then compare the output character-for-character with the SHA-256 on this page. If a single character differs, the file is not the build we recorded — delete it.
What the signing certificate proves
Every Android app is signed with a private key that only its developer holds. The fingerprint on this page is a hash of the matching public certificate, and it proves continuity rather than identity: it tells you a build came from whoever signed the earlier ones. Android enforces this at install time — if a package claiming to be com.exifthumbnailadder.app is signed with a different key, the system will refuse to install it over your existing copy. A fingerprint that changes between releases is worth pausing on, because a repackaged app that has been modified by someone else cannot keep the original signature.
How to roll back to an earlier version
If the current release misbehaves, 1.0.0 is the last build before it. Android will not install an older version code over a newer one, so you must uninstall Exif Thumbnail Adder first — which clears its local data unless you have a backup. Reinstall the older APK only if its signing fingerprint matches the build you already trust, and check the API range: an older release may target an Android version your device has moved past.
Why we list sources instead of hosting everything
The official store channel is almost always the right choice: it updates automatically and carries the publisher's own distribution guarantees. A direct APK is useful when a device has no store access, when a rollout has not reached your region, or when you need a specific version — and only when the publisher has authorized that copy. APKBrowse does not list pirated, cracked, or unauthorized rebuilds of Exif Thumbnail Adder, and a listing is removed when the evidence for it stops holding up.
Get Exif Thumbnail Adder
Every source we list for com.exifthumbnailadder.app is legality-reviewed. Pirated or cracked builds are never offered.
Other sources
F-Droid listing
officialF-Droid builds this app from source and signs it. This is its official listing, with older builds and full release notes.
Source code
verified publisherThe upstream repository this build is compiled from.
We check legality and signature continuity, but device behaviour still varies. Install at your own discretion.
App Information
Security Verification
We record provenance; we do not run malware scans. Verify the hash yourself before installing.
SHA-256 Hash
6322a66590354b51404fe9d72216dc5f354f32bb35bfa3006d3eff43a35f4f03
Signing certificate
3e91248f525c3a69717204154b7fe1daf79d264a0c17956fdde85d71623addc4
Permissions Required
Previous Versions
The signing certificate fingerprint for this release is on record, so a build that does not match it did not come from this publisher.
Report a problem with this listing
A listing is only as good as its corrections. If a source is broken, a signature looks wrong, or this app should not be here, tell the moderation team.