Use new telecom PhoneAccount registration permissions.
Bug: 18106506
Change-Id: Ic825b44c2dc42709073a3990f6a7ca8e372025e9
diff --git a/src/com/android/server/telecom/TelecomServiceImpl.java b/src/com/android/server/telecom/TelecomServiceImpl.java
index 95a7e75..2656547 100644
--- a/src/com/android/server/telecom/TelecomServiceImpl.java
+++ b/src/com/android/server/telecom/TelecomServiceImpl.java
@@ -50,11 +50,6 @@
* Implementation of the ITelecom interface.
*/
public class TelecomServiceImpl extends ITelecomService.Stub {
- private static final String REGISTER_PROVIDER_OR_SUBSCRIPTION =
- android.Manifest.permission.REGISTER_PROVIDER_OR_SUBSCRIPTION;
- private static final String REGISTER_CONNECTION_MANAGER =
- android.Manifest.permission.REGISTER_CONNECTION_MANAGER;
-
/** The context. */
private Context mContext;
@@ -303,9 +298,11 @@
try {
enforcePhoneAccountModificationForPackage(
account.getAccountHandle().getComponentName().getPackageName());
- if (account.hasCapabilities(PhoneAccount.CAPABILITY_CALL_PROVIDER) ||
- account.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION)) {
- enforceRegisterProviderOrSubscriptionPermission();
+ if (account.hasCapabilities(PhoneAccount.CAPABILITY_CALL_PROVIDER)) {
+ enforceRegisterCallProviderPermission();
+ }
+ if (account.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION)) {
+ enforceRegisterSimSubscriptionPermission();
}
if (account.hasCapabilities(PhoneAccount.CAPABILITY_CONNECTION_MANAGER)) {
enforceRegisterConnectionManagerPermission();
@@ -597,12 +594,16 @@
enforceFeature(PackageManager.FEATURE_CONNECTION_SERVICE);
}
- private void enforceRegisterProviderOrSubscriptionPermission() {
- enforcePermission(REGISTER_PROVIDER_OR_SUBSCRIPTION);
+ private void enforceRegisterCallProviderPermission() {
+ enforcePermission(android.Manifest.permission.REGISTER_CALL_PROVIDER);
+ }
+
+ private void enforceRegisterSimSubscriptionPermission() {
+ enforcePermission(android.Manifest.permission.REGISTER_SIM_SUBSCRIPTION);
}
private void enforceRegisterConnectionManagerPermission() {
- enforcePermission(REGISTER_CONNECTION_MANAGER);
+ enforcePermission(android.Manifest.permission.REGISTER_CONNECTION_MANAGER);
}
private void enforceReadPermission() {
diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml
index 9c09a40..d0cdf5f 100644
--- a/tests/AndroidManifest.xml
+++ b/tests/AndroidManifest.xml
@@ -21,9 +21,9 @@
<!-- Test connection service outgoing video preview. -->
<uses-permission android:name="android.permission.CAMERA" />
- <uses-permission
- android:name="com.android.server.telecom.permission.REGISTER_PROVIDER_OR_SUBSCRIPTION" />
<uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />
+ <uses-permission android:name="android.permission.REGISTER_CALL_PROVIDER" />
+ <uses-permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION" />
<application android:label="@string/app_name"
android:debuggable="true">