package icon

OpenPhotoFrame

Turn your old Android tablet into a beautiful digital photo frame.
OpenPhotoFrame is a free, open-source slideshow app that syncs photos from your private cloud (Nextcloud) or local storage. No ads, no subscriptions, no nag screens – just your photos.

Features:

Beautiful Slideshow – Smooth crossfade transitions between your photos
Nextcloud Sync – Sync photos from a Nextcloud public share link (WebDAV)
Local First – Works offline, photos are cached locally
Simple Settings – Configure slide duration, transition speed, and sync interval
Always On – Designed to run 24/7 as a dedicated photo frame
Privacy First – Your photos stay on your server, no third-party cloud required

Why OpenPhotoFrame?

Existing apps like Fotoo or PhotoCloud Frame Slideshow are either riddled with ads and nag screens, require paid subscriptions for basic features, or force you to use public cloud services like Google Photos.

OpenPhotoFrame is different:

• 100% Free & Open Source (GPLv3)
• No ads, no in-app purchases, no tracking
• Works with your self-hosted Nextcloud
• Simple & focused – does one thing well

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 1.6.0 (93) suggested Added on Jan 05, 2026

    x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 20 MiB PGP Signature | Build Log

  • Version 1.6.0 (92) - Added on Jan 05, 2026

    arm64-v8a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 19 MiB PGP Signature | Build Log

  • Version 1.6.0 (91) - Added on Jan 05, 2026

    armeabi-v7a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 17 MiB PGP Signature | Build Log

  • Version 1.5.0 (83) - Added on Jan 05, 2026

    x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 20 MiB PGP Signature | Build Log

  • Version 1.5.0 (82) - Added on Jan 05, 2026

    arm64-v8a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 18 MiB PGP Signature | Build Log

  • Version 1.5.0 (81) - Added on Jan 05, 2026

    armeabi-v7a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 16 MiB PGP Signature | Build Log

  • Version 1.4.1 (73) - Added on Dec 30, 2025

    x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 19 MiB PGP Signature | Build Log

  • Version 1.4.1 (72) - Added on Dec 30, 2025

    arm64-v8a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 18 MiB PGP Signature | Build Log

  • Version 1.4.1 (71) - Added on Dec 30, 2025

    armeabi-v7a

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • read image files from shared storage
      Allows the app to read image files from your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • io.github.micw.openphotoframe.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 16 MiB PGP Signature | Build Log