Permissions (Android)

- Reading time: 6 minutes -

General

The authorization model in Android is anything but simple or consistent. Some permissions differ from one Android version to the next or others are added.

In connection with messengers, however, access to the address book of the device is generally important and often discussed.

With XMPP messengers (illustrated by Conversations in the following example), authorization to access the contact data is also requested, but this authorization is not mandatory for the functionality. Even if the general Android permission “Contacts” is deactivated for the messenger, you can still chat/text normally without access to the address book. However, if the blanket “Contacts” permission is granted, existing Jabber IDs (XMPP account names) and profile pictures in the address book can be read and used in Conversations.

At least the camera, microphone, memory and clipboard permissions should be allowed on the device.

Overview and comparison of the individual Android permissions

Android permission WhatsApp Conversations Delta Chat
Quantity: 82! 50 43




ACCESS_BACKGROUND_LOCATION

X
access location in the background

X
ACCESS_COARSE_LOCATION X X X
access approximate location only in the foreground X X X
ACCESS_FINE_LOCATION X X X
access precise location only in the foreground X X X
ACCESS_MEDIA_LOCATION X

read locations from your media collection X

ACCESS_NETWORK_STATE X X X
view network connections X X X




ACCESS_WIFI_STATE X X X
view Wi-Fi connections X X X




AUTHENTICATE_ACCOUNTS X





BLUETOOTH X X
pair with Bluetooth devices X X




BLUETOOTH_ADMIN X

access Bluetooth settings X





BLUETOOTH_ADVERTISE X

advertise to nearby Bluetooth devices X

BLUETOOTH_CONNECT X X
connect to paired Bluetooth devices X X
BLUETOOTH_SCAN X

discover and pair nearby Bluetooth devices X

BROADCAST_STICKY X

send sticky broadcast X





CAMERA X X X
take pictures and videos X X X
CHANGE_NETWORK_STATE X

change network connectivity X





CHANGE_WIFI_STATE X

connect and disconnect from Wi-Fi X





DETECT_SCREEN_CAPTURE X





FOREGROUND_SERVICE X X X
run foreground service X X X




FOREGROUND_SERVICE_CAMERA X X




FOREGROUND_SERVICE_DATA_SYNC X X X




FOREGROUND_SERVICE_LOCATION X





FOREGROUND_SERVICE_MEDIA_PROJECTION X





FOREGROUND_SERVICE_MICROPHONE X X




FOREGROUND_SERVICE_PHONE_CALL X





GET_ACCOUNTS X

find accounts on the device X

GET_TASKS X

retrieve running apps X





INSTALL_SHORTCUT X
X




INTERNET X X X
have full network access X X X




MANAGE_ACCOUNTS X





MANAGE_OWN_CALLS X X
route calls through the system X X




MODIFY_AUDIO_SETTINGS X X X
change your audio settings X X X




NEARBY_WIFI_DEVICES X





NFC X

control Near Field Communication X





POST_NOTIFICATIONS X X X




READ_BASIC_PHONE_STATE X





READ_CONTACTS X X X
read your contacts X X X
READ_EXTERNAL_STORAGE X X X
read the contents of your shared storage X X X
READ_MEDIA_AUDIO X X




READ_MEDIA_IMAGES X X X




READ_MEDIA_VIDEO X X X




READ_MEDIA_VISUAL_USER_SELECTED X X




READ_PHONE_NUMBERS X

read phone numbers X

READ_PHONE_STATE X

read phone status and identity X

READ_PROFILE X X




READ_SYNC_SETTINGS X

read sync settings X





READ_SYNC_STATS X

read sync statistics X





RECEIVE_BOOT_COMPLETED X X X
run at startup X X X




RECEIVE_SMS X

receive text messages (SMS) X

RECORD_AUDIO X X X
record audio X X X
REQUEST_INSTALL_PACKAGES X X X
request install packages X X X




RUN_USER_INITIATED_JOBS X





SCHEDULE_EXACT_ALARM X





SEND_SMS X

send and view SMS messages X

USE_BIOMETRIC X

use biometric hardware X

USE_CREDENTIALS X





USE_FINGERPRINT X

use fingerprint hardware X

USE_FULL_SCREEN_INTENT X X
display notifications as full screen activities on a locked device X X




VIBRATE X X X
control vibration X X X




WAKE_LOCK X X X
prevent phone from sleeping X X X




WRITE_CONTACTS X

modify your contacts X

WRITE_EXTERNAL_STORAGE X X X
modify or delete the contents of your shared storage X X X
WRITE_SYNC_SETTINGS X

toggle sync on and off X





INSTALL_SHORTCUT X
X
install shortcuts X
X




UNINSTALL_SHORTCUT X

uninstall shortcuts X





FEO2 X





RECEIVE X
X




BIND_GET_INSTALL_REFERRER_SERVICE X





AD_ID X





READ_GSERVICES X





READ_SETTINGS X X X




UPDATE_SHORTCUT X X X




CHANGE_BADGE X X X




READ_SETTINGS X X X




WRITE_SETTINGS X X X




READ X X X




WRITE X X X




BROADCAST_BADGE X X X




PROVIDER_INSERT_BADGE X X X




DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION X X X




BROADCAST X





MAPS_RECEIVE X





REGISTRATION X





READ X X X

Source: exodus-privacy.eu.org / status June 2025

Notes on the display of authorizations

Android organizes the individual permissions into groups (which may also differ slightly from Android version to Android version). The individual permissions can be viewed both in F-Droid and in the Play Store under “Permissions” for the respective app. In the app settings, however, only the permission groups are visible.

The permissions are identical for both the F-Droid and Play Store versions.

But there is a difference in the display of device-specific permissions, which are manufacturer-specific:

  • In the Playstore, only the “Android permissions” (without the device-specific ones) are displayed.
  • In the F-Droid app, in addition to the Android permissions, the permissions required depending on the device manufacturer are also displayed.
  • The F-Droid homepage really shows all permissions of the apps (including the device-related ones).

During installation, the principle “all or nothing” applies - i.e. you must agree to all permissions or you cannot install and use the program.


In general:
A program (an app) should only request the permissions that it actually needs to use!