address API council feedbacks for Telephony.Carriers
Bug: 118296421
Test: telephony unit test
Change-Id: Ib26db49e5fa6891c2176124681172c271e6cc423
diff --git a/api/system-current.txt b/api/system-current.txt
index a53ab3e..860db17 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -4615,18 +4615,18 @@
public static final class Telephony.Carriers implements android.provider.BaseColumns {
field public static final java.lang.String APN_SET_ID = "apn_set_id";
field public static final int CARRIER_EDITED = 4; // 0x4
- field public static final java.lang.String EDITED = "edited";
- field public static final java.lang.String MAX_CONNS = "max_conns";
- field public static final java.lang.String MAX_CONNS_TIME = "max_conns_time";
- field public static final java.lang.String MODEM_COGNITIVE = "modem_cognitive";
+ field public static final java.lang.String EDITED_STATUS = "edited";
+ field public static final java.lang.String MAX_CONNECTIONS = "max_conns";
+ field public static final java.lang.String MODEM_PERSIST = "modem_cognitive";
field public static final java.lang.String MTU = "mtu";
- field public static final int NO_SET_SET = 0; // 0x0
+ field public static final int NO_APN_SET_ID = 0; // 0x0
+ field public static final java.lang.String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
field public static final int UNEDITED = 0; // 0x0
field public static final int USER_DELETED = 2; // 0x2
field public static final java.lang.String USER_EDITABLE = "user_editable";
field public static final int USER_EDITED = 1; // 0x1
field public static final java.lang.String USER_VISIBLE = "user_visible";
- field public static final java.lang.String WAIT_TIME = "wait_time";
+ field public static final java.lang.String WAIT_TIME_RETRY = "wait_time";
}
public final class TimeZoneRulesDataContract {
diff --git a/telephony/java/android/provider/Telephony.java b/telephony/java/android/provider/Telephony.java
index b3e1ffa..6a396ce 100644
--- a/telephony/java/android/provider/Telephony.java
+++ b/telephony/java/android/provider/Telephony.java
@@ -16,6 +16,7 @@
package android.provider;
+import android.annotation.IntDef;
import android.annotation.RequiresPermission;
import android.annotation.SdkConstant;
import android.annotation.SdkConstant.SdkConstantType;
@@ -44,6 +45,8 @@
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.SmsApplication;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.HashSet;
import java.util.Set;
import java.util.regex.Matcher;
@@ -2962,34 +2965,36 @@
*@hide
*/
@SystemApi
- public static final String MODEM_COGNITIVE = "modem_cognitive";
+ public static final String MODEM_PERSIST = "modem_cognitive";
/**
- * The max connections of this APN.
+ * The max number of connections of this APN.
* <p>Type: INTEGER</p>
*@hide
*/
@SystemApi
- public static final String MAX_CONNS = "max_conns";
+ public static final String MAX_CONNECTIONS = "max_conns";
/**
- * The wait time for retry of the APN.
+ * The wait time for retrying the APN, in milliseconds.
* <p>Type: INTEGER</p>
*@hide
*/
@SystemApi
- public static final String WAIT_TIME = "wait_time";
+ public static final String WAIT_TIME_RETRY = "wait_time";
/**
- * The time to limit max connection for the APN.
+ * The max number of seconds this APN will support its maximum number of connections
+ * as defined in {@link #MAX_CONNECTIONS}.
* <p>Type: INTEGER</p>
*@hide
*/
@SystemApi
- public static final String MAX_CONNS_TIME = "max_conns_time";
+ public static final String TIME_LIMIT_FOR_MAX_CONNECTIONS = "max_conns_time";
/**
- * The MTU(Maxinum transmit unit) size of the mobile interface to which the APN connected.
+ * The MTU (maximum transmit unit) size of the mobile interface to which the APN is
+ * connected, in bytes.
* <p>Type: INTEGER </p>
* @hide
*/
@@ -2998,11 +3003,19 @@
/**
* APN edit status. APN could be added/edited/deleted by a user or carrier.
+ * see all possible returned APN edit status.
+ * <ul>
+ * <li>{@link #UNEDITED}</li>
+ * <li>{@link #USER_EDITED}</li>
+ * <li>{@link #USER_DELETED}</li>
+ * <li>{@link #CARRIER_EDITED}</li>
+ * <li>{@link #CARRIER_DELETED}</li>
+ * </ul>
* <p>Type: INTEGER </p>
* @hide
*/
@SystemApi
- public static final String EDITED = "edited";
+ public static final String EDITED_STATUS = "edited";
/**
* {@code true} if this APN visible to the user, {@code false} otherwise.
@@ -3021,59 +3034,61 @@
public static final String USER_EDITABLE = "user_editable";
/**
- * {@link #EDITED APN edit status} indicates that this APN has not been edited or fails to
- * edit.
+ * {@link #EDITED_STATUS APN edit status} indicates that this APN has not been edited or
+ * fails to edit.
* <p>Type: INTEGER </p>
* @hide
*/
@SystemApi
- public static final int UNEDITED = 0;
+ public static final @EditStatus int UNEDITED = 0;
/**
- * {@link #EDITED APN edit status} indicates that this APN has been edited by users.
+ * {@link #EDITED_STATUS APN edit status} indicates that this APN has been edited by users.
* <p>Type: INTEGER </p>
* @hide
*/
@SystemApi
- public static final int USER_EDITED = 1;
+ public static final @EditStatus int USER_EDITED = 1;
/**
- * {@link #EDITED APN edit status} indicates that this APN has been deleted by users.
+ * {@link #EDITED_STATUS APN edit status} indicates that this APN has been deleted by users.
* <p>Type: INTEGER </p>
* @hide
*/
@SystemApi
- public static final int USER_DELETED = 2;
+ public static final @EditStatus int USER_DELETED = 2;
/**
- * {@link #EDITED APN edit status} is an intermediate value used to indicate that an entry
- * deleted by the user is still present in the new APN database and therefore must remain
- * tagged as user deleted rather than completely removed from the database.
+ * {@link #EDITED_STATUS APN edit status} is an intermediate value used to indicate that an
+ * entry deleted by the user is still present in the new APN database and therefore must
+ * remain tagged as user deleted rather than completely removed from the database.
* @hide
*/
public static final int USER_DELETED_BUT_PRESENT_IN_XML = 3;
/**
- * {@link #EDITED APN edit status} indicates that this APN has been edited by carriers.
+ * {@link #EDITED_STATUS APN edit status} indicates that this APN has been edited by
+ * carriers.
* <p>Type: INTEGER </p>
* @hide
*/
@SystemApi
- public static final int CARRIER_EDITED = 4;
+ public static final @EditStatus int CARRIER_EDITED = 4;
/**
- * {@link #EDITED APN edit status} indicates that this APN has been deleted by carriers.
- * CARRIER_DELETED values are currently not used as there is no use case. If they are used,
- * delete() will have to change accordingly. Currently it is hardcoded to USER_DELETED.
+ * {@link #EDITED_STATUS APN edit status} indicates that this APN has been deleted by
+ * carriers. CARRIER_DELETED values are currently not used as there is no use case.
+ * If they are used, delete() will have to change accordingly. Currently it is hardcoded to
+ * USER_DELETED.
* <p>Type: INTEGER </p>
* @hide
*/
- public static final int CARRIER_DELETED = 5;
+ public static final @EditStatus int CARRIER_DELETED = 5;
/**
- * {@link #EDITED APN edit status} is an intermediate value used to indicate that an entry
- * deleted by the carrier is still present in the new APN database and therefore must remain
- * tagged as user deleted rather than completely removed from the database.
+ * {@link #EDITED_STATUS APN edit status} is an intermediate value used to indicate that an
+ * entry deleted by the carrier is still present in the new APN database and therefore must
+ * remain tagged as user deleted rather than completely removed from the database.
* @hide
*/
public static final int CARRIER_DELETED_BUT_PRESENT_IN_XML = 6;
@@ -3110,14 +3125,14 @@
public static final String APN_SET_ID = "apn_set_id";
/**
- * Possible value for the{@link #APN_SET_ID} field. By default APNs will not belong to a
- * set. If the user manually selects an APN with no set set, there is no need to prioritize
- * any specific APN set ids.
+ * Possible value for the {@link #APN_SET_ID} field. By default APNs will not belong to a
+ * set. If the user manually selects an APN without apn set id, there is no need to
+ * prioritize any specific APN set ids.
* <p>Type: INTEGER</p>
* @hide
*/
@SystemApi
- public static final int NO_SET_SET = 0;
+ public static final int NO_APN_SET_ID = 0;
/**
* A unique carrier id associated with this APN
@@ -3126,6 +3141,17 @@
*/
public static final String CARRIER_ID = "carrier_id";
+ /** @hide */
+ @IntDef({
+ UNEDITED,
+ USER_EDITED,
+ USER_DELETED,
+ CARRIER_DELETED,
+ CARRIER_EDITED,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ public @interface EditStatus {}
+
}
/**
diff --git a/telephony/java/android/telephony/data/ApnSetting.java b/telephony/java/android/telephony/data/ApnSetting.java
index 4fd7066..a1afc08 100644
--- a/telephony/java/android/telephony/data/ApnSetting.java
+++ b/telephony/java/android/telephony/data/ApnSetting.java
@@ -693,7 +693,7 @@
mmsc, mmsProxyAddress, mmsProxyPort, user, password, authType, mApnTypeBitmask,
protocol, roamingProtocol, carrierEnabled, networkTypeBitmask, profileId,
modemCognitive, maxConns, waitTime, maxConnsTime, mtu, mvnoType, mvnoMatchData,
- Carriers.NO_SET_SET, TelephonyManager.UNKNOWN_CARRIER_ID);
+ Carriers.NO_APN_SET_ID, TelephonyManager.UNKNOWN_CARRIER_ID);
}
/**
@@ -740,11 +740,11 @@
networkTypeBitmask,
cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.PROFILE_ID)),
cursor.getInt(cursor.getColumnIndexOrThrow(
- Telephony.Carriers.MODEM_COGNITIVE)) == 1,
- cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.MAX_CONNS)),
- cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.WAIT_TIME)),
+ Telephony.Carriers.MODEM_PERSIST)) == 1,
+ cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.MAX_CONNECTIONS)),
+ cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.WAIT_TIME_RETRY)),
cursor.getInt(cursor.getColumnIndexOrThrow(
- Telephony.Carriers.MAX_CONNS_TIME)),
+ Telephony.Carriers.TIME_LIMIT_FOR_MAX_CONNECTIONS)),
cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Carriers.MTU)),
getMvnoTypeIntFromString(
cursor.getString(cursor.getColumnIndexOrThrow(
@@ -870,7 +870,7 @@
int mtu = UNSET_MTU;
String mvnoType = "";
String mvnoMatchData = "";
- int apnSetId = Carriers.NO_SET_SET;
+ int apnSetId = Carriers.NO_APN_SET_ID;
int carrierId = TelephonyManager.UNKNOWN_CARRIER_ID;
if (version == 1) {
typeArray = new String[a.length - 13];