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

Commit 0036d879 authored by Xiangyu/Malcolm Chen's avatar Xiangyu/Malcolm Chen Committed by Android (Google) Code Review
Browse files

Merge "Revert "Revert "Clean up SubMgr#getOpportunisticSubscriptions."""

parents 928579ec 0c096a01
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -43143,7 +43143,7 @@ package android.telephony {
    method public static int getDefaultSmsSubscriptionId();
    method public static int getDefaultSubscriptionId();
    method public static int getDefaultVoiceSubscriptionId();
    method public java.util.List<android.telephony.SubscriptionInfo> getOpportunisticSubscriptions(int);
    method public java.util.List<android.telephony.SubscriptionInfo> getOpportunisticSubscriptions();
    method public static int getSlotIndex(int);
    method public static int[] getSubscriptionIds(int);
    method public java.util.List<android.telephony.SubscriptionPlan> getSubscriptionPlans(int);
+12 −7
Original line number Diff line number Diff line
@@ -2229,22 +2229,27 @@ public class SubscriptionManager {
    }

    /**
     * Get opportunistic data Profiles.
     * Return opportunistic subscriptions that can be visible to the caller.
     * Opportunistic subscriptions are for opportunistic networks, which are cellular
     * networks with limited capabilities and coverage, for example, CBRS.
     *
     * <p>Requires Permission:
     * {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
     * or that the calling app has carrier privileges (see
     * {@link TelephonyManager#hasCarrierPrivileges}).
     *
     *  Provide all available user downloaded profiles on phone which are used only for
     *  opportunistic data.
     *  @param slotIndex slot on which the profiles are queried from.
     * @return the list of opportunistic subscription info. If none exists, an empty list.
     */
    @SuppressAutoDoc // Blocked by b/72967236 - no support for carrier privileges
    @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE)
    public @NonNull List<SubscriptionInfo> getOpportunisticSubscriptions(int slotIndex) {
    public @NonNull List<SubscriptionInfo> getOpportunisticSubscriptions() {
        String pkgForDebug = mContext != null ? mContext.getOpPackageName() : "<unknown>";
        List<SubscriptionInfo> subInfoList = null;

        try {
            ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub"));
            if (iSub != null) {
                subInfoList = iSub.getOpportunisticSubscriptions(slotIndex, pkgForDebug);
                subInfoList = iSub.getOpportunisticSubscriptions(pkgForDebug);
            }
        } catch (RemoteException ex) {
            // ignore it
+3 −3
Original line number Diff line number Diff line
@@ -186,10 +186,10 @@ interface ISub {
    /**
     * Get User downloaded Profiles.
     *
     *  Provide all available user downloaded profile on the phone.
     *  @param slotId on which phone the switch will operate on
     * Return opportunistic subscriptions that can be visible to the caller.
     * @return the list of opportunistic subscription info. If none exists, an empty list.
     */
    List<SubscriptionInfo> getOpportunisticSubscriptions(int slotId, String callingPackage);
    List<SubscriptionInfo> getOpportunisticSubscriptions(String callingPackage);

    int getSlotIndex(int subId);