This page provides an overview of the enterprise APIs, features, and behavior changes introduced in Android 14 (API level 34).
Contacts
Android 14 (API level 34) adds the following two fields:
ContactsContract.Contacts#ENTERPRISE_CONTENT_URI
ContactsContract.CommonDataKinds.Phone#ENTERPRISE_CONTENT_URI
Together, these fields allow personal apps with the READ_CONTACTS
permission to list all work profile contacts and phone numbers as long as the
cross-profile contacts policy in DevicePolicyManager
allows it.
Cross-profile access to contacts
The policy can be set and queried using the following methods in
DevicePolicyManager
, which specify which packages are allowed to access work
contacts from the personal profile:
These methods are backward compatible and should be used instead of the following methods that are now deprecated:
Cross-profile caller ID searches
Similarly, Android 14 (API level 34) adds the following methods for cross-profile caller ID searches:
These methods are backward compatible and should be used instead of the following methods that are now deprecated:
Ultra wideband
Ultra wideband (UWB) is a radio technology that can use a very low energy level for short-range, high-bandwidth communications over a large portion of the radio spectrum.
Starting in Android 14 (API level 34), a device or profile owner can disallow
UWB on an organization-owned device by applying the
DISALLOW_ULTRA_WIDEBAND_RADIO
user restriction with
DevicePolicyManager.addUserRestriction()
.
Deprecations
Android 14 includes the following notable API deprecations:
DevicePolicyManager#setCrossProfileCalendarPackages
andDevicePolicyManager#getCrossProfileCalendarPackages
are deprecated.Calendar apps should migrate to connected apps and device policy controllers (DPCs) should use
DevicePolicyManager#setCrossProfilePackages
instead.The following methods are deprecated:
DevicePolicyManager#setCrossProfileContactsSearchDisabled
DevicePolicyManager#getCrossProfileContactsSearchDisabled
DevicePolicyManager#setCrossProfileCallerIdDisabled
DevicePolicyManager#getCrossProfileCallerIdDisabled
DPCs should use the alternative methods outlined in the preceding Contacts section.