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

Commit 807a82b3 authored by Jack Yu's avatar Jack Yu Committed by Nathan Harold
Browse files

Fixed tethering failed when device is on CBRS

Fixed by using the correct sub id for CBRS subscription

Bug: 133852860
Test: Manual
Merged-In: If01e17becce9684556345eb76512f617b9a9278c
Change-Id: If01e17becce9684556345eb76512f617b9a9278c
(cherry picked from commit a952d201)
parent 84b311d3
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -3175,4 +3175,24 @@ public class SubscriptionManager {

        return result;
    }

    /**
     * Get active data subscription id.
     * See {@link PhoneStateListener#onActiveDataSubscriptionIdChanged(int)} for the details.
     *
     * @return Active data subscription id
     *
     * //TODO: Refactor this API in b/134702460
     * @hide
     */
    public static int getActiveDataSubscriptionId() {
        try {
            ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub"));
            if (iSub != null) {
                return iSub.getActiveDataSubscriptionId();
            }
        } catch (RemoteException ex) {
        }
        return SubscriptionManager.INVALID_SUBSCRIPTION_ID;
    }
}
+4 −4
Original line number Diff line number Diff line
@@ -2418,7 +2418,7 @@ public class TelephonyManager {
    @Deprecated
    @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE)
    public @NetworkType int getNetworkType() {
        return getNetworkType(getSubId(SubscriptionManager.getDefaultDataSubscriptionId()));
        return getNetworkType(getSubId(SubscriptionManager.getActiveDataSubscriptionId()));
    }

    /**
@@ -2501,7 +2501,7 @@ public class TelephonyManager {
    @SuppressAutoDoc // Blocked by b/72967236 - no support for carrier privileges
    @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE)
    public @NetworkType int getDataNetworkType() {
        return getDataNetworkType(getSubId(SubscriptionManager.getDefaultDataSubscriptionId()));
        return getDataNetworkType(getSubId(SubscriptionManager.getActiveDataSubscriptionId()));
    }

    /**
@@ -7245,7 +7245,7 @@ public class TelephonyManager {
     * @hide
     */
    public boolean getTetherApnRequired() {
        return getTetherApnRequired(getSubId(SubscriptionManager.getDefaultDataSubscriptionId()));
        return getTetherApnRequired(getSubId(SubscriptionManager.getActiveDataSubscriptionId()));
    }

    /**
@@ -8011,7 +8011,7 @@ public class TelephonyManager {
            ITelephony telephony = getITelephony();
            if (telephony != null)
                return telephony.isDataConnectivityPossible(getSubId(SubscriptionManager
                        .getDefaultDataSubscriptionId()));
                        .getActiveDataSubscriptionId()));
        } catch (RemoteException e) {
            Log.e(TAG, "Error calling ITelephony#isDataAllowed", e);
        }
+2 −0
Original line number Diff line number Diff line
@@ -285,4 +285,6 @@ interface ISub {
    boolean isActiveSubId(int subId, String callingPackage);

    boolean setAlwaysAllowMmsData(int subId, boolean alwaysAllow);

    int getActiveDataSubscriptionId();
}