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

Commit 843d5ea5 authored by Evan Charlton's avatar Evan Charlton
Browse files

Add carrier setup app integration

Add an intent to invoke a native carrier setup app. This is paired
with the INVOKE_CARRIER_SETUP permission, though it is up to the app
to enforce that callers hold this permission.

Change-Id: I317a40675de7e9587de23c028459be2331a2f8a2
parent 73b1496e
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -2208,6 +2208,14 @@
        android:description="@string/permdesc_bindNotificationListenerService"
        android:protectionLevel="signature" />

    <!-- Allows an application to call into a carrier setup flow. It is up to the
         carrier setup application to enforce that this permission is required
         @hide This is not a third-party API (intended for OEMs and system apps). -->
    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
        android:label="@string/permlab_invokeCarrierSetup"
        android:description="@string/permdesc_invokeCarrierSetup"
        android:protectionLevel="signature|system" />

    <!-- The system process is explicitly the only one allowed to launch the
         confirmation UI for full backup/restore -->
    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
+5 −0
Original line number Diff line number Diff line
@@ -1832,6 +1832,11 @@
    <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
    <string name="permdesc_bindNotificationListenerService">Allows the holder to bind to the top-level interface of a notification listener service. Should never be needed for normal apps.</string>

    <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
    <string name="permlab_invokeCarrierSetup">invoke the carrier-provided configuration app</string>
    <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
    <string name="permdesc_invokeCarrierSetup">Allows the holder to invoke the carrier-provided configuration app. Should never be needed for normal apps.</string>

    <!-- Policy administration -->

    <!-- Title of policy access to limiting the user's password choices -->
+17 −0
Original line number Diff line number Diff line
@@ -237,6 +237,23 @@ public class TelephonyIntents {
    public static final String ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS
            = "android.intent.action.ACTION_SHOW_NOTICE_ECM_BLOCK_OTHERS";

    /**
     * Activity Action: Start this activity to invoke the carrier setup app.
     * To filter the intent, see {@link #CATEGORY_MCCMNC_PREFIX}.
     *
     * <p class="note">Callers of this should hold the android.permission.INVOKE_CARRIER_SETUP
     * permission.</p>
     */
    public static final String ACTION_CARRIER_SETUP = "android.intent.action.ACTION_CARRIER_SETUP";

    /**
     * A <em>prefix</em> for the MCC/MNC filtering used with {@link #ACTION_CARRIER_SETUP}.
     * The MCC/MNC will be concatenated (zero-padded to 3 digits each) to create a final
     * string of the form:
     * <br />
     * <code>android.intent.category.MCCMNC_310260</code>
     */
    public static final String CATEGORY_MCCMNC_PREFIX = "android.intent.category.MCCMNC_";

    /**
     * Broadcast Action: A "secret code" has been entered in the dialer. Secret codes are