1 /*
2 **
3 ** Copyright 2007, The Android Open Source Project
4 **
5 ** Licensed under the Apache License, Version 2.0 (the "License");
6 ** you may not use this file except in compliance with the License.
7 ** You may obtain a copy of the License at
8 **
9 **     http://www.apache.org/licenses/LICENSE-2.0
10 **
11 ** Unless required by applicable law or agreed to in writing, software
12 ** distributed under the License is distributed on an "AS IS" BASIS,
13 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ** See the License for the specific language governing permissions and
15 ** limitations under the License.
16 */
17 package com.android.packageinstaller;
18 
19 import android.content.BroadcastReceiver;
20 import android.content.Context;
21 import android.content.Intent;
22 import android.content.SharedPreferences;
23 import android.net.Uri;
24 
25 public class RemoveReceiver extends BroadcastReceiver {
26 
27     @Override
onReceive(Context context, Intent intent)28     public void onReceive(Context context, Intent intent) {
29         if (Intent.ACTION_PACKAGE_FULLY_REMOVED.equals(intent.getAction())) {
30             Uri uri = intent.getData();
31             String pkg = uri != null ? uri.getSchemeSpecificPart() : null;
32             if (pkg != null) {
33                 SharedPreferences prefs = context.getSharedPreferences(
34                         PackageInstallerActivity.PREFS_ALLOWED_SOURCES,
35                         Context.MODE_PRIVATE);
36                 if (prefs.getBoolean(pkg, false)) {
37                     prefs.edit().remove(pkg).apply();
38                 }
39             }
40         }
41     }
42 }
43