Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 56dd7acd authored by fionaxu's avatar fionaxu Committed by chen xu
Browse files

expose getAidForApptype to system API

Bug: 115891723
Test: telephony unit test
Change-Id: Ica1d6facba229781806c2c205406c658ac5ad838
parent 85aadab7
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -5237,6 +5237,7 @@ package android.telephony {
    method public boolean disableDataConnectivity();
    method public boolean enableDataConnectivity();
    method public void enableVideoCalling(boolean);
    method public java.lang.String getAidForAppType(int);
    method public java.util.List<android.service.carrier.CarrierIdentifier> getAllowedCarriers(int);
    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntent(android.content.Intent);
    method public java.util.List<java.lang.String> getCarrierPackageNamesForIntentAndPhone(android.content.Intent, int);
+24 −14
Original line number Diff line number Diff line
@@ -5396,7 +5396,19 @@ public class TelephonyManager {
        }
    }

    // ICC SIM Application Types
    /**
     * UICC SIM Application Types
     * @hide
     */
    @IntDef(prefix = { "APPTYPE_" }, value = {
            APPTYPE_SIM,
            APPTYPE_USIM,
            APPTYPE_RUIM,
            APPTYPE_CSIM,
            APPTYPE_ISIM
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface UiccAppType{}
    /** UICC application type is SIM */
    public static final int APPTYPE_SIM = PhoneConstants.APPTYPE_SIM;
    /** UICC application type is USIM */
@@ -5407,6 +5419,7 @@ public class TelephonyManager {
    public static final int APPTYPE_CSIM = PhoneConstants.APPTYPE_CSIM;
    /** UICC application type is ISIM */
    public static final int APPTYPE_ISIM = PhoneConstants.APPTYPE_ISIM;

    // authContext (parameter P2) when doing UICC challenge,
    // per 3GPP TS 31.102 (Section 7.1.2)
    /** Authentication type for UICC challenge is EAP SIM. See RFC 4186 for details. */
@@ -7842,26 +7855,23 @@ public class TelephonyManager {
    }

    /**
     * Return the application ID for the app type like {@link APPTYPE_CSIM}.
     *
     * Requires that the calling app has READ_PRIVILEGED_PHONE_STATE permission
     * Return the application ID for the uicc application type like {@link #APPTYPE_CSIM}.
     * All uicc applications are uniquely identified by application ID. See ETSI 102.221 and 101.220
     * <p>Requires Permission:
     *   {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE}
     *
     * @param appType the uicc app type like {@link APPTYPE_CSIM}
     * @return Application ID for specificied app type or null if no uicc or error.
     * @param appType the uicc app type.
     * @return Application ID for specified app type or {@code null} if no uicc or error.
     * @hide
     */
    public String getAidForAppType(int appType) {
    @SystemApi
    @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
    public String getAidForAppType(@UiccAppType int appType) {
        return getAidForAppType(getSubId(), appType);
    }

    /**
     * Return the application ID for the app type like {@link APPTYPE_CSIM}.
     *
     * Requires that the calling app has READ_PRIVILEGED_PHONE_STATE permission
     *
     * @param subId the subscription ID that this request applies to.
     * @param appType the uicc app type, like {@link APPTYPE_CSIM}
     * @return Application ID for specificied app type or null if no uicc or error.
     * same as {@link #getAidForAppType(int)}
     * @hide
     */
    public String getAidForAppType(int subId, int appType) {