Squashed merge of master-sim into master.
Includes the following commits:
==
Let phone process bind to EuiccService implementation.
==
Implement EuiccManager actions through a dispatcher.
The dispatcher is a trampoline activity which forwards the given
action to the highest-priority LUI implementation after performing the
necessary prerequisite checks. It has priority=1000, which means no
APK other than those bundled with the system can supercede it.
==
Add eUICC UI into Mobile Network Setting Screen
Add a preference in Mobile Network Setting Screen to start the
eUICC settings. This preference will only be available when
EuiccManger#isEnabled is true.
==
Test: TreeHugger
Change-Id: I6463c31b577d66512151cc864b21c1ea028593f9
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index bc1c448..85ad6bd 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -144,6 +144,7 @@
<uses-permission android:name="android.permission.BIND_CARRIER_SERVICES" />
<!-- BIND_CARRIER_MESSAGING_SERVICE has been deprecated in favor of BIND_CARRIER_SERVICES. -->
<uses-permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE" />
+ <uses-permission android:name="android.permission.BIND_EUICC_SERVICE" />
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
@@ -484,6 +485,19 @@
</intent-filter>
</service>
+ <!-- Handler for EuiccManager's public-facing intents. -->
+ <activity android:name=".EuiccUiDispatcherActivity"
+ android:theme="@android:style/Theme.NoDisplay">
+ <!-- Max out priority to ensure nobody else will handle these intents. -->
+ <intent-filter android:priority="1000">
+ <action android:name=
+ "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS" />
+ <action android:name=
+ "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTIONS" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
<activity android:name="EmergencyCallbackModeExitDialog"
android:excludeFromRecents="true"
android:label="@string/ecm_exit_dialog"