Set up activate and deactivate on SIM state change.

Register for sim state changes so that a voicemail source can be added
and removed as appropriate:
- When a sim is added, send an activate sms. (the received status sms is
  processed in OmtpMessageReceiver)
- When a sim is removed, remove the corresponding sync account and
  change the status in the voicemail status table to not configured.

Bug: 19236241
Change-Id: Ida82af1aee9e9a5e7649fcb2fc7dabd436816ef8
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 51fab84..b802dee 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -102,6 +102,9 @@
     <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
     <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
+    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+    <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
+    <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL" />
 
     <!-- This tells the activity manager to not delay any of our activity
          start requests, even if they happen immediately after the user
@@ -624,5 +627,11 @@
             android:name="android.accounts.AccountAuthenticator"
             android:resource="@xml/authenticator" />
        </service>
+        <receiver android:name="com.android.phone.vvm.omtp.SimChangeReceiver"
+            android:exported="true">
+            <intent-filter>
+                <action android:name="android.intent.action.SIM_STATE_CHANGED" />
+            </intent-filter>
+        </receiver>
     </application>
 </manifest>