Call.Details
public
static
class
Call.Details
extends Object
| java.lang.Object | |
| ↳ | android.telecom.Call.Details |
Summary
Constants | |
|---|---|
int |
CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO
When set, prevents a video |
int |
CAPABILITY_CAN_PAUSE_VIDEO
For video calls, indicates whether the outgoing video for the call can be paused using
the |
int |
CAPABILITY_CAN_PULL_CALL
When set for an external call, indicates that this |
int |
CAPABILITY_DISCONNECT_FROM_CONFERENCE
Call is able to be individually disconnected when in a |
int |
CAPABILITY_HOLD
Call can currently be put on hold or unheld. |
int |
CAPABILITY_MANAGE_CONFERENCE
Call supports conference call management. |
int |
CAPABILITY_MERGE_CONFERENCE
Calls within a conference can be merged. |
int |
CAPABILITY_MUTE
Call can be muted. |
int |
CAPABILITY_RESPOND_VIA_TEXT
Call supports responding via text option. |
int |
CAPABILITY_SEPARATE_FROM_CONFERENCE
Call is able to be separated from its parent |
int |
CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL
Local device supports bidirectional video calling. |
int |
CAPABILITY_SUPPORTS_VT_LOCAL_RX
Local device supports receiving video. |
int |
CAPABILITY_SUPPORTS_VT_LOCAL_TX
Local device supports transmitting video. |
int |
CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL
Remote device supports bidirectional video calling. |
int |
CAPABILITY_SUPPORTS_VT_REMOTE_RX
Remote device supports receiving video. |
int |
CAPABILITY_SUPPORTS_VT_REMOTE_TX
Remote device supports transmitting video. |
int |
CAPABILITY_SUPPORT_DEFLECT
Call supports the deflect feature. |
int |
CAPABILITY_SUPPORT_HOLD
Call supports the hold feature. |
int |
CAPABILITY_SWAP_CONFERENCE
Calls within a conference can be swapped between foreground and background. |
int |
DIRECTION_INCOMING
Indicates that the call is an incoming call. |
int |
DIRECTION_OUTGOING
Indicates that the call is an outgoing call. |
int |
DIRECTION_UNKNOWN
Indicates that the call is neither and incoming nor an outgoing call. |
int |
PROPERTY_ASSISTED_DIALING
Indicates the call used Assisted Dialing. |
int |
PROPERTY_CONFERENCE
Whether the call is currently a conference. |
int |
PROPERTY_EMERGENCY_CALLBACK_MODE
Whether the call is made while the device is in emergency callback mode. |
int |
PROPERTY_ENTERPRISE_CALL
Whether the call is associated with the work profile. |
int |
PROPERTY_GENERIC_CONFERENCE
Whether the call is a generic conference, where we do not know the precise state of participants in the conference (eg. |
int |
PROPERTY_HAS_CDMA_VOICE_PRIVACY
Indicates that the call has CDMA Enhanced Voice Privacy enabled. |
int |
PROPERTY_HIGH_DEF_AUDIO
When set, the UI should indicate to the user that a call is using high definition audio. |
int |
PROPERTY_IS_EXTERNAL_CALL
When set, indicates that this |
int |
PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL
Indicates that the call has been identified as the network as an emergency call. |
int |
PROPERTY_RTT
Indicates that the call is an RTT call. |
int |
PROPERTY_SELF_MANAGED
Indicates that the call is from a self-managed |
int |
PROPERTY_VOIP_AUDIO_MODE
Indicates that the call is using VoIP audio mode. |
int |
PROPERTY_WIFI
Connection is using WIFI. |
Public methods | |
|---|---|
static
boolean
|
can(int capabilities, int capability)
Whether the supplied capabilities supports the specified capability. |
boolean
|
can(int capability)
Whether the capabilities of this |
static
String
|
capabilitiesToString(int capabilities)
Render a set of capability bits ( |
boolean
|
equals(Object o)
Indicates whether some other object is "equal to" this one. |
PhoneAccountHandle
|
getAccountHandle()
|
int
|
getCallCapabilities()
|
int
|
getCallDirection()
Indicates whether the call is an incoming or outgoing call. |
int
|
getCallProperties()
|
String
|
getCallerDisplayName()
The display name for the caller. |
int
|
getCallerDisplayNamePresentation()
|
int
|
getCallerNumberVerificationStatus()
Gets the verification status for the phone number of an incoming call as identified in ATIS-1000082. |
final
long
|
getConnectTimeMillis()
Returns the time the |
String
|
getContactDisplayName()
Returns the name of the caller on the remote end, as derived from a
|
long
|
getCreationTimeMillis()
Returns the time when the call was first created and added to Telecom. |
DisconnectCause
|
getDisconnectCause()
|
Bundle
|
getExtras()
|
GatewayInfo
|
getGatewayInfo()
|
Uri
|
getHandle()
|
int
|
getHandlePresentation()
|
Bundle
|
getIntentExtras()
|
StatusHints
|
getStatusHints()
|
int
|
getVideoState()
|
boolean
|
hasProperty(int property)
Whether the properties of this |
static
boolean
|
hasProperty(int properties, int property)
Whether the supplied properties includes the specified property. |
int
|
hashCode()
Returns a hash code value for the object. |
static
String
|
propertiesToString(int properties)
Render a set of property bits ( |
String
|
toString()
Returns a string representation of the object. |
Inherited methods | |
|---|---|
Constants
CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO
public static final int CAPABILITY_CANNOT_DOWNGRADE_VIDEO_TO_AUDIO
When set, prevents a video Call from being downgraded to an audio-only call.
Should be set when the VideoState has the VideoProfile#STATE_TX_ENABLED or
VideoProfile#STATE_RX_ENABLED bits set to indicate that the connection cannot be
downgraded from a video call back to a VideoState of
VideoProfile#STATE_AUDIO_ONLY.
Intuitively, a call which can be downgraded to audio should also have local and remote
video
capabilities (see CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL and
CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL).
Constant Value: 4194304 (0x00400000)
CAPABILITY_CAN_PAUSE_VIDEO
public static final int CAPABILITY_CAN_PAUSE_VIDEO
For video calls, indicates whether the outgoing video for the call can be paused using
the VideoProfile.STATE_PAUSED VideoState.
Constant Value: 1048576 (0x00100000)
CAPABILITY_CAN_PULL_CALL
public static final int CAPABILITY_CAN_PULL_CALL
When set for an external call, indicates that this Call can be pulled from a
remote device to the current device.
Should only be set on a Call where PROPERTY_IS_EXTERNAL_CALL is set.
An InCallService will only see calls with this capability if it has the
TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS metadata set to true
in its manifest.
See Connection#CAPABILITY_CAN_PULL_CALL and
Connection#PROPERTY_IS_EXTERNAL_CALL.
Constant Value: 8388608 (0x00800000)
CAPABILITY_DISCONNECT_FROM_CONFERENCE
public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE
Call is able to be individually disconnected when in a Conference.
Constant Value: 8192 (0x00002000)
CAPABILITY_HOLD
public static final int CAPABILITY_HOLD
Call can currently be put on hold or unheld.
Constant Value: 1 (0x00000001)
CAPABILITY_MANAGE_CONFERENCE
public static final int CAPABILITY_MANAGE_CONFERENCE
Call supports conference call management. This capability only applies to Conference
calls which can have Connections as children.
Constant Value: 128 (0x00000080)
CAPABILITY_MERGE_CONFERENCE
public static final int CAPABILITY_MERGE_CONFERENCE
Calls within a conference can be merged. A ConnectionService has the option to
add a Conference call before the child Connections are merged. This is how
CDMA-based Connections are implemented. For these unmerged Conferences, this
capability allows a merge button to be shown while the conference call is in the foreground
of the in-call UI.
This is only intended for use by a Conference.
Constant Value: 4 (0x00000004)
CAPABILITY_MUTE
public static final int CAPABILITY_MUTE
Call can be muted.
Constant Value: 64 (0x00000040)
CAPABILITY_RESPOND_VIA_TEXT
public static final int CAPABILITY_RESPOND_VIA_TEXT
Call supports responding via text option.
Constant Value: 32 (0x00000020)
CAPABILITY_SEPARATE_FROM_CONFERENCE
public static final int CAPABILITY_SEPARATE_FROM_CONFERENCE
Call is able to be separated from its parent Conference, if any.
Constant Value: 4096 (0x00001000)
CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL
public static final int CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL
Local device supports bidirectional video calling.
Constant Value: 768 (0x00000300)
CAPABILITY_SUPPORTS_VT_LOCAL_RX
public static final int CAPABILITY_SUPPORTS_VT_LOCAL_RX
Local device supports receiving video.
Constant Value: 256 (0x00000100)
CAPABILITY_SUPPORTS_VT_LOCAL_TX
public static final int CAPABILITY_SUPPORTS_VT_LOCAL_TX
Local device supports transmitting video.
Constant Value: 512 (0x00000200)
CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL
public static final int CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL
Remote device supports bidirectional video calling.
Constant Value: 3072 (0x00000c00)
CAPABILITY_SUPPORTS_VT_REMOTE_RX
public static final int CAPABILITY_SUPPORTS_VT_REMOTE_RX
Remote device supports receiving video.
Constant Value: 1024 (0x00000400)
CAPABILITY_SUPPORTS_VT_REMOTE_TX
public static final int CAPABILITY_SUPPORTS_VT_REMOTE_TX
Remote device supports transmitting video.
Constant Value: 2048 (0x00000800)
CAPABILITY_SUPPORT_DEFLECT
public static final int CAPABILITY_SUPPORT_DEFLECT
Call supports the deflect feature.
Constant Value: 16777216 (0x01000000)
CAPABILITY_SUPPORT_HOLD
public static final int CAPABILITY_SUPPORT_HOLD
Call supports the hold feature.
Constant Value: 2 (0x00000002)
CAPABILITY_SWAP_CONFERENCE
public static final int CAPABILITY_SWAP_CONFERENCE
Calls within a conference can be swapped between foreground and background.
See CAPABILITY_MERGE_CONFERENCE for additional information.
This is only intended for use by a Conference.
Constant Value: 8 (0x00000008)
DIRECTION_INCOMING
public static final int DIRECTION_INCOMING
Indicates that the call is an incoming call.
Constant Value: 0 (0x00000000)
DIRECTION_OUTGOING
public static final int DIRECTION_OUTGOING
Indicates that the call is an outgoing call.
Constant Value: 1 (0x00000001)
DIRECTION_UNKNOWN
public static final int DIRECTION_UNKNOWN
Indicates that the call is neither and incoming nor an outgoing call. This can be the
case for calls reported directly by a ConnectionService in special cases such as
call handovers.
Constant Value: -1 (0xffffffff)
PROPERTY_ASSISTED_DIALING
public static final int PROPERTY_ASSISTED_DIALING
Indicates the call used Assisted Dialing.
Constant Value: 512 (0x00000200)
PROPERTY_CONFERENCE
public static final int PROPERTY_CONFERENCE
Whether the call is currently a conference.
Constant Value: 1 (0x00000001)
PROPERTY_EMERGENCY_CALLBACK_MODE
public static final int PROPERTY_EMERGENCY_CALLBACK_MODE
Whether the call is made while the device is in emergency callback mode.
Constant Value: 4 (0x00000004)
PROPERTY_ENTERPRISE_CALL
public static final int PROPERTY_ENTERPRISE_CALL
Whether the call is associated with the work profile.
Constant Value: 32 (0x00000020)
PROPERTY_GENERIC_CONFERENCE
public static final int PROPERTY_GENERIC_CONFERENCE
Whether the call is a generic conference, where we do not know the precise state of participants in the conference (eg. on CDMA).
Constant Value: 2 (0x00000002)
PROPERTY_HAS_CDMA_VOICE_PRIVACY
public static final int PROPERTY_HAS_CDMA_VOICE_PRIVACY
Indicates that the call has CDMA Enhanced Voice Privacy enabled.
Constant Value: 128 (0x00000080)
PROPERTY_HIGH_DEF_AUDIO
public static final int PROPERTY_HIGH_DEF_AUDIO
When set, the UI should indicate to the user that a call is using high definition audio.
The underlying ConnectionService is responsible for reporting this
property. It is important to note that this property is not intended to report the
actual audio codec being used for a Call, but whether the call should be indicated
to the user as high definition.
The Android Telephony stack reports this property for calls based on a number of factors, including which audio codec is used and whether a call is using an HD codec end-to-end. Some mobile operators choose to suppress display of an HD indication, and in these cases this property will not be set for a call even if the underlying audio codec is in fact "high definition".
Constant Value: 16 (0x00000010)
PROPERTY_IS_EXTERNAL_CALL
public static final int PROPERTY_IS_EXTERNAL_CALL
When set, indicates that this Call does not actually exist locally for the
ConnectionService.
Consider, for example, a scenario where a user has two phones with the same phone number.
When a user places a call on one device, the telephony stack can represent that call on
the other device by adding it to the ConnectionService with the
Connection#PROPERTY_IS_EXTERNAL_CALL property set.
An InCallService will only see calls with this property if it has the
TelecomManager#METADATA_INCLUDE_EXTERNAL_CALLS metadata set to true
in its manifest.
See Connection#PROPERTY_IS_EXTERNAL_CALL.
Constant Value: 64 (0x00000040)
PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL
public static final int PROPERTY_NETWORK_IDENTIFIED_EMERGENCY_CALL
Indicates that the call has been identified as the network as an emergency call. This property may be set for both incoming and outgoing calls which the network identifies as emergency calls.
Constant Value: 2048 (0x00000800)
PROPERTY_RTT
public static final int PROPERTY_RTT
Indicates that the call is an RTT call. Use Call.getRttCall() to get the
RttCall object that is used to send and receive text.
Constant Value: 1024 (0x00000400)
PROPERTY_SELF_MANAGED
public static final int PROPERTY_SELF_MANAGED
Indicates that the call is from a self-managed ConnectionService.
See also Connection#PROPERTY_SELF_MANAGED
Constant Value: 256 (0x00000100)
PROPERTY_VOIP_AUDIO_MODE
public static final int PROPERTY_VOIP_AUDIO_MODE
Indicates that the call is using VoIP audio mode.
When this property is set, the AudioManager audio mode for this
call will be AudioManager.MODE_IN_COMMUNICATION. When this
property is not set, the audio mode for this call will be
AudioManager.MODE_IN_CALL.
This property reflects changes made using Connection#setAudioModeIsVoip(boolean).
You can use this property to determine whether an un-answered incoming call or a held call will use VoIP audio mode (if the call does not currently have focus, the system audio mode may not reflect the mode the call will use).
Constant Value: 4096 (0x00001000)
PROPERTY_WIFI
public static final int PROPERTY_WIFI
Connection is using WIFI.
Constant Value: 8 (0x00000008)
Public methods
can
public static boolean can (int capabilities,
int capability)
Whether the supplied capabilities supports the specified capability.
| Parameters | |
|---|---|
capabilities |
int: A bit field of capabilities. |
capability |
int: The capability to check capabilities for. |
| Returns | |
|---|---|
boolean |
Whether the specified capability is supported. |
can
public boolean can (int capability)
Whether the capabilities of this Details supports the specified capability.
| Parameters | |
|---|---|
capability |
int: The capability to check capabilities for. |
| Returns | |
|---|---|
boolean |
Whether the specified capability is supported. |
capabilitiesToString
public static String capabilitiesToString (int capabilities)
Render a set of capability bits (CAPABILITY_*) as a human readable string.
| Parameters | |
|---|---|
capabilities |
int: A capability bit field. |
| Returns | |
|---|---|
String |
A human readable string representation. |
equals
public boolean equals (Object o)
Indicates whether some other object is "equal to" this one.
The equals method implements an equivalence relation
on non-null object references:
- It is reflexive: for any non-null reference value
x,x.equals(x)should returntrue. - It is symmetric: for any non-null reference values
xandy,x.equals(y)should returntrueif and only ify.equals(x)returnstrue. - It is transitive: for any non-null reference values
x,y, andz, ifx.equals(y)returnstrueandy.equals(z)returnstrue, thenx.equals(z)should returntrue. - It is consistent: for any non-null reference values
xandy, multiple invocations ofx.equals(y)consistently returntrueor consistently returnfalse, provided no information used inequalscomparisons on the objects is modified. - For any non-null reference value
x,x.equals(null)should returnfalse.
The equals method for class Object implements
the most discriminating possible equivalence relation on objects;
that is, for any non-null reference values x and
y, this method returns true if and only
if x and y refer to the same object
(x == y has the value true).
Note that it is generally necessary to override the hashCode
method whenever this method is overridden, so as to maintain the
general contract for the hashCode method, which states
that equal objects must have equal hash codes.
| Parameters | |
|---|---|
o |
Object: the reference object with which to compare. |
| Returns | |
|---|---|
boolean |
true if this object is the same as the obj
argument; false otherwise. |
getAccountHandle
public PhoneAccountHandle getAccountHandle ()
| Returns | |
|---|---|
PhoneAccountHandle |
The PhoneAccountHandle whereby the Call is currently being
routed. |
getCallCapabilities
public int getCallCapabilities ()
| Returns | |
|---|---|
int |
A bitmask of the capabilities of the Call, as defined by the various
CAPABILITY_* constants in this class. |
getCallDirection
public int getCallDirection ()
Indicates whether the call is an incoming or outgoing call.
| Returns | |
|---|---|
int |
The call's direction.
Value is DIRECTION_UNKNOWN, DIRECTION_INCOMING, or DIRECTION_OUTGOING |
getCallProperties
public int getCallProperties ()
| Returns | |
|---|---|
int |
A bitmask of the properties of the Call, as defined by the various
PROPERTY_* constants in this class. |
getCallerDisplayName
public String getCallerDisplayName ()
The display name for the caller.
This is the name as reported by the ConnectionService associated with this call.
| Returns | |
|---|---|
String |
The display name for the caller. |
getCallerDisplayNamePresentation
public int getCallerDisplayNamePresentation ()
| Returns | |
|---|---|
int |
The presentation requirements for the caller display name. See
TelecomManager for valid values. |
getCallerNumberVerificationStatus
public int getCallerNumberVerificationStatus ()
Gets the verification status for the phone number of an incoming call as identified in ATIS-1000082.
| Returns | |
|---|---|
int |
the verification status.
Value is Connection.VERIFICATION_STATUS_NOT_VERIFIED, Connection.VERIFICATION_STATUS_PASSED, or Connection.VERIFICATION_STATUS_FAILED |
getConnectTimeMillis
public final long getConnectTimeMillis ()
Returns the time the Call connected (i.e. became active). This information is
updated periodically, but user interfaces should not rely on this to display the "call
time clock". For the time when the call was first added to Telecom, see
getCreationTimeMillis().
| Returns | |
|---|---|
long |
The time the Call connected in milliseconds since the epoch. |
getContactDisplayName
public String getContactDisplayName ()
Returns the name of the caller on the remote end, as derived from a
ContactsContract lookup of the call's handle.
| Returns | |
|---|---|
String |
The name of the caller, or null if the lookup is not yet complete, if
there's no contacts entry for the caller, or if the InCallService does
not hold the Manifest.permission.READ_CONTACTS permission. |
getCreationTimeMillis
public long getCreationTimeMillis ()
Returns the time when the call was first created and added to Telecom. This is the same
time that is logged as the start time in the Call Log (see
CallLog.Calls.DATE). To determine when the call was connected
(became active), see getConnectTimeMillis().
| Returns | |
|---|---|
long |
The creation time of the call, in millis since the epoch. |
getDisconnectCause
public DisconnectCause getDisconnectCause ()
| Returns | |
|---|---|
DisconnectCause |
For a Call.STATE_DISCONNECTED Call, the disconnect cause expressed
by DisconnectCause. |
getExtras
public Bundle getExtras ()
| Returns | |
|---|---|
Bundle |
The extras associated with this call. |
getGatewayInfo
public GatewayInfo getGatewayInfo ()
| Returns | |
|---|---|
GatewayInfo |
Information about any calling gateway the Call may be using. |
getHandle
public Uri getHandle ()
| Returns | |
|---|---|
Uri |
The handle (e.g., phone number) to which the Call is currently
connected. |
getHandlePresentation
public int getHandlePresentation ()
| Returns | |
|---|---|
int |
The presentation requirements for the handle. See
TelecomManager for valid values. |
getIntentExtras
public Bundle getIntentExtras ()
| Returns | |
|---|---|
Bundle |
The extras used with the original intent to place this call. |
getStatusHints
public StatusHints getStatusHints ()
| Returns | |
|---|---|
StatusHints |
The current StatusHints, or null if none
have been set. |
getVideoState
public int getVideoState ()
| Returns | |
|---|---|
int |
The video state of the Call. |
hasProperty
public boolean hasProperty (int property)
Whether the properties of this Details includes the specified property.
| Parameters | |
|---|---|
property |
int: The property to check properties for. |
| Returns | |
|---|---|
boolean |
Whether the specified property is supported. |
hasProperty
public static boolean hasProperty (int properties,
int property)
Whether the supplied properties includes the specified property.
| Parameters | |
|---|---|
properties |
int: A bit field of properties. |
property |
int: The property to check properties for. |
| Returns | |
|---|---|
boolean |
Whether the specified property is supported. |
hashCode
public int hashCode ()
Returns a hash code value for the object. This method is
supported for the benefit of hash tables such as those provided by
HashMap.
The general contract of hashCode is:
- Whenever it is invoked on the same object more than once during
an execution of a Java application, the
hashCodemethod must consistently return the same integer, provided no information used inequalscomparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. - If two objects are equal according to the
equals(Object)method, then calling thehashCodemethod on each of the two objects must produce the same integer result. - It is not required that if two objects are unequal
according to the
equals(java.lang.Object)method, then calling thehashCodemethod on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
As much as is reasonably practical, the hashCode method defined by
class Object does return distinct integers for distinct
objects. (This is typically implemented by converting the internal
address of the object into an integer, but this implementation
technique is not required by the
Java™ programming language.)
| Returns | |
|---|---|
int |
a hash code value for this object. |
propertiesToString
public static String propertiesToString (int properties)
Render a set of property bits (PROPERTY_*) as a human readable string.
| Parameters | |
|---|---|
properties |
int: A property bit field. |
| Returns | |
|---|---|
String |
A human readable string representation. |
toString
public String toString ()
Returns a string representation of the object. In general, the
toString method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
| Returns | |
|---|---|
String |
a string representation of the object. |