Package
com.samsung.android.providers.contacts
Contacts Storage
Guidance
Samsung's own "Contacts Storage" provider, signed by Samsung OEM keys in our sample. It fills the same role on Galaxy hardware that the Android Open Source Project Contacts Provider fills elsewhere: it is the central store the dialer, contacts app, messaging apps and any app holding contacts permission read from and write to, and it has no user interface of its own. Its recorded permissions are consistent with that role, covering reading and writing contacts, call log and voicemail, directory search binding, sync settings and the default contacts account. Note the package name. AOSP's provider, documented separately on this site, is com.android.providers.contacts; this is a distinct package under Samsung's own namespace. In this dataset the two look complementary: at the time of verification the device count recorded for the AOSP package plus the device count recorded for this one equalled the total number of devices sampled, which is consistent with Samsung's provider standing in for the AOSP one on Galaxy builds rather than sitting alongside it. Both counts are visible on the provenance endpoints cited below and will drift as the sample grows, and we have not sourced Samsung documentation confirming the substitution, so treat this as an observation about the dataset rather than a documented design. For Android Enterprise, EMM and kiosk use it has no enrolment or management role, but it is core infrastructure. Disabling or removing it would break contact storage device-wide, so dialling a saved contact, caller name display, contact pickers and anything else that reads contacts would stop working. Where you need to control contact visibility in a managed deployment, use the policy controls built for it rather than touching the provider. Those controls have a version dimension worth checking: DevicePolicyManager.setCrossProfileCallerIdDisabled was added in API level 21 and setCrossProfileContactsSearchDisabled in API level 24, both were deprecated in API level 34, and from API level 34 the replacements are setManagedProfileCallerIdAccessPolicy and setManagedProfileContactsAccessPolicy, which take a PackagePolicy. Confirm which of these your EMM actually uses on the Android versions you run. Version note: builds observed here run from 13.1.16 to 16.0.21 and target API 31 up to 37, so it tracks current Android releases. The leading version component matches the Android major version those builds ship on, but Samsung does not document its versioning scheme for this package, so do not read anything more into the number than that.
- Contacts Provider - Android Developers →
- DevicePolicyManager (cross-profile caller ID and contacts search) - Android Developers →
- Package provenance for com.samsung.android.providers.contacts - Android System App Database →
- Package provenance for com.android.providers.contacts - Android System App Database →
Package intelligence
Observed signing, permission, version and size signals from contributing devices - descriptive of that sample, not a verdict. These come from the v2 Package Search sync, which not every device has contributed to yet, so for some packages this detail is partial or not present at all.
- Signed by the device maker's own signing key (Samsung), so it is an OEM preinstall, but 2 different certificates appear across the fleet, so OEMs ship their own builds of it. Inferred from the certificate appearing only on Samsung devices (9 packages, 229 observations).
- Its largest observed manifest declares 52 permissions: 8 runtime (user-granted), 13 signature or system-level, 8 install-time and 23 vendor or uncatalogued.
- APK size ranges from 3.4 MB to 8.5 MB across the reporting device profiles, so the build differs substantially between them.
- Never reported as user-facing, so it runs as a background or system component rather than an app the user opens.
Declared permissions (52)
Largest permission set observed for this package. Text is Android's own published description where one exists; platform permissions Android does not document show their granted protection level (in grey) instead; vendor or unknown constants show the name only.
| Permission | Description |
|---|---|
ACCESS_NETWORK_STATE |
Allows the app to view information about network connections such as which networks exist and are connected. |
BIND_DIRECTORY_SEARCH |
Signature or privileged system permission. |
CALL_PHONE |
Allows the app to call phone numbers without your intervention. This may result in unexpected charges or calls. Note that this doesn't allow the app to call emergency numbers. Malicious apps may cost you money by making calls without your confirmation, or dial carrier codes which cause incoming calls to be automatically forwarded to another number. |
CHANGE_DEVICE_IDLE_TEMP_WHITELIST |
Signature or privileged system permission. |
FOREGROUND_SERVICE |
Allows the app to make use of foreground services. |
GET_ACCOUNTS |
Allows the app to get the list of accounts known by the phone. This may include any accounts created by applications you have installed. |
GET_ACCOUNTS_PRIVILEGED |
Signature or privileged system permission. |
GET_TASKS |
Allows the app to retrieve information about currently and recently running tasks. This may allow the app to discover information about which applications are used on the device. |
HIDE_NON_SYSTEM_OVERLAY_WINDOWS |
Signature-level system permission, for platform-signed apps. |
INTERACT_ACROSS_USERS |
Signature or privileged system permission. |
LOG_COMPAT_CHANGE |
Signature or privileged system permission. |
MANAGE_USERS |
Signature or privileged system permission. |
PROCESS_PHONE_ACCOUNT_REGISTRATION |
- |
QUERY_ALL_PACKAGES |
Allows an app to see all installed packages. |
READ_CALL_LOG |
This app can read your call history. |
READ_COMPAT_CHANGE_CONFIG |
Signature or privileged system permission. |
READ_CONTACTS |
Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge. |
READ_PHONE_NUMBERS |
Allows the app to access the phone numbers of the device. |
READ_PHONE_STATE |
Allows the app to access the phone features of the device. This permission allows the app to determine the phone number and device IDs, whether a call is active, and the remote number connected by a call. |
READ_PRIVILEGED_PHONE_STATE |
Signature or privileged system permission. docs ↗ |
READ_SYNC_SETTINGS |
Allows the app to read the sync settings for an account. For example, this can determine whether the People app is synced with an account. |
RECEIVE_BOOT_COMPLETED |
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running. |
SEND_CALL_LOG_CHANGE |
- |
SET_DEFAULT_ACCOUNT_FOR_CONTACTS |
Internal platform permission, granted only by the system. |
START_ACTIVITIES_FROM_BACKGROUND |
Signature or privileged system permission. docs ↗ |
UPDATE_APP_OPS_STATS |
Signature or privileged system permission. |
USE_RESERVED_DISK |
Signature or privileged system permission. |
WAKE_LOCK |
Allows the app to prevent the phone from going to sleep. |
WRITE_CALL_LOG |
Allows the app to modify your phone's call log, including data about incoming and outgoing calls. Malicious apps may use this to erase or modify your call log. |
WRITE_CONTACTS |
Allows the app to modify the data about your contacts stored on your phone. This permission allows apps to delete contact data. |
WRITE_SYNC_SETTINGS |
Allows an app to modify the sync settings for an account. For example, this can be used to enable sync of the People app with an account. |
com.android.email.permission.ACCESS_PROVIDER |
- |
com.android.email.permission.READ_ATTACHMENT |
- |
com.android.voicemail.permission.ADD_VOICEMAIL |
- |
com.android.voicemail.permission.READ_VOICEMAIL |
- |
com.android.voicemail.permission.WRITE_VOICEMAIL |
- |
com.samsung.android.email.permission.ACCESS_PROVIDER |
- |
com.samsung.android.email.provider.permission.READ_ATTACHMENT |
- |
com.samsung.android.permission.ACCESS_MAINTENANCE_MODE |
- |
com.samsung.android.providers.contacts.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION |
- |
com.samsung.android.samsungaccount.permission.PROFILE_PROVIDER |
- |
com.samsung.permission.READ_SEC_COMMON_POLICY |
- |
com.sec.android.app.myfiles.permission.READ |
- |
com.sec.android.app.servicemodeapp.permission.WRITE_FILE |
- |
com.sec.android.diagmonagent.permission.DIAGMON |
- |
com.sec.android.kies.calllog.BROADCAST_DETECT |
- |
com.sec.android.provider.logsprovider.permission.READ_LOGS |
- |
com.sec.android.provider.logsprovider.permission.WRITE_LOGS |
- |
com.sec.imsservice.PERMISSION |
- |
com.sec.imsservice.READ_IMS_PERMISSION |
- |
com.sec.imsservice.WRITE_IMS_PERMISSION |
- |
com.wssnps.permission.COM_WSSNPS |
- |
Manage on devices
ADB commands for this package (the inverse of each is included so you can undo). Run from an authorised shell or wire the equivalent into your DPC. Verify on a test device first - this database doesn’t yet classify which packages are safe to change. --user 0 targets the current user; drop it (and use a privileged shell) to act device-wide.
/system, so Restore re-adds it (-k keeps app data)Seen on
Each record is a device profile (make + model + Android version). Each unique handset that syncs against a matching profile will increase the observations of a package, thereby increasing confidence that a package is expected to be on a device.
| OEM | Model | Android | Provenance | Observations | Last seen |
|---|---|---|---|---|---|
| Samsung | SM-A057G | Android 15 | OEM Samsung | 1 | 8 Aug 2026 |
| Samsung | SM-A125F | Android 12 | OEM Samsung | 1 | 21 Jan 2026 |
| Samsung | SM-A135F | Android 14 | OEM Samsung | 3 | 21 Jan 2026 |
| Samsung | SM-A137F | Android 14 | - | 1 | 17 Jan 2026 |
| Samsung | SM-A236B | Android 14 | OEM Samsung | 2 | 10 Apr 2026 |
| Samsung | SM-A266B | Android 15 | - | 2 | 21 Aug 2025 |
| Samsung | SM-A266B | Android 16 | - | 1 | 26 Jan 2026 |
| Samsung | SM-A346B | Android 15 | OEM Samsung | 1 | 27 Jul 2026 |
| Samsung | SM-A515F | Android 13 | - | 1 | 30 Jun 2025 |
| Samsung | SM-A528B | Android 13 | - | 1 | 19 Jun 2025 |
| Samsung | SM-A536B | Android 15 | - | 1 | 19 Jun 2025 |
| Samsung | SM-A536B | Android 16 | OEM Samsung | 1 | 29 Jul 2026 |
| Samsung | SM-A556B | Android 15 | - | 1 | 1 Jul 2025 |
| Samsung | SM-A566B | Android 16 | OEM Samsung | 3 | 12 Sep 2026 |
| Samsung | SM-F721B | Android 15 | - | 1 | 9 Jul 2025 |
| Samsung | SM-F766B | Android 16 | - | 1 | 11 Nov 2025 |
| Samsung | SM-F971B | Android 17 | OEM Samsung | 1 | 18 Sep 2026 |
| Samsung | SM-G766B | Android 15 | - | 1 | 17 Oct 2025 |
| Samsung | SM-G766B | Android 16 | OEM Samsung | 1 | 5 Sep 2026 |
| Samsung | SM-G780F | Android 13 | OEM Samsung | 1 | 29 Dec 2025 |
| Samsung | SM-G973U | Android 12 | OEM Samsung | 2 | 10 Jun 2026 |
| Samsung | SM-G991B | Android 15 | OEM Samsung | 1 | 19 Apr 2026 |
| Samsung | SM-M315F | Android 12 | - | 1 | 2 Feb 2026 |
| Samsung | SM-N950U1 | Android 9.0 | - | 1 | 20 Aug 2025 |
| Samsung | SM-N986B | Android 13 | - | 9 | 17 Jul 2025 |
| Samsung | SM-S721U | Android 15 | - | 5 | 5 Aug 2025 |
| Samsung | SM-S731B | Android 16 | OEM Samsung | 1 | 11 Aug 2026 |
| Samsung | SM-S906B | Android 15 | - | 1 | 2 Jun 2025 |
| Samsung | SM-S908U | Android 16 | OEM Samsung | 2 | 17 Sep 2026 |
| Samsung | SM-S921B | Android 15 | OEM Samsung | 2 | 22 Jul 2025 |
| Samsung | SM-S921B | Android 16 | OEM Samsung | 1 | 17 Sep 2026 |
| Samsung | SM-S921U | Android 15 | - | 1 | 19 Jun 2025 |
| Samsung | SM-S926B | Android 16 | OEM Samsung | 1 | 14 Apr 2026 |
| Samsung | SM-S928B | Android 16 | OEM Samsung | 2 | 12 Jun 2026 |
| Samsung | SM-S928U1 | Android 15 | - | 1 | 12 Sep 2025 |
| Samsung | SM-S931B | Android 15 | - | 1 | 20 Sep 2025 |
| Samsung | SM-S931B | Android 16 | - | 1 | 23 Nov 2025 |
| Samsung | SM-S936B | Android 16 | - | 1 | 18 Dec 2025 |
| Samsung | SM-S937B | Android 15 | - | 1 | 25 Aug 2025 |
| Samsung | SM-S938B | Android 15 | - | 2 | 25 Aug 2025 |
| Samsung | SM-S942B | Android 17 | OEM Samsung | 1 | 25 May 2026 |
| Samsung | SM-S948U | Android 16 | - | 1 | 9 Sep 2026 |
| Samsung | SM-T636B | Android 15 | - | 2 | 12 Oct 2025 |
| Samsung | SM-T976B | Android 13 | - | 1 | 21 Jul 2025 |
| Samsung | SM-X200 | Android 14 | - | 1 | 27 Aug 2025 |
| Samsung | SM-X716B | Android 15 | - | 1 | 27 Jun 2025 |
| Samsung | SM-X910 | Android 14 | - | 1 | 26 Jun 2025 |
| Samsung | SM-X910 | Android 15 | - | 1 | 12 Sep 2025 |
Known labels
Locale-aware display names seen in the wild.
| Label | Locale | Seen |
|---|---|---|
| Contacts Storage | en-gb | 26 |
| Contacts Storage | en | 20 |
| Contacts Storage | en-us | 19 |
| Opgeslagen contactpersonen | nl-nl | 5 |
| Spazio di archiviazione contatti | it-IT | 5 |
| Almacenamiento de contactos | es-us | 3 |
| Contacts Storage | en-nl | 3 |
| Kontaktspeicher | de-de | 3 |
| Almacenamiento de contactos | es-ES | 2 |
| Almacenamiento de contactos | es-es | 2 |
| Contacts Storage | en-GB | 2 |
| Contacts Storage | 2 | |
| Enregistrement des contacts | fr-fr | 2 |
| Spazio di archiviazione contatti | it-it | 2 |
| Almacenamiento de contactos | es-US | 1 |
| Contacts Storage | en-au | 1 |
| Contacts Storage | en-US | 1 |
| Enregistrement des contacts | fr-FR | 1 |
| Enregistrement des contacts | fr-dz | 1 |
| Pamięć kontaktów | pl-pl | 1 |
| Pamięć kontaktów | pl-PL | 1 |
| Úložiště kontaktů | cs-CZ | 1 |
| Úložiště kontaktů | cs-cz | 1 |
| Хранилище контактов | ru-ru | 1 |