The app needs to read your contacts list in order send and receive text messages. For example, when you say "Text Jane Doe", it searches your contacts list for someone with that name, and then accesses the phone number to send to. The app does not make any changes to your contacts and does not share contact information with anyone.
Microphone access is needed for speech recognition.
Access to your phone's status is needed in order to detect incoming calls, so you can have the opportunity to answer. The ability to directly call numbers is needed in order to place outgoing calls.
SMS permissions are needed to send and receive text messages, as well as to read messages already received.
The app needs access to your SD card or media storage area. It is used if you use the startup sound feature to alert you when the app is running. The app needs to be able to access the chosen sound file. This may also be used to store some files the app needs in order to perform speech recognition.
Disable Screen Lock:
This is used when you have chosen an option to automatically run the app when movement is detected or when a Bluetooth device is connected. It allows the app to start automatically even if your screen is locked.
Location Tracking and Activity Recognition:
This is used if you use the option to start the app automatically when movement is detected.
Prevent Phone from Sleeping:
This allows the app to continuously listen for your trigger phrase and accept a command when it's spoken. Without this, you would have to frequently unlock your phone just to give it a command, which is not safe when driving.
The app needs to be able to temporarily disable Wi-Fi in order to send multimedia messages using your cellular carrier's MMS service. Cellular carriers require that MMS messages be sent over their networks.
Bluetooth permissions are needed to support the app's ability to automatically start when a Bluetooth device is connected. They are also needed to support connecting to and disconnecting from Bluetooth devices using the app's commands.
Run at Startup:
This allows the app to show any Alexa alarms that may have occurred while the phone was turned off. It also allows the app to perform some initialization in the background so that it will start faster when you need it.