نقشک بسته

Exif Thumbnail Adder

Add thumbnail in the EXIF tag of JPEG picture not having one (batch processing)
جدید در نگارش ۱٫۰٫۱
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.
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

نگارش‌ها

با وجود موجود بودن بارگیری‌های APK برای دادن حق گزینش، باید آگاه باشید که با نصب به این روش، آگاهی‌های به‌روز رسانی را دریافت نکرده و راهی ناامن برای بارگیری است. پیشنهاد می‌شود کارهٔ اف‌دروید را نصب و از آن استفاده کنید.

بارگیری اف‌دروید
  • نگارش ۱٫۰٫۱ (۷۶۷) پیشنهادی افزوده در 12d May 25

    arm64-v8a armeabi-v7a x86 x86_64

    این نگارش، به اندروید ۸٫۰ یا جدیدتر نیاز دارد.

    به دست اف‌دروید ساخته، امضا و مطابقتش با این کد مبدأ تضمین شده است.

    اجازه‌ها
    • خواندن موقعیت‌ها از مجموعه رسانه‌تان
      اجازه می‌دهد برنامه، موقعیت‌ها را از مجموعهٔ رسانه‌تان بخواند.
    • مشاهدهٔ اتصالات شبکه
      می‌گذارد کاره اطّلاعات مربوط به اتّصال‌های شبکه مانند شبکه‌های موجود و وصل‌شده را ببیند.
    • اجرای سرویس پیش‌زمینه
      به برنامه اجازه می‌دهد از سرویس‌های پیش‌زمینه استفاده کند.
    • اجرای خدمت پیش‌زمینه از گونهٔ «همگام سازی داده»
      می‌گذارد کاره از خدمت‌های پیش‌زمینه از گونهٔ «همگام‌سازی داده» استفاده کند
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • نمایش آگاهی‌ها
      می‌گذارد کاره آگاهی نشان دهد
    • خواندن محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بخواند.
      (12L)
    • خواندن پرونده‌های تصویری از فضای ذخیره‌سازی هم‌رسانده
      می‌گذارد کاره پرونده‌های تصویری را از فضای ذخیرهٔ هم‌رسانده بخواند.
    • اجرا شدن در هنگام راه‌اندازی
      به برنامه اجازه می‌دهد که به محض پایان راه‌اندازی سیستم، راه‌اندازی شود. این ویژگی ممکن است باعث شود راه‌اندازی دستگاه مدت زمان بیشتری طول بکشد و به برنامه اجازه می‌دهد با همیشه درحال اجرا بودنش باعث کاهش سرعت کلی دستگاه شود.
    • ممانعت از به خواب رفتن تلفن
      ‏به برنامه اجازه می‎دهد تا از غیرفعال شدن تلفن جلوگیری کند.
    • تغییر یا حذف محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بنویسد.
      (۱۰)
    • com.exifthumbnailadder.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    بارگیری APK ۲۴ می‌ب امضای PGP | گزارش ساخت

  • نگارش ۱٫۰٫۰ (۷۲۴) - افزوده در 12d May 24

    arm64-v8a armeabi-v7a x86 x86_64

    این نگارش، به اندروید ۸٫۰ یا جدیدتر نیاز دارد.

    به دست اف‌دروید ساخته، امضا و مطابقتش با این کد مبدأ تضمین شده است.

    اجازه‌ها
    • خواندن موقعیت‌ها از مجموعه رسانه‌تان
      اجازه می‌دهد برنامه، موقعیت‌ها را از مجموعهٔ رسانه‌تان بخواند.
    • مشاهدهٔ اتصالات شبکه
      می‌گذارد کاره اطّلاعات مربوط به اتّصال‌های شبکه مانند شبکه‌های موجود و وصل‌شده را ببیند.
    • اجرای سرویس پیش‌زمینه
      به برنامه اجازه می‌دهد از سرویس‌های پیش‌زمینه استفاده کند.
    • اجرای خدمت پیش‌زمینه از گونهٔ «همگام سازی داده»
      می‌گذارد کاره از خدمت‌های پیش‌زمینه از گونهٔ «همگام‌سازی داده» استفاده کند
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • نمایش آگاهی‌ها
      می‌گذارد کاره آگاهی نشان دهد
    • خواندن محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بخواند.
      (12L)
    • خواندن پرونده‌های تصویری از فضای ذخیره‌سازی هم‌رسانده
      می‌گذارد کاره پرونده‌های تصویری را از فضای ذخیرهٔ هم‌رسانده بخواند.
    • اجرا شدن در هنگام راه‌اندازی
      به برنامه اجازه می‌دهد که به محض پایان راه‌اندازی سیستم، راه‌اندازی شود. این ویژگی ممکن است باعث شود راه‌اندازی دستگاه مدت زمان بیشتری طول بکشد و به برنامه اجازه می‌دهد با همیشه درحال اجرا بودنش باعث کاهش سرعت کلی دستگاه شود.
    • ممانعت از به خواب رفتن تلفن
      ‏به برنامه اجازه می‎دهد تا از غیرفعال شدن تلفن جلوگیری کند.
    • تغییر یا حذف محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بنویسد.
      (۱۰)
    • com.exifthumbnailadder.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    بارگیری APK ۲۴ می‌ب امضای PGP | گزارش ساخت

  • نگارش ۰٫۹٫۱۹ (۶۷۹) - افزوده در 12d Apr 23

    arm64-v8a armeabi-v7a x86 x86_64

    این نگارش، به اندروید ۸٫۰ یا جدیدتر نیاز دارد.

    به دست اف‌دروید ساخته، امضا و مطابقتش با این کد مبدأ تضمین شده است.

    اجازه‌ها
    • خواندن موقعیت‌ها از مجموعه رسانه‌تان
      اجازه می‌دهد برنامه، موقعیت‌ها را از مجموعهٔ رسانه‌تان بخواند.
    • مشاهدهٔ اتصالات شبکه
      می‌گذارد کاره اطّلاعات مربوط به اتّصال‌های شبکه مانند شبکه‌های موجود و وصل‌شده را ببیند.
    • اجرای سرویس پیش‌زمینه
      به برنامه اجازه می‌دهد از سرویس‌های پیش‌زمینه استفاده کند.
    • android.permission.FOREGROUND_SERVICE_TYPE_DATA_SYNC
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • نمایش آگاهی‌ها
      می‌گذارد کاره آگاهی نشان دهد
    • خواندن محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بخواند.
      (12L)
    • خواندن پرونده‌های تصویری از فضای ذخیره‌سازی هم‌رسانده
      می‌گذارد کاره پرونده‌های تصویری را از فضای ذخیرهٔ هم‌رسانده بخواند.
    • اجرا شدن در هنگام راه‌اندازی
      به برنامه اجازه می‌دهد که به محض پایان راه‌اندازی سیستم، راه‌اندازی شود. این ویژگی ممکن است باعث شود راه‌اندازی دستگاه مدت زمان بیشتری طول بکشد و به برنامه اجازه می‌دهد با همیشه درحال اجرا بودنش باعث کاهش سرعت کلی دستگاه شود.
    • ممانعت از به خواب رفتن تلفن
      ‏به برنامه اجازه می‎دهد تا از غیرفعال شدن تلفن جلوگیری کند.
    • تغییر یا حذف محتوای فضای ذخیره هم‌رسانی‌شده
      به برنامه اجازه می‌دهد محتوای فضای ذخیره هم‌رسانی‌شده‌تان را بنویسد.
      (۱۰)
    • com.exifthumbnailadder.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    بارگیری APK ۲۱ می‌ب امضای PGP | گزارش ساخت