summaryrefslogtreecommitdiffstats
path: root/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/voicemail/impl/VvmPackageInstallReceiver.java')
-rw-r--r--java/com/android/voicemail/impl/VvmPackageInstallReceiver.java80
1 files changed, 0 insertions, 80 deletions
diff --git a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java b/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
deleted file mode 100644
index 1e2de6070..000000000
--- a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-package com.android.voicemail.impl;
-
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import com.android.voicemail.VoicemailComponent;
-import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
-
-/**
- * When a new package is installed, check if it matches any of the vvm carrier apps of the currently
- * enabled dialer VVM sources. The dialer VVM client will be disabled upon carrier VVM app
- * installation, unless it was explicitly enabled by the user.
- */
-public class VvmPackageInstallReceiver extends BroadcastReceiver {
-
- private static final String TAG = "VvmPkgInstallReceiver";
-
- @Override
- public void onReceive(Context context, Intent intent) {
- if (!VoicemailComponent.get(context).getVoicemailClient().isVoicemailModuleEnabled()) {
- return;
- }
-
- if (intent.getData() == null) {
- return;
- }
-
- String packageName = intent.getData().getSchemeSpecificPart();
- if (packageName == null) {
- return;
- }
-
- // This get called every time an app is installed and will be noisy. Don't log until the app
- // is identified as a carrier VVM app.
- for (PhoneAccountHandle phoneAccount :
- context.getSystemService(TelecomManager.class).getCallCapablePhoneAccounts()) {
- OmtpVvmCarrierConfigHelper carrierConfigHelper =
- new OmtpVvmCarrierConfigHelper(context, phoneAccount);
- if (!carrierConfigHelper.isValid()) {
- continue;
- }
- if (carrierConfigHelper.getCarrierVvmPackageNames() == null) {
- continue;
- }
- if (!carrierConfigHelper.getCarrierVvmPackageNames().contains(packageName)) {
- continue;
- }
-
- VvmLog.i(TAG, "Carrier app installed");
- if (VisualVoicemailSettingsUtil.isEnabledUserSet(context, phoneAccount)) {
- // Skip the check if this voicemail source's setting is overridden by the user.
- VvmLog.i(TAG, "VVM enabled by user, not disabling");
- continue;
- }
-
- // Force deactivate the client. The user can re-enable it in the settings.
- // There is no need to update the settings for deactivation. At this point, if the
- // default value is used it should be false because a carrier package is present.
- VvmLog.i(TAG, "Carrier VVM package installed, disabling system VVM client");
- VisualVoicemailSettingsUtil.setEnabled(context, phoneAccount, false);
- }
- }
-}