diff --git a/api/current.txt b/api/current.txt index 81088ab85ba6c..dbbdce9b61b0d 100644 --- a/api/current.txt +++ b/api/current.txt @@ -46086,6 +46086,7 @@ package android.telecom { field public static final int MISSED = 5; // 0x5 field public static final int OTHER = 9; // 0x9 field public static final String REASON_EMERGENCY_CALL_PLACED = "REASON_EMERGENCY_CALL_PLACED"; + field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; field public static final String REASON_IMS_ACCESS_BLOCKED = "REASON_IMS_ACCESS_BLOCKED"; field public static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF"; field public static final int REJECTED = 6; // 0x6 diff --git a/api/system-current.txt b/api/system-current.txt index c4f9067b507d1..a02f393aeceff 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -10437,10 +10437,6 @@ package android.telecom { method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference); } - public final class DisconnectCause implements android.os.Parcelable { - field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; - } - public abstract class InCallService extends android.app.Service { method @Deprecated public android.telecom.Phone getPhone(); method @Deprecated public void onPhoneCreated(android.telecom.Phone); diff --git a/non-updatable-api/current.txt b/non-updatable-api/current.txt index bcc239f35afee..db5cd150a0799 100644 --- a/non-updatable-api/current.txt +++ b/non-updatable-api/current.txt @@ -44223,6 +44223,7 @@ package android.telecom { field public static final int MISSED = 5; // 0x5 field public static final int OTHER = 9; // 0x9 field public static final String REASON_EMERGENCY_CALL_PLACED = "REASON_EMERGENCY_CALL_PLACED"; + field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; field public static final String REASON_IMS_ACCESS_BLOCKED = "REASON_IMS_ACCESS_BLOCKED"; field public static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF"; field public static final int REJECTED = 6; // 0x6 diff --git a/non-updatable-api/system-current.txt b/non-updatable-api/system-current.txt index 10fe058bb76f2..215078a82c176 100644 --- a/non-updatable-api/system-current.txt +++ b/non-updatable-api/system-current.txt @@ -9299,10 +9299,6 @@ package android.telecom { method public final void addExistingConnection(@NonNull android.telecom.PhoneAccountHandle, @NonNull android.telecom.Connection, @NonNull android.telecom.Conference); } - public final class DisconnectCause implements android.os.Parcelable { - field public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; - } - public abstract class InCallService extends android.app.Service { method @Deprecated public android.telecom.Phone getPhone(); method @Deprecated public void onPhoneCreated(android.telecom.Phone); diff --git a/telecomm/java/android/telecom/DisconnectCause.java b/telecomm/java/android/telecom/DisconnectCause.java index f7fe1ba1f998b..1472a4ac27bc1 100644 --- a/telecomm/java/android/telecom/DisconnectCause.java +++ b/telecomm/java/android/telecom/DisconnectCause.java @@ -16,7 +16,6 @@ package android.telecom; -import android.annotation.SystemApi; import android.media.ToneGenerator; import android.os.Parcel; import android.os.Parcelable; @@ -97,10 +96,7 @@ public final class DisconnectCause implements Parcelable { * * This reason code is only used for communication between a {@link ConnectionService} and * Telecom and should not be surfaced to the user. - * - * @hide */ - @SystemApi public static final String REASON_EMULATING_SINGLE_CALL = "EMULATING_SINGLE_CALL"; /** diff --git a/telecomm/java/android/telecom/PhoneAccount.java b/telecomm/java/android/telecom/PhoneAccount.java index c20e5ad8ce7c5..4a3561b5d509e 100644 --- a/telecomm/java/android/telecom/PhoneAccount.java +++ b/telecomm/java/android/telecom/PhoneAccount.java @@ -28,6 +28,7 @@ import android.net.Uri; import android.os.Bundle; import android.os.Parcel; import android.os.Parcelable; +import android.telephony.TelephonyManager; import android.text.TextUtils; import java.util.ArrayList; @@ -52,8 +53,17 @@ public final class PhoneAccount implements Parcelable { * * This is an extras key set via {@link Builder#setExtras} which determines the order in which * {@link PhoneAccount}s from the same {@link ConnectionService} are sorted. The accounts - * are sorted by this key via standard lexicographical order, and this ordering is used to + * are sorted by this key via standard lexicographical order, (as implemented in + * {@link String#compareTo}), and this ordering is used to * determine priority when a call can be placed via multiple accounts. + * + * When multiple {@link PhoneAccount}s are supplied with the same sort order key, no ordering is + * guaranteed between those {@link PhoneAccount}s. Additionally, no ordering is guaranteed + * between {@link PhoneAccount}s that do not supply this extra, and all such accounts + * will be sorted after the accounts that do supply this extra. + * + * An example of a sort order key is slot index (see {@link TelephonyManager#getSlotIndex()}), + * which is the one used by the cell Telephony stack. * @hide */ @SystemApi