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

Commit a3243e8e authored by Shuo Qian's avatar Shuo Qian Committed by Gerrit Code Review
Browse files

Merge "Add LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH into Shell permission"

parents 2b1b1bb2 dfdee636
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -168,9 +168,11 @@ public class PhoneStateListener {
    public static final int LISTEN_SIGNAL_STRENGTHS                         = 0x00000100;

    /**
     * Listen for always reported changes of the network signal strengths (cellular),
     * Listen for changes of the network signal strengths (cellular) always reported from modem,
     * even in some situations such as the screen of the device is off.
     *
     * @see #onSignalStrengthsChanged
     *
     * @hide
     */
    @RequiresPermission(android.Manifest.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH)
+3 −0
Original line number Diff line number Diff line
@@ -211,6 +211,9 @@
    <!-- Permission required for CTS test - CrossProfileAppsHostSideTest -->
    <uses-permission android:name="android.permission.INTERACT_ACROSS_PROFILES"/>

    <!-- permissions required for CTS test - PhoneStateListenerTest -->
    <uses-permission android:name="android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH" />

    <!-- Permission required for CTS test - UiModeManagerTest -->
    <uses-permission android:name="android.permission.ENTER_CAR_MODE_PRIORITIZED"/>

+19 −5
Original line number Diff line number Diff line
@@ -891,6 +891,13 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
                    if ((events & PhoneStateListener.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH)
                            != 0) {
                        updateReportSignalStrengthDecision(r.subId);
                        try {
                            if (mSignalStrength[phoneId] != null) {
                                r.callback.onSignalStrengthsChanged(mSignalStrength[phoneId]);
                            }
                        } catch (RemoteException ex) {
                            remove(r.binder);
                        }
                    }
                    if (validateEventsAndUserLocked(r, PhoneStateListener.LISTEN_CELL_INFO)) {
                        try {
@@ -1307,9 +1314,10 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
                        log("notifySignalStrengthForPhoneId: r=" + r + " subId=" + subId
                                + " phoneId=" + phoneId + " ss=" + signalStrength);
                    }
                    if (r.matchPhoneStateListenerEvent(
                                PhoneStateListener.LISTEN_SIGNAL_STRENGTHS) &&
                            idMatch(r.subId, subId, phoneId)) {
                    if ((r.matchPhoneStateListenerEvent(PhoneStateListener.LISTEN_SIGNAL_STRENGTHS)
                            || r.matchPhoneStateListenerEvent(
                                    PhoneStateListener.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH))
                            && idMatch(r.subId, subId, phoneId)) {
                        try {
                            if (DBG) {
                                log("notifySignalStrengthForPhoneId: callback.onSsS r=" + r
@@ -2454,6 +2462,11 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
                    android.Manifest.permission.READ_ACTIVE_EMERGENCY_SESSION, null);
        }

        if ((events & PhoneStateListener.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH) != 0) {
            mContext.enforceCallingOrSelfPermission(
                    android.Manifest.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH, null);
        }

        if ((events & READ_PRIVILEGED_PHONE_STATE_PERMISSION_MASK) != 0) {
            mContext.enforceCallingOrSelfPermission(
                    android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE, null);
@@ -2569,7 +2582,8 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
            }
        }

        if ((events & PhoneStateListener.LISTEN_SIGNAL_STRENGTHS) != 0) {
        if ((events & PhoneStateListener.LISTEN_SIGNAL_STRENGTHS) != 0
                || (events & PhoneStateListener.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH) != 0) {
            try {
                if (mSignalStrength[phoneId] != null) {
                    SignalStrength signalStrength = mSignalStrength[phoneId];