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

Commit 6e557e04 authored by Santos Cordon's avatar Santos Cordon Committed by Android (Google) Code Review
Browse files

Merge "Use new telecom PhoneAccount registration permissions." into lmp-mr1-dev

parents 4ffff831 6be5e8c2
Loading
Loading
Loading
Loading
+12 −11
Original line number Diff line number Diff line
@@ -50,11 +50,6 @@ import java.util.List;
 * 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 @@ public class TelecomServiceImpl extends ITelecomService.Stub {
        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();
@@ -618,12 +615,16 @@ public class TelecomServiceImpl extends ITelecomService.Stub {
        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() {
+2 −2
Original line number Diff line number Diff line
@@ -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">