{"package_name":"com.android.contacts","label":"Contacts","device_count":20,"observation_count":44,"user_facing_count":37,"first_seen":"2025-05-06T00:02:49Z","last_seen":"2026-11-02T01:02:28Z","guidance":{"summary":"Contacts, the Android Open Source Project contacts app. Its source lives in AOSP at platform/packages/apps/Contacts, and its manifest declares the package com.android.contacts with the main people list (PeopleActivity), a contact editor and a contact picker. It handles the standard intents for viewing, inserting, editing and picking contacts. In our sample it is user-facing and appears across 14 makes, including Zebra, Newland, CipherLab, Xiaomi, OnePlus and some Google builds. There is no single signer: where this site holds signer data, which is 8 of those 14 makes, each build is signed by that maker's or build's own key. A few builds label it \"Contacts and dialer\".\n\nVersion note: this is a long-standing platform app, observed here from API 27 to API 36, so its role is largely evergreen. Its most recent change on the AOSP main branch is a 25Q1 merge from early 2025. Whether any later Android release changes its role could not be sourced.\n\nFor Android Enterprise, EMM and kiosk use, which app holds the device's default Contacts role matters for work profiles. The Android Management API value SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_DISALLOWED_EXCEPT_SYSTEM lets only the OEM default Dialer, Messages and Contacts apps in the personal profile see work contacts, and Google documents it for Android 14 and above. Where this package is the preinstalled contacts app, disabling it on devices where people need contacts is disruptive. On a single-purpose or kiosk device where no one browses contacts it is a reasonable candidate to hide through EMM policy. The Contacts Storage provider (com.android.providers.contacts) holds the data and should stay in place.","safe_to_disable":"caution","sources":[{"title":"platform/packages/apps/Contacts - Git at Google","url":"https://android.googlesource.com/platform/packages/apps/Contacts/"},{"title":"AndroidManifest.xml - platform/packages/apps/Contacts - Git at Google","url":"https://android.googlesource.com/platform/packages/apps/Contacts/+/refs/heads/main/AndroidManifest.xml"},{"title":"REST Resource: enterprises.policies - Android Management API - Google for Developers","url":"https://developers.google.com/android/management/reference/rest/v1/enterprises.policies"},{"title":"Package provenance for com.android.contacts - Android System App Database","url":"https://sysapps.bayton.org/api/packages/com.android.contacts"}],"last_verified":"2026-09-27T00:00:00Z"},"labels":[{"label":"Contacts","locale":"en-us","count":35},{"label":"Contacts","locale":"en","count":9},{"label":"Contacts","locale":"en-US","count":3},{"label":"Contacts","locale":"en-au","count":2},{"label":"Liên hệ và trình quay số","locale":"vi-VN","count":2},{"label":"Liên hệ và trình quay số","locale":"vi-vn","count":2},{"label":"Contacts","locale":"","count":1},{"label":"Contacts","locale":"en-gb","count":1},{"label":"Contacts","locale":"fr-fr","count":1},{"label":"Contacts and dialer","locale":"en-gb","count":1},{"label":"Kontakte","locale":"de-de","count":1}],"seen_on_pagination":{"paging_mode":"complete","limit":20,"offset":0,"has_more":false,"next_offset":null,"after":null,"next_after":null,"total":20},"seen_on":[{"device_id":13,"make":"A-gold","model":"Titan","os_api":"28","observation_count":6,"user_facing_count":5,"last_seen":"2025-06-15T20:42:07Z"},{"device_id":159,"make":"CipherLab","model":"RK95","os_api":"28","observation_count":3,"user_facing_count":3,"last_seen":"2025-09-25T07:33:44Z"},{"device_id":333,"make":"COMMBOX","model":"CommBox_Classic_S5","os_api":"34","observation_count":1,"user_facing_count":1,"last_seen":"2026-04-02T04:31:41Z","provenance":{"classification":"oem","vendor":"COMMBOX","sha256":"5d6a1593c7049be0d4ffcf58102122dbf049d908678e67799c161e800af0a48b"}},{"device_id":170,"make":"Dahua","model":"MC480-U","os_api":"33","observation_count":1,"user_facing_count":1,"last_seen":"2025-09-08T15:06:55Z"},{"device_id":180,"make":"Google","model":"GMS on ARM64","os_api":"34","observation_count":1,"user_facing_count":1,"last_seen":"2025-09-16T10:29:35Z"},{"device_id":1039,"make":"Google","model":"Pixel 10","os_api":"36","observation_count":1,"user_facing_count":1,"last_seen":"2026-06-05T10:10:22Z","provenance":{"classification":"google","sha256":"b69a2353f3c64d06e56a202fb07550c6f018d76dbaa68131410485001a4f02ff"}},{"device_id":91,"make":"Google","model":"sdk_gphone64_x86_64","os_api":"31","observation_count":7,"user_facing_count":7,"last_seen":"2026-10-10T09:32:23Z","provenance":{"classification":"google","sha256":"6e433e476ed0789ce76adcf03e39bd034e100a2ea9995471f157f57e37d46a35"}},{"device_id":262,"make":"ITEL MOBILE LIMITED","model":"itel A16 Plus","os_api":"27","observation_count":1,"user_facing_count":1,"last_seen":"2025-12-06T06:29:42Z","provenance":{"classification":"oem","vendor":"ITEL MOBILE LIMITED","sha256":"dbc77e41d00786054212e2ed4de8123f4b1100df31ab69681d750d4377b5a748"}},{"device_id":270,"make":"motorola","model":"moto g - 2025","os_api":"36","observation_count":2,"user_facing_count":1,"last_seen":"2026-10-25T04:45:21Z","provenance":{"classification":"oem","vendor":"Motorola","sha256":"b598f6726097008921e53b1a7267fdab5b46bfa90301924da471899045957143"}},{"device_id":4794,"make":"Newland","model":"NLS-MT95","os_api":"35","observation_count":1,"user_facing_count":1,"last_seen":"2026-08-19T10:19:54Z","provenance":{"classification":"oem","vendor":"Newland","sha256":"238274d5af80e177e7b036bca1ead5809673c74df5f49c94c29c25b5c8a0b15e"}},{"device_id":174,"make":"OnePlus","model":"HD1903","os_api":"31","observation_count":1,"user_facing_count":1,"last_seen":"2025-09-10T10:08:23Z"},{"device_id":90,"make":"QEMU","model":"Standard PC (i440FX + PIIX, 1996)","os_api":"27","observation_count":11,"user_facing_count":11,"last_seen":"2026-09-10T21:33:23Z","provenance":{"classification":"oem","vendor":"QEMU","sha256":"e33a9ed4ee6e74898539bf3abe6411aaa1c947b1af67caeefb740f2cf6247ca4"}},{"device_id":148,"make":"realme","model":"RMX2001","os_api":"30","observation_count":1,"user_facing_count":1,"last_seen":"2025-08-21T05:31:41Z"},{"device_id":126,"make":"SMT_HK","model":"YUMPINGO_1","os_api":"28","observation_count":1,"user_facing_count":1,"last_seen":"2025-08-09T20:31:03Z"},{"device_id":32,"make":"Xiaomi","model":"23106RN0DA","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-05-22T18:36:34Z"},{"device_id":279,"make":"Xiaomi","model":"24117RN76O","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2025-12-28T15:32:14Z"},{"device_id":323,"make":"Xiaomi","model":"24117RN76O","os_api":"36","observation_count":1,"user_facing_count":0,"last_seen":"2026-03-20T13:27:25Z"},{"device_id":275,"make":"Zebra Technologies","model":"KC50","os_api":"33","observation_count":1,"user_facing_count":0,"last_seen":"2025-12-22T19:52:14Z"},{"device_id":3416,"make":"Zebra Technologies","model":"KC50","os_api":"35","observation_count":1,"user_facing_count":0,"last_seen":"2026-11-02T01:02:28Z","provenance":{"classification":"oem","vendor":"Zebra Technologies","sha256":"03b3476e5f9490ea3bdeddccec874e588b5ae5ea43f796ddee9b1e8f719e5a2a"}},{"device_id":168,"make":"Zebra Technologies","model":"TC21","os_api":"33","observation_count":1,"user_facing_count":1,"last_seen":"2025-09-06T16:43:55Z"}],"intelligence":{"insights":["Re-signed by each device maker with its own platform key - 8 different certificates appear across 6 device makers in our sample. That is the signature of a stock AOSP/system package every OEM builds and signs itself, not a single maker's or a third party's preinstall.","Its largest observed manifest declares 44 permissions: 10 runtime (user-granted), 8 signature or system-level, 18 install-time and 8 vendor or uncatalogued.","APK size ranges from 5.2 MB to 19.4 MB across the reporting device profiles, so the build differs substantially between them."],"device_profiles":11,"signer_count":8,"signer_consistent":false,"max_permission_count":44,"min_size_bytes":5490928,"max_size_bytes":20390751,"min_target_sdk":25,"max_target_sdk":36,"oldest_version":"1.7.21","newest_version":"1.7.34","has_third_party_preinstall":false,"genuine_third_party":false,"play_eligible_count":0,"signers":[{"sha256":"03b3476e5f9490ea3bdeddccec874e588b5ae5ea43f796ddee9b1e8f719e5a2a","classification":"oem","vendor":"Zebra Technologies","observation_count":4,"makes":["Zebra Technologies"],"signs_framework":false,"global_make_count":1,"global_package_count":7,"global_observation_count":26},{"sha256":"b598f6726097008921e53b1a7267fdab5b46bfa90301924da471899045957143","classification":"oem","vendor":"Motorola","observation_count":2,"makes":["motorola"],"signs_framework":false,"global_make_count":1,"global_package_count":8,"global_observation_count":16},{"sha256":"5d6a1593c7049be0d4ffcf58102122dbf049d908678e67799c161e800af0a48b","classification":"oem","vendor":"COMMBOX","observation_count":1,"makes":["COMMBOX"],"signs_framework":false,"global_make_count":1,"global_package_count":4,"global_observation_count":4},{"sha256":"6e433e476ed0789ce76adcf03e39bd034e100a2ea9995471f157f57e37d46a35","classification":"google","observation_count":1,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":8,"global_observation_count":12},{"sha256":"238274d5af80e177e7b036bca1ead5809673c74df5f49c94c29c25b5c8a0b15e","classification":"oem","vendor":"Newland","observation_count":1,"makes":["Newland"],"signs_framework":true,"global_make_count":1,"global_package_count":113,"global_observation_count":113},{"sha256":"b69a2353f3c64d06e56a202fb07550c6f018d76dbaa68131410485001a4f02ff","classification":"google","observation_count":1,"makes":["Google"],"signs_framework":false,"global_make_count":1,"global_package_count":8,"global_observation_count":8},{"sha256":"dbc77e41d00786054212e2ed4de8123f4b1100df31ab69681d750d4377b5a748","classification":"oem","vendor":"ITEL MOBILE LIMITED","observation_count":1,"makes":["ITEL MOBILE LIMITED"],"signs_framework":false,"global_make_count":1,"global_package_count":10,"global_observation_count":10},{"sha256":"e33a9ed4ee6e74898539bf3abe6411aaa1c947b1af67caeefb740f2cf6247ca4","classification":"oem","vendor":"QEMU","observation_count":1,"makes":["QEMU"],"signs_framework":false,"global_make_count":1,"global_package_count":7,"global_observation_count":7}],"permissions":[{"permission":"android.permission.ACCESS_NETWORK_STATE","description":"Allows the app to view information about network connections such as which networks exist and are connected.","official":true},{"permission":"android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE","description":"Internal platform permission, granted only by the system.","official":false},{"permission":"android.permission.ACCESS_WIFI_STATE","description":"Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.","official":true},{"permission":"android.permission.CALL_PHONE","description":"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.","official":true},{"permission":"android.permission.FOREGROUND_SERVICE","description":"Allows the app to make use of foreground services.","official":true},{"permission":"android.permission.FOREGROUND_SERVICE_DATA_SYNC","description":"Allows the app to make use of foreground services with the type \"dataSync\"","official":true},{"permission":"android.permission.GET_ACCOUNTS","description":"Allows the app to get the list of accounts known by the phone. This may include any accounts created by applications you have installed.","official":true},{"permission":"android.permission.GET_ACCOUNTS_PRIVILEGED","description":"Signature or privileged system permission.","official":false},{"permission":"android.permission.HIDE_OVERLAY_WINDOWS","description":"This app can request that the system hides overlays originating from apps from being shown on top of it.","official":true},{"permission":"android.permission.INTERACT_ACROSS_USERS","description":"Signature or privileged system permission.","official":false},{"permission":"android.permission.INTERNET","description":"Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.","official":true},{"permission":"android.permission.MANAGE_ACCOUNTS","description":"Install-time permission, granted automatically.","official":false,"doc":{"title":"Build a device policy controller","url":"https://developer.android.com/work/dpc/build-dpc"}},{"permission":"android.permission.MANAGE_USERS","description":"Signature or privileged system permission.","official":false},{"permission":"android.permission.MODIFY_PHONE_STATE","description":"Signature or privileged system permission.","official":false},{"permission":"android.permission.NFC","description":"Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.","official":true},{"permission":"android.permission.POST_NOTIFICATIONS","description":"Allows the app to show notifications","official":true},{"permission":"android.permission.QUERY_ALL_PACKAGES","description":"Allows an app to see all installed packages.","official":true},{"permission":"android.permission.READ_CALL_LOG","description":"This app can read your call history.","official":true},{"permission":"android.permission.READ_CONTACTS","description":"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.","official":true},{"permission":"android.permission.READ_MEDIA_IMAGES","description":"Allows the app to read image files from your shared storage.","official":true},{"permission":"android.permission.READ_MEDIA_VISUAL_USER_SELECTED","description":"Allows the app to read image and video files that you select from your shared storage.","official":true},{"permission":"android.permission.READ_PHONE_NUMBERS","description":"Allows the app to access the phone numbers of the device.","official":true},{"permission":"android.permission.READ_PHONE_STATE","description":"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.","official":true},{"permission":"android.permission.READ_PRIVILEGED_PHONE_STATE","description":"Signature or privileged system permission.","official":false,"doc":{"title":"User Data Identifiers","url":"https://developer.android.com/identity/user-data-ids"}},{"permission":"android.permission.READ_PROFILE","description":"Install-time permission, granted automatically.","official":false},{"permission":"android.permission.READ_SYNC_SETTINGS","description":"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.","official":true},{"permission":"android.permission.READ_SYNC_STATS","description":"Allows an app to read the sync stats for an account, including the history of sync events and how much data is synced.","official":true},{"permission":"android.permission.RECEIVE_BOOT_COMPLETED","description":"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.","official":true},{"permission":"android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS","description":"Internal platform permission, granted only by the system.","official":false},{"permission":"android.permission.USE_CREDENTIALS","description":"Install-time permission, granted automatically.","official":false},{"permission":"android.permission.VIBRATE","description":"Allows the app to control the vibrator.","official":true},{"permission":"android.permission.WAKE_LOCK","description":"Allows the app to prevent the phone from going to sleep.","official":true},{"permission":"android.permission.WRITE_CONTACTS","description":"Allows the app to modify the data about your contacts stored on your phone. This permission allows apps to delete contact data.","official":true},{"permission":"android.permission.WRITE_PROFILE","description":"Install-time permission, granted automatically.","official":false},{"permission":"android.permission.WRITE_SETTINGS","description":"Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.","official":true},{"permission":"android.permission.WRITE_SYNC_SETTINGS","description":"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.","official":true},{"permission":"com.android.contacts.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION","official":false},{"permission":"com.android.launcher.permission.INSTALL_SHORTCUT","official":false},{"permission":"com.android.rcs.eab.permission.READ_WRITE_EAB","official":false},{"permission":"com.motorola.carrierconfig.READ_CONFIG_FILE","official":false},{"permission":"com.motorola.permission.ACCESS_CHECKIN","official":false},{"permission":"com.qti.permission.BIND_QTI_IMS_SERVICE","official":false},{"permission":"com.summit.nexos.permission.CAPS","official":false},{"permission":"com.summit.nexos.permission.MESSAGING","official":false}]},"previews":{"labels":{"kind":"preview","limit":60,"total":11,"truncated":false,"collection_url":"/api/packages/com.android.contacts/labels"}},"collections":{"labels":"/api/packages/com.android.contacts/labels","seen_on":"/api/packages/com.android.contacts/seen_on"}}
