Most visited

Recently visited

Added in API level 23

PhoneAccountHandle

public final class PhoneAccountHandle
extends Object implements Parcelable

java.lang.Object
   ↳ android.telecom.PhoneAccountHandle


PhoneAccount的唯一标识符。 A PhoneAccountHandle由两部分组成:

Note: This Class requires a non-null ComponentName and UserHandle to operate properly. Passing in invalid parameters will generate a log warning. See PhoneAccount, TelecomManager.

Summary

Inherited constants

From interface android.os.Parcelable

Fields

public static final Creator<PhoneAccountHandle> CREATOR

Public constructors

PhoneAccountHandle(ComponentName componentName, String id)
PhoneAccountHandle(ComponentName componentName, String id, UserHandle userHandle)

Public methods

int describeContents()

描述此Parcelable实例的封送表示中包含的特殊对象的种类。

boolean equals(Object other)

指示其他某个对象是否“等于”这一个。

ComponentName getComponentName()

ComponentName负责制作使用此电话连接服务的 PhoneAccountHandle

String getId()

一个字符串,它唯一地区分创建它的连接服务所支持的所有其他特定的 PhoneAccountHandle

UserHandle getUserHandle()
int hashCode()

返回对象的哈希码值。

String toString()

返回对象的字符串表示形式。

void writeToParcel(Parcel out, int flags)

将此对象平铺到一个包裹中。

Inherited methods

From class java.lang.Object
From interface android.os.Parcelable

Fields

CREATOR

Added in API level 23
Creator<PhoneAccountHandle> CREATOR

Public constructors

PhoneAccountHandle

Added in API level 23
PhoneAccountHandle (ComponentName componentName, 
                String id)

Parameters
componentName ComponentName
id String

PhoneAccountHandle

Added in API level 23
PhoneAccountHandle (ComponentName componentName, 
                String id, 
                UserHandle userHandle)

Parameters
componentName ComponentName
id String
userHandle UserHandle

Public methods

describeContents

Added in API level 23
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.

equals

Added in API level 23
boolean equals (Object other)

指示其他某个对象是否“等于”这一个。

equals方法在非空对象引用上实现等价关系:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

Objectequals方法实现了对象上最可能的等价关系; 也就是说,对于任何非空参考值xy ,此方法返回true当且仅当xy引用同一对象( x == y的值为true )。

请注意,通常需要重写 hashCode方法(每当此方法被覆盖时),以便维护 hashCode方法的一般合同,该方法声明相等对象必须具有相同的哈希代码。

Parameters
other Object: the reference object with which to compare.
Returns
boolean true if this object is the same as the obj argument; false otherwise.

getComponentName

Added in API level 23
ComponentName getComponentName ()

ComponentName负责制作使用此电话连接服务的 PhoneAccountHandle

Returns
ComponentName A suitable ComponentName.

getId

Added in API level 23
String getId ()

一个字符串,用于区分这个特定的 PhoneAccountHandle与创建它的连接服务所支持的其他所有其他 PhoneAccountHandle

连接服务必须在许多Android设备上选择在其用户与其服务的关系生命周期中保持稳定的标识符。 例如,一组好的标识符可能是用户通过特定服务注册其帐户的电子邮件地址。 根据服务如何选择操作,一套不好的标识符可能是一个整数序列的增加( 012 ,......),它们各自手机上的本地产生的,并可能与其他手机或之后产生的值冲突给定电话的数据擦除。 重要说明:非唯一标识符可能导致非确定性的呼叫日志备份/恢复行为。

Returns
String A service-specific unique identifier for this PhoneAccountHandle.

getUserHandle

Added in API level 23
UserHandle getUserHandle ()

Returns
UserHandle the UserHandle to use when connecting to this PhoneAccount.

hashCode

Added in API level 23
int hashCode ()

返回对象的哈希码值。 为了散列表的好处而支持此方法,例如由HashMap提供的HashMap

hashCode的总合同是:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons 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 the hashCode method 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 the hashCode method 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.

尽可能合理实用,类Object定义的hashCode方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但Java TM编程语言不需要此实现技术。)

Returns
int a hash code value for this object.

toString

Added in API level 23
String toString ()

返回对象的字符串表示形式。 一般来说, toString方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。

ObjecttoString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

Added in API level 23
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.

Hooray!