public final class PhoneAccount
extends Object
implements Parcelable
java.lang.Object | |
↳ | android.telecom.PhoneAccount |
代表拨打或接听电话的独特方法。 可以发出呼叫并希望将这些呼叫集成到拨号程序和呼叫中UI的应用程序应构建此类的实例,并使用TelecomManager
将其注册到系统。
当拨打电话时, TelecomManager
使用注册的PhoneAccount
向用户呈现备选选项。 在构建PhoneAccount
,应用程序应提供一个有效的PhoneAccountHandle
,它引用电信将用于与应用程序交互的连接服务实现。
Nested classes |
|
---|---|
class |
PhoneAccount.Builder 助手类创建 |
Constants |
|
---|---|
int |
CAPABILITY_CALL_PROVIDER 指示此 |
int |
CAPABILITY_CALL_SUBJECT 表示此 |
int |
CAPABILITY_CONNECTION_MANAGER 指示此 |
int |
CAPABILITY_PLACE_EMERGENCY_CALLS 表示这个 |
int |
CAPABILITY_SIM_SUBSCRIPTION 表示此 |
int |
CAPABILITY_VIDEO_CALLING 指示此 |
int |
CAPABILITY_VIDEO_CALLING_RELIES_ON_PRESENCE 标志表明对于这个 |
String |
EXTRA_CALL_SUBJECT_CHARACTER_ENCODING
|
String |
EXTRA_CALL_SUBJECT_MAX_LENGTH
|
int |
NO_HIGHLIGHT_COLOR 指示不设置高光颜色。 |
int |
NO_RESOURCE_ID 指示没有资源ID被设置。 |
String |
SCHEME_SIP SIP URI的URI方案。 |
String |
SCHEME_TEL 电话号码URI的URI方案。 |
String |
SCHEME_VOICEMAIL 语音邮件URI的URI方案。 |
Inherited constants |
---|
From interface android.os.Parcelable
|
Fields |
|
---|---|
public static final Creator<PhoneAccount> |
CREATOR |
Public methods |
|
---|---|
static PhoneAccount.Builder |
builder(PhoneAccountHandle accountHandle, CharSequence label) |
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
PhoneAccountHandle |
getAccountHandle() 此 |
Uri |
getAddress() 与此 |
int |
getCapabilities() 此功能 |
Bundle |
getExtras() 与此 |
int |
getHighlightColor() 用于显示有关此 |
Icon |
getIcon() 代表这个 |
CharSequence |
getLabel() 一个简短的标签描述 |
CharSequence |
getShortDescription() 一小段描述这个 |
Uri |
getSubscriptionAddress() 用于此 |
List<String> |
getSupportedUriSchemes() 这个 |
boolean |
hasCapabilities(int capability) 确定此 |
boolean |
isEnabled() 指示用户是否已启用此 |
boolean |
supportsUriScheme(String uriScheme) 确定 |
PhoneAccount.Builder |
toBuilder() 返回使用当前的 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel out, int flags) 将此对象平铺到一个包裹中。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.os.Parcelable
|
int CAPABILITY_CALL_PROVIDER
表示此PhoneAccount
可以拨打电话以代替传统的基于SIM的电话呼叫的标志。 该帐户将被视为与传统的基于SIM卡的电话协议栈一起拨打电话的独特方法。 该标志不同于CAPABILITY_CONNECTION_MANAGER
,因为它不允许管理或拨打内置电话堆栈的呼叫。
常量值:2(0x00000002)
int CAPABILITY_CALL_SUBJECT
表示此PhoneAccount
支持呼叫主题的标志。 这意味着来电者能够为传出呼叫指定较短的主题行。 强大的接收设备在来电屏幕上显示呼叫主题。
常量值:64(0x00000040)
int CAPABILITY_CONNECTION_MANAGER
指示此PhoneAccount
可以充当其他连接的连接管理器的标志。 与此ConnectionService
相关联的PhoneAccount
将被允许管理电话呼叫,包括使用其自己的专有电话呼叫实现(如VoIP呼叫)来拨打电话而不是电话堆栈。
当用户选择,以使用基于SIM卡的电话协议栈一个电话, ConnectionService
与此相关 PhoneAccount
如果用户明确选择它作为默认的连接管理器将首先尝试。
常数值:1(0x00000001)
int CAPABILITY_PLACE_EMERGENCY_CALLS
表示此PhoneAccount
能够发出紧急呼叫的标志。 默认情况下,所有PSTN PhoneAccount
都可以拨打紧急电话。
常量值:16(0x00000010)
int CAPABILITY_SIM_SUBSCRIPTION
表示此 PhoneAccount
代表内置的PSTN SIM订阅的标志。
只有Android框架才能注册具有此功能的 PhoneAccount
。
常量值:4(0x00000004)
int CAPABILITY_VIDEO_CALLING
表示此 PhoneAccount
能够放置视频呼叫的标志。
常量值:8(0x00000008)
int CAPABILITY_VIDEO_CALLING_RELIES_ON_PRESENCE
标志表明对于这个PhoneAccount
,对一个号码进行视频通话的能力依赖于存在。 只有在PhoneAccount
也有CAPABILITY_VIDEO_CALLING
时才应该设置。
设置时, ConnectionService
负责切换 CARRIER_PRESENCE
列中的 CARRIER_PRESENCE_VT_CAPABLE
位,以指示联系人的电话号码是否支持视频呼叫。
常量值:256(0x00000100)
String EXTRA_CALL_SUBJECT_CHARACTER_ENCODING
PhoneAccount
临时密钥(参见getExtras()
)确定了在确定消息长度时要使用的字符编码。 当确定用户可以在呼叫主题中键入的字符数时,用户界面可以使用该界面。 如果为空字符串,呼叫主题消息大小限制将以1:1为基础强制执行。 也就是说,每个字符都会将消息大小限制计为单个字符。 如果指定了字符编码,则消息大小限制将基于每个指定编码的消息中的字节数。 有关通话主题最大长度的更多信息,请参阅EXTRA_CALL_SUBJECT_MAX_LENGTH
。
常量值:“android.telecom.extra.CALL_SUBJECT_CHARACTER_ENCODING”
String EXTRA_CALL_SUBJECT_MAX_LENGTH
PhoneAccount
临时密钥(请参阅getExtras()
),该密钥通过ACTION_CALL
意图确定通过EXTRA_CALL_SUBJECT
额外指定的呼叫主题的最大允许长度。 最终, ConnectionService
负责在发送消息时强制实施最大呼叫主题长度,但是会提供此额外费用,以便用户界面可以在用户键入该主题时主动限制呼叫主题的长度。
常量值:“android.telecom.extra.CALL_SUBJECT_MAX_LENGTH”
PhoneAccount.Builder builder (PhoneAccountHandle accountHandle, CharSequence label)
Parameters | |
---|---|
accountHandle |
PhoneAccountHandle
|
label |
CharSequence
|
Returns | |
---|---|
PhoneAccount.Builder |
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象在writeToParcel(Parcel, int)
的输出中包含writeToParcel(Parcel, int)
,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR
位。
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
PhoneAccountHandle getAccountHandle ()
此 PhoneAccount
的唯一标识符。
Returns | |
---|---|
PhoneAccountHandle |
A PhoneAccountHandle . |
Uri getAddress ()
与此PhoneAccount
相关联的地址(例如,电话号码)。 这表示使用此PhoneAccount
拨出电话将来到的目的地(如果适用)以及使用此PhoneAccount
拨入的呼叫的目的地可以被寻址的目的地。
Returns | |
---|---|
Uri |
A address expressed as a Uri , for example, a phone number. |
int getCapabilities ()
此功能 PhoneAccount
。
Returns | |
---|---|
int |
A bit field of flags describing this PhoneAccount 's capabilities. |
Bundle getExtras ()
与此 PhoneAccount
相关的附加 PhoneAccount
。
ConnectionService
可以通过额外提供关于 PhoneAccount
实现特定信息。
Returns | |
---|---|
Bundle |
The extras. |
int getHighlightColor ()
用于显示有关此 PhoneAccount
信息的高亮颜色。
Returns | |
---|---|
int |
A hexadecimal color value. |
CharSequence getLabel ()
描述 PhoneAccount
简短标签。
Returns | |
---|---|
CharSequence |
A label for this PhoneAccount . |
CharSequence getShortDescription ()
一小段描述这 PhoneAccount
。
Returns | |
---|---|
CharSequence |
A description for this PhoneAccount . |
Uri getSubscriptionAddress ()
用于此PhoneAccount
的原始回PhoneAccount
,与getAddress()
不同。 对于大多数PhoneAccount
这应该被注册为null
。 它被系统用于基于SIM卡的PhoneAccount
注册,其中setLine1NumberForDisplay(String, String)
已用于更改回拨号码。
Returns | |
---|---|
Uri |
The subscription number, suitable for display to the user. |
List<String> getSupportedUriSchemes ()
这个 PhoneAccount
支持的URI方案。
Returns | |
---|---|
List<String> |
The URI schemes. |
boolean hasCapabilities (int capability)
确定此 PhoneAccount
是否具有由传入的位掩码指定的功能。
Parameters | |
---|---|
capability |
int : The capabilities to check. |
Returns | |
---|---|
boolean |
true if the phone account has the capability. |
boolean isEnabled ()
指示用户是否已启用此PhoneAccount
。 该值只填入PhoneAccount
通过返回小号getPhoneAccount(PhoneAccountHandle)
。
Returns | |
---|---|
boolean |
true if the account is enabled by the user, false otherwise. |
boolean supportsUriScheme (String uriScheme)
确定 PhoneAccount
支持使用指定的URI方案调用/从地址的呼叫。
Parameters | |
---|---|
uriScheme |
String : The URI scheme to check. |
Returns | |
---|---|
boolean |
true if the PhoneAccount supports calls to/from addresses with the specified URI scheme. |
PhoneAccount.Builder toBuilder ()
返回使用当前 PhoneAccount
实例初始化的构建器。
Returns | |
---|---|
PhoneAccount.Builder |
The builder. |
String toString ()
返回对象的字符串表示形式。 通常, toString
方法会返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object
的toString
方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @
”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel out, int flags)
将此对象平铺到一个包裹中。
Parameters | |
---|---|
out |
Parcel : The Parcel in which the object should be written. |
flags |
int : Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE . |