Some of the permissions below are required only for optional features within the application. The Android framework does allow for conditionally requiring these permissions based on usage of features.
- BLUETOOTH - to detect when a bluetooth device is connected to start playing audio
- INTERNET - to update feeds and download media files from the internet
- WAKE_LOCK - to keep device awake when updating feeds or downloading media files
- ACCESS_NETWORK_STATE - to check if wifi is connected to enable download conditions
- RECEIVE_BOOT_COMPLETED - to start the application upon boot (if configured)
- READ_PHONE_STATE - detect when calls are being made so audio can be paused
- WRITE_EXTERNAL_STORAGE - to save media files to the SD card
- GET_TASKS - some devices require this to launch DoggCatcher in response to headset connect events
- CHECK_LICENSE - validates the license with the google market app