The permissions required by a Delphi XE5 Android application are defined through the Uses Permissions dialog. It is found under Project -> Options… [Shift+Ctrl+F11].
If you select other Targets besides Android then the list is blank, for now. By default the following common permissions are selected. If you do not select a permission then any calls you make that require that permission will fail. The “Internet” permission is required for any network access, even your local network.
- Access coarse location
- Access fine location
- Call phone
- Read calendar
- Read external storage
- Write calendar
- Write external storage
- Read phone state
If you scroll down the list you will see an Advanced node which contains permissions that are less commonly used permissions. For many apps you will never need to change these permissions, but your users may notice the “services that can cost money” warning next to Call phone and Internet permission request, so you may want to remove those.
The requested permissions are automatically added to the AndroidManifest.xml file, which is read by the Android operating system and Google Play store to know which permissions your app requested.