19e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn/*
29e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn**
39e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** Copyright 2007, The Android Open Source Project
49e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn**
59e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** Licensed under the Apache License, Version 2.0 (the "License");
69e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** you may not use this file except in compliance with the License.
79e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** You may obtain a copy of the License at
89e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn**
99e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn**     http://www.apache.org/licenses/LICENSE-2.0
109e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn**
119e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** Unless required by applicable law or agreed to in writing, software
129e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** distributed under the License is distributed on an "AS IS" BASIS,
139e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
149e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** See the License for the specific language governing permissions and
159e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn** limitations under the License.
169e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn*/
179e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornpackage com.android.packageinstaller;
189e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn
199e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornimport android.content.BroadcastReceiver;
209e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornimport android.content.Context;
219e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornimport android.content.Intent;
229e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornimport android.content.SharedPreferences;
239e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornimport android.net.Uri;
249e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn
259e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackbornpublic class RemoveReceiver extends BroadcastReceiver {
269e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn
279e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn    @Override
289e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn    public void onReceive(Context context, Intent intent) {
299e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn        if (Intent.ACTION_PACKAGE_FULLY_REMOVED.equals(intent.getAction())) {
309e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn            Uri uri = intent.getData();
319e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn            String pkg = uri != null ? uri.getSchemeSpecificPart() : null;
329e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn            if (pkg != null) {
339e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                SharedPreferences prefs = context.getSharedPreferences(
349e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                        PackageInstallerActivity.PREFS_ALLOWED_SOURCES,
359e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                        Context.MODE_PRIVATE);
369e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                if (prefs.getBoolean(pkg, false)) {
379e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                    prefs.edit().remove(pkg).apply();
389e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn                }
399e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn            }
409e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn        }
419e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn    }
429e9721266feafdf16786b94f6fac4c06220cd422Dianne Hackborn}
43