Note: The following instructions may or may not work with your device. With each release, Android is being more aggressive in not allowing apps to automatically start. Some devices have an internal whitelist of apps allowed to start at boot and these instructions will not work on such devices. You are recommended to set the app as the device screensaver, which is reliable and is likely what you want anyway.
Starting in Android 11 and Fire OS 8.1, apps are disabled from automatically starting. My apps can work around this if they are granted the SYSTEM_ALERT_WINDOW permission. This permission is hard to grant on Amazon Fire OS devices since they lack a setting screen to grant the permission.
The following instructions will guide you through granting this permission via the command line. This will allow the app to auto start on your device. If you instead want the app to automatically start as a screensaver whenever the device is idle, you should following my How to Set App as TV Screensaver instructions instead.
To make the app start when the device starts:
Step 1 – Connect to the device using the ADB program
The hardest part of this process is installing a program called ADB and connecting to your device. ADB is the “Android Debug Bridge” and allows you to connect your computer to the device and issue low level commands to the device.
To install adb, download the Android platform tools for your computer’s operating system from https://developer.android.com/studio/releases/platform-tools and unzip the zip file. You’ll find the adb command inside.
Now from a terminal or windows command prompt, change to the unzipped directory and connect to the Fire TV. I’ve found this guide to be good for that:
http://www.aftvnews.com/how-to-connect-to-a-fire-tv-or-fire-tv-stick-via-adb/
Step 2 – Grant the SYSTEM_ALERT_WINDOW permission
Once you have connected to the device with adb, enter the following command to grant permission to the app. Ensure you use the correct command for the app that you have. There are NO line breaks in this command. It MUST be entered on a single line:
Enter this command for pixFolio for Google Photos on Amazon devices:
adb shell pm grant com.snapwood.picfolio android.permission.SYSTEM_ALERT_WINDOW
Enter this command for pixFolio for Google Photos on Google Play devices:
adb shell pm grant com.snapwood.photos2 android.permission.SYSTEM_ALERT_WINDOW
Enter this command for FlickFolio for Flickr:
adb shell pm grant com.snapwood.flickfolio android.permission.SYSTEM_ALERT_WINDOW
Enter this command for gFolio for Google Drive:
adb shell pm grant com.snapwood.gfolio android.permission.SYSTEM_ALERT_WINDOW
Enter this command for SkyFolio for Microsoft OneDrive:
adb shell pm grant com.snapwood.skyfolio android.permission.SYSTEM_ALERT_WINDOW
Enter this command for dFolio for Dropbox:
adb shell pm grant com.snapwood.dropfolio android.permission.SYSTEM_ALERT_WINDOW
Step 3 – Enable the Auto Start App setting inside the app
Start the app and go to the Settings -> Slideshow and enable the “Auto Start App” setting.
Step 4 – Restart your Device
Lastly, restart your device. The app should automatically start after your device starts, but it may take a minute or two for the device to get around to starting the app. Unfortunately, there is nothing the app can do to speed this up.
If you ever want to disable the app from starting when the device starts, you can go back into the app settings -> slideshow and disable the “Auto Start App” setting. There is no need to remove the SYSTEM_ALERT_WINDOW permission.