Merge "Add api to retrieve call creation time."
This commit is contained in:
@ -36844,6 +36844,7 @@ package android.telecom {
|
||||
method public java.lang.String getCallerDisplayName();
|
||||
method public int getCallerDisplayNamePresentation();
|
||||
method public final long getConnectTimeMillis();
|
||||
method public long getCreationTimeMillis();
|
||||
method public android.telecom.DisconnectCause getDisconnectCause();
|
||||
method public android.os.Bundle getExtras();
|
||||
method public android.telecom.GatewayInfo getGatewayInfo();
|
||||
|
@ -39818,6 +39818,7 @@ package android.telecom {
|
||||
method public java.lang.String getCallerDisplayName();
|
||||
method public int getCallerDisplayNamePresentation();
|
||||
method public final long getConnectTimeMillis();
|
||||
method public long getCreationTimeMillis();
|
||||
method public android.telecom.DisconnectCause getDisconnectCause();
|
||||
method public android.os.Bundle getExtras();
|
||||
method public android.telecom.GatewayInfo getGatewayInfo();
|
||||
|
@ -36927,6 +36927,7 @@ package android.telecom {
|
||||
method public java.lang.String getCallerDisplayName();
|
||||
method public int getCallerDisplayNamePresentation();
|
||||
method public final long getConnectTimeMillis();
|
||||
method public long getCreationTimeMillis();
|
||||
method public android.telecom.DisconnectCause getDisconnectCause();
|
||||
method public android.os.Bundle getExtras();
|
||||
method public android.telecom.GatewayInfo getGatewayInfo();
|
||||
|
@ -348,6 +348,7 @@ public final class Call {
|
||||
private final StatusHints mStatusHints;
|
||||
private final Bundle mExtras;
|
||||
private final Bundle mIntentExtras;
|
||||
private final long mCreationTimeMillis;
|
||||
|
||||
/**
|
||||
* Whether the supplied capabilities supports the specified capability.
|
||||
@ -570,9 +571,12 @@ public final class Call {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The time the {@code Call} has been connected. This information is updated
|
||||
* periodically, but user interfaces should not rely on this to display any "call time
|
||||
* clock".
|
||||
* Returns the time the {@link 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
|
||||
* {@link #getCreationTimeMillis()}.
|
||||
*
|
||||
* @return The time the {@link Call} connected in milliseconds since the epoch.
|
||||
*/
|
||||
public final long getConnectTimeMillis() {
|
||||
return mConnectTimeMillis;
|
||||
@ -614,6 +618,18 @@ public final class Call {
|
||||
return mIntentExtras;
|
||||
}
|
||||
|
||||
/**
|
||||
* 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
|
||||
* {@link android.provider.CallLog.Calls#DATE}). To determine when the call was connected
|
||||
* (became active), see {@link #getConnectTimeMillis()}.
|
||||
*
|
||||
* @return The creation time of the call, in millis since the epoch.
|
||||
*/
|
||||
public long getCreationTimeMillis() {
|
||||
return mCreationTimeMillis;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o instanceof Details) {
|
||||
@ -633,28 +649,29 @@ public final class Call {
|
||||
Objects.equals(mVideoState, d.mVideoState) &&
|
||||
Objects.equals(mStatusHints, d.mStatusHints) &&
|
||||
areBundlesEqual(mExtras, d.mExtras) &&
|
||||
areBundlesEqual(mIntentExtras, d.mIntentExtras);
|
||||
areBundlesEqual(mIntentExtras, d.mIntentExtras) &&
|
||||
Objects.equals(mCreationTimeMillis, d.mCreationTimeMillis);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return
|
||||
Objects.hashCode(mHandle) +
|
||||
Objects.hashCode(mHandlePresentation) +
|
||||
Objects.hashCode(mCallerDisplayName) +
|
||||
Objects.hashCode(mCallerDisplayNamePresentation) +
|
||||
Objects.hashCode(mAccountHandle) +
|
||||
Objects.hashCode(mCallCapabilities) +
|
||||
Objects.hashCode(mCallProperties) +
|
||||
Objects.hashCode(mDisconnectCause) +
|
||||
Objects.hashCode(mConnectTimeMillis) +
|
||||
Objects.hashCode(mGatewayInfo) +
|
||||
Objects.hashCode(mVideoState) +
|
||||
Objects.hashCode(mStatusHints) +
|
||||
Objects.hashCode(mExtras) +
|
||||
Objects.hashCode(mIntentExtras);
|
||||
return Objects.hash(mHandle,
|
||||
mHandlePresentation,
|
||||
mCallerDisplayName,
|
||||
mCallerDisplayNamePresentation,
|
||||
mAccountHandle,
|
||||
mCallCapabilities,
|
||||
mCallProperties,
|
||||
mDisconnectCause,
|
||||
mConnectTimeMillis,
|
||||
mGatewayInfo,
|
||||
mVideoState,
|
||||
mStatusHints,
|
||||
mExtras,
|
||||
mIntentExtras,
|
||||
mCreationTimeMillis);
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
@ -673,7 +690,8 @@ public final class Call {
|
||||
int videoState,
|
||||
StatusHints statusHints,
|
||||
Bundle extras,
|
||||
Bundle intentExtras) {
|
||||
Bundle intentExtras,
|
||||
long creationTimeMillis) {
|
||||
mTelecomCallId = telecomCallId;
|
||||
mHandle = handle;
|
||||
mHandlePresentation = handlePresentation;
|
||||
@ -689,6 +707,7 @@ public final class Call {
|
||||
mStatusHints = statusHints;
|
||||
mExtras = extras;
|
||||
mIntentExtras = intentExtras;
|
||||
mCreationTimeMillis = creationTimeMillis;
|
||||
}
|
||||
|
||||
/** {@hide} */
|
||||
@ -708,7 +727,8 @@ public final class Call {
|
||||
parcelableCall.getVideoState(),
|
||||
parcelableCall.getStatusHints(),
|
||||
parcelableCall.getExtras(),
|
||||
parcelableCall.getIntentExtras());
|
||||
parcelableCall.getIntentExtras(),
|
||||
parcelableCall.getCreationTimeMillis());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -59,6 +59,7 @@ public final class ParcelableCall implements Parcelable {
|
||||
private final List<String> mConferenceableCallIds;
|
||||
private final Bundle mIntentExtras;
|
||||
private final Bundle mExtras;
|
||||
private final long mCreationTimeMillis;
|
||||
|
||||
public ParcelableCall(
|
||||
String id,
|
||||
@ -85,7 +86,8 @@ public final class ParcelableCall implements Parcelable {
|
||||
int videoState,
|
||||
List<String> conferenceableCallIds,
|
||||
Bundle intentExtras,
|
||||
Bundle extras) {
|
||||
Bundle extras,
|
||||
long creationTimeMillis) {
|
||||
mId = id;
|
||||
mState = state;
|
||||
mDisconnectCause = disconnectCause;
|
||||
@ -111,6 +113,7 @@ public final class ParcelableCall implements Parcelable {
|
||||
mConferenceableCallIds = Collections.unmodifiableList(conferenceableCallIds);
|
||||
mIntentExtras = intentExtras;
|
||||
mExtras = extras;
|
||||
mCreationTimeMillis = creationTimeMillis;
|
||||
}
|
||||
|
||||
/** The unique ID of the call. */
|
||||
@ -289,6 +292,13 @@ public final class ParcelableCall implements Parcelable {
|
||||
return mIsVideoCallProviderChanged;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The time the call was created, in milliseconds since the epoch.
|
||||
*/
|
||||
public long getCreationTimeMillis() {
|
||||
return mCreationTimeMillis;
|
||||
}
|
||||
|
||||
/** Responsible for creating ParcelableCall objects for deserialized Parcels. */
|
||||
public static final Parcelable.Creator<ParcelableCall> CREATOR =
|
||||
new Parcelable.Creator<ParcelableCall> () {
|
||||
@ -324,6 +334,7 @@ public final class ParcelableCall implements Parcelable {
|
||||
int supportedAudioRoutes = source.readInt();
|
||||
boolean isRttCallChanged = source.readByte() == 1;
|
||||
ParcelableRttCall rttCall = source.readParcelable(classLoader);
|
||||
long creationTimeMillis = source.readLong();
|
||||
return new ParcelableCall(
|
||||
id,
|
||||
state,
|
||||
@ -349,7 +360,8 @@ public final class ParcelableCall implements Parcelable {
|
||||
videoState,
|
||||
conferenceableCallIds,
|
||||
intentExtras,
|
||||
extras);
|
||||
extras,
|
||||
creationTimeMillis);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -393,6 +405,7 @@ public final class ParcelableCall implements Parcelable {
|
||||
destination.writeInt(mSupportedAudioRoutes);
|
||||
destination.writeByte((byte) (mIsRttCallChanged ? 1 : 0));
|
||||
destination.writeParcelable(mRttCall, 0);
|
||||
destination.writeLong(mCreationTimeMillis);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user