PhoneAccountCapability Enum
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
public enum PhoneAccountCapability
type PhoneAccountCapability =
- Inheritance
-
PhoneAccountCapability
Fields
| Name | Value | Description |
|---|---|---|
| ConnectionManager | 1 | Flag indicating that this PhoneAccount can act as a connection manager for other connections. The ConnectionService associated with this PhoneAccount will be allowed to manage phone calls including using its own proprietary phone-call implementation (like VoIP calling) to make calls instead of the telephony stack. When a user opts to place a call using the SIM-based telephony stack, the ConnectionService associated with this PhoneAccount will be attempted first if the user has explicitly selected it to be used as the default connection manager. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| CallProvider | 2 | Flag indicating that this PhoneAccount can make phone calls in place of traditional SIM-based telephony calls. This account will be treated as a distinct method for placing calls alongside the traditional SIM-based telephony stack. This flag is distinct from CAPABILITY_CONNECTION_MANAGER in that it is not allowed to manage or place calls from the built-in telephony stack. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SimSubscription | 4 | Flag indicating that this PhoneAccount represents a built-in PSTN SIM subscription. Only the Android framework can register a PhoneAccount having this capability. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| VideoCalling | 8 | Flag indicating that this PhoneAccount is currently able to place video calls. See also CAPABILITY_SUPPORTS_VIDEO_CALLING which indicates whether the PhoneAccount supports placing video calls. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| PlaceEmergencyCalls | 16 | Flag indicating that this PhoneAccount is capable of placing emergency calls. By default all PSTN PhoneAccounts are capable of placing emergency calls. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| CallSubject | 64 | Flag indicating that this PhoneAccount supports a subject for Calls. This means a caller is able to specify a short subject line for an outgoing call. A capable receiving device displays the call subject on the incoming call screen. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| VideoCallingReliesOnPresence | 256 | Flag indicating that for this PhoneAccount, the ability to make a video call to a number relies on presence. Should only be set if the PhoneAccount also has CAPABILITY_VIDEO_CALLING. Note: As of Android 12, using the ContactsContract.DataColumns.CARRIER_PRESENCE_VT_CAPABLE bit on the ContactsContract.DataColumns.CARRIER_PRESENCE column to indicate whether a contact's phone number supports video calling has been deprecated and should only be used on devices where CarrierConfigManager.KEY_USE_RCS_PRESENCE_BOOL is set. On newer devices, applications must use RcsUceAdapter instead to determine whether or not a contact's phone number supports carrier video calling. See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SupportsVideoCalling | 1024 | Flag indicating that this PhoneAccount supports video calling. This is not an indication that the PhoneAccount is currently able to make a video call, but rather that it has the ability to make video calls (but not necessarily at this time). Whether a PhoneAccount can make a video call is ultimately controlled by CAPABILITY_VIDEO_CALLING, which indicates whether the PhoneAccount is currently capable of making a video call. Consider a case where, for example, a PhoneAccount supports making video calls (e.g. CAPABILITY_SUPPORTS_VIDEO_CALLING), but a current lack of network connectivity prevents video calls from being made (e.g. CAPABILITY_VIDEO_CALLING). See getCapabilities() Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SelfManaged | 2048 | This constant was deprecated in API level 37. VoIP applications that want to integrate with the Telecom framework should transition to the new Telecom VoIP APIs which are wrapped by the CoreTelecom Jetpack Library. Flag indicating that this PhoneAccount is responsible for managing its own Connections. This type of PhoneAccount is ideal for use with standalone calling apps which do not wish to use the default phone app for Connection UX, but which want to leverage the call and audio routing capabilities of the Telecom framework. When set, Connections created by the self-managed ConnectionService will not be surfaced to implementations of the InCallService API. Thus it is the responsibility of a self-managed ConnectionService to provide a user interface for its Connections. Self-managed Connections will, however, be displayed on connected Bluetooth devices. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| Rtt | 4096 | Flag indicating that this PhoneAccount is capable of making a call with an RTT (Real-time text) session. When set, Telecom will attempt to open an RTT session on outgoing calls that specify that they should be placed with an RTT session, and the in-call app will be displayed with text entry fields for RTT. Likewise, the in-call app can request that an RTT session be opened during a call if this bit is set. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| AdhocConferenceCalling | 16384 | An adhoc conference call is established by providing a list of addresses to TelecomManager#startConference(List<Uri>, int videoState) where the ConnectionService is responsible for connecting all indicated participants to a conference simultaneously. This is in contrast to conferences formed by merging calls together (e.g. using Call.mergeConference()). Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| CallComposer | 32768 | Flag indicating whether this PhoneAccount is capable of supporting the call composer functionality for enriched calls. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SupportsVoiceCallingIndications | 65536 | Flag indicating that this PhoneAccount provides SIM-based voice calls, potentially as an over-the-top solution such as wi-fi calling. Similar to CAPABILITY_SUPPORTS_VIDEO_CALLING, this capability indicates this PhoneAccount has the ability to make voice calls (but not necessarily at this time). Whether this PhoneAccount can make a voice call is ultimately controlled by CAPABILITY_VOICE_CALLING_AVAILABLE, which indicates whether this PhoneAccount is currently capable of making a voice call. Consider a case where, for example, a PhoneAccount supports making voice calls (e.g. CAPABILITY_SUPPORTS_VOICE_CALLING_INDICATIONS), but a current lack of network connectivity prevents voice calls from being made (e.g. CAPABILITY_VOICE_CALLING_AVAILABLE). In order to declare this capability, this PhoneAccount must also declare CAPABILITY_SIM_SUBSCRIPTION or CAPABILITY_CONNECTION_MANAGER and satisfy the associated requirements. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| VoiceCallingAvailable | 131072 | Flag indicating that this PhoneAccount is currently able to place SIM-based voice calls, similar to CAPABILITY_VIDEO_CALLING. See also CAPABILITY_SUPPORTS_VOICE_CALLING_INDICATIONS, which indicates whether the PhoneAccount supports placing SIM-based voice calls or not. In order to declare this capability, this PhoneAccount must also declare CAPABILITY_SIM_SUBSCRIPTION or CAPABILITY_CONNECTION_MANAGER and satisfy the associated requirements. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SupportsTransactionalOperations | 262144 | Flag indicating that this PhoneAccount supports the transactional TelecomManager.addCall API for adding calls. An app that declares this capability is indicating its support for a newer, more flexible call registration mechanism. When this capability is set on a PhoneAccount, the Telecom framework will amend its capabilities to include CAPABILITY_SELF_MANAGED. This allows the app to manage its own call UI and lifecycle, while still integrating with the Android system for audio routing and call management. This capability should only be added if your application is using the TelecomManager.addCall method to report new incoming and outgoing calls. If your app uses the legacy methods TelecomManager.addNewIncomingCall or TelecomManager.placeCall, this capability must not be used. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| SupportsCallStreaming | 524288 | Flag indicating that this voip app PhoneAccount supports the call streaming session to stream call audio to another remote device via streaming app. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| ChangeRttCallToAudioCall | 1048576 | Flag indicating that this PhoneAccount is capable of changing an RTT (Real-time text) call to a voice call. When set, the in-call app will display the "change to voice" option. Only applicable for a phone account with CAPABILITY_RTT. Android reference for Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. |
| OptOutOfPremiumNetwork | 2097152 |
Remarks
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.