Disable visual voicemail service on secondary user
When a new user is added, an additional instance of telephony service
will be run, and it will receive broadcasts such as BOOT_COMPLETED.
VVM services is not meant to be run as secondary user, as it is tied
to the phone account. The Phone object it rely on is also not available
to secondary users.
In this CL, all VVM broadcast receivers will only run on system user.
Bug: 29574016
Change-Id: I1408de32ca146e210f6b27c3a7c633deb33813dc
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 4a95259..4906ba2 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -664,14 +664,16 @@
</intent-filter>
</provider>
<receiver android:name="com.android.phone.vvm.omtp.sms.OmtpMessageReceiver"
- android:exported="true">
+ android:exported="true"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.intent.action.VOICEMAIL_SMS_RECEIVED"/>
</intent-filter>
</receiver>
<receiver
android:name="com.android.phone.vvm.omtp.SimChangeReceiver"
- android:exported="true">
+ android:exported="true"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.telephony.action.CARRIER_CONFIG_CHANGED" />
<action android:name="android.intent.action.SIM_STATE_CHANGED" />
@@ -680,7 +682,8 @@
<receiver
android:name="com.android.phone.vvm.omtp.VvmBootCompletedReceiver"
android:exported="true"
- android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
+ android:permission="android.permission.RECEIVE_BOOT_COMPLETED"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
@@ -688,7 +691,8 @@
<receiver
android:name="com.android.phone.vvm.omtp.fetch.FetchVoicemailReceiver"
android:exported="true"
- android:permission="com.android.voicemail.permission.READ_VOICEMAIL">
+ android:permission="com.android.voicemail.permission.READ_VOICEMAIL"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.intent.action.FETCH_VOICEMAIL" />
<data
@@ -700,14 +704,16 @@
<receiver
android:name="com.android.phone.vvm.omtp.sync.OmtpVvmSyncReceiver"
android:exported="true"
- android:permission="com.android.voicemail.permission.READ_VOICEMAIL">
+ android:permission="com.android.voicemail.permission.READ_VOICEMAIL"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.provider.action.SYNC_VOICEMAIL"/>
</intent-filter>
</receiver>
<receiver
android:name="com.android.phone.vvm.omtp.sync.VoicemailProviderChangeReceiver"
- android:exported="true">
+ android:exported="true"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.intent.action.PROVIDER_CHANGED" />
<data
@@ -724,7 +730,8 @@
android:name="com.android.phone.vvm.omtp.sms.OmtpProvisioningService"
android:exported="false" />
- <receiver android:name="com.android.phone.vvm.omtp.VvmPackageInstallReceiver">
+ <receiver android:name="com.android.phone.vvm.omtp.VvmPackageInstallReceiver"
+ androidprv:systemUserOnly="true">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_ADDED" />