summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller/UninstallerActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/packageinstaller/UninstallerActivity.java')
-rwxr-xr-xsrc/com/android/packageinstaller/UninstallerActivity.java158
1 files changed, 0 insertions, 158 deletions
diff --git a/src/com/android/packageinstaller/UninstallerActivity.java b/src/com/android/packageinstaller/UninstallerActivity.java
deleted file mode 100755
index b80f8ef1..00000000
--- a/src/com/android/packageinstaller/UninstallerActivity.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
-**
-** Copyright 2007, 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.packageinstaller;
-
-import com.android.packageinstaller.R;
-import android.app.Activity;
-import android.app.AlertDialog;
-import android.content.DialogInterface;
-import android.content.Intent;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageManager;
-import android.net.Uri;
-import android.os.Bundle;
-import android.util.Log;
-import android.view.View;
-import android.view.Window;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.content.pm.PackageManager.NameNotFoundException;
-
-/*
- * This activity presents UI to uninstall an application. Usually launched with intent
- * Intent.ACTION_UNINSTALL_PKG_COMMAND and attribute
- * com.android.packageinstaller.PackageName set to the application package name
- */
-public class UninstallerActivity extends Activity implements OnClickListener {
- private static final String TAG = "UninstallerActivity";
- private boolean localLOGV = false;
- //states indicating status of ui display when uninstalling application
- private static final int UNINSTALL_CONFIRM=1;
- private static final int UNINSTALL_PROGRESS=2;
- private static final int UNINSTALL_DONE=3;
- private int mCurrentState = UNINSTALL_CONFIRM;
- PackageManager mPm;
- private ApplicationInfo mAppInfo;
- private Button mOk;
- private Button mCancel;
-
- private void startUninstallProgress() {
- Intent newIntent = new Intent(Intent.ACTION_VIEW);
- newIntent.putExtra(PackageUtil.INTENT_ATTR_APPLICATION_INFO,
- mAppInfo);
- newIntent.setClass(this, UninstallAppProgress.class);
- startActivityForResult(newIntent, UNINSTALL_PROGRESS);
- }
-
- private void startUninstallDone(boolean result) {
- Intent newIntent = new Intent(Intent.ACTION_VIEW);
- newIntent.putExtra(PackageUtil.INTENT_ATTR_APPLICATION_INFO,
- mAppInfo);
- newIntent.putExtra(PackageUtil.INTENT_ATTR_INSTALL_STATUS, result);
- newIntent.setClass(this, UninstallAppDone.class);
- startActivityForResult(newIntent, UNINSTALL_DONE);
- }
-
- private void displayErrorDialog(int msgId) {
- //display confirmation dialog
- new AlertDialog.Builder(this)
- .setTitle(getString(R.string.app_not_found_dlg_title))
- .setIcon(com.android.internal.R.drawable.ic_dialog_alert)
- .setMessage(getString(msgId))
- .setNeutralButton(getString(R.string.dlg_ok),
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- //force to recompute changed value
- finish();
- }
- }
- )
- .show();
- }
-
- @Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- //get intent information
- final Intent intent = getIntent();
- Uri packageURI = intent.getData();
- String packageName = packageURI.getEncodedSchemeSpecificPart();
- if(packageName == null) {
- Log.e(TAG, "Invalid package name:"+packageName);
- displayErrorDialog(R.string.app_not_found_dlg_text);
- return;
- }
- //initialize package manager
- mPm = getPackageManager();
- boolean errFlag = false;
- try {
- mAppInfo = mPm.getApplicationInfo(packageName, PackageManager.GET_UNINSTALLED_PACKAGES);
- } catch (NameNotFoundException e) {
- errFlag = true;
- }
- if(mAppInfo == null || errFlag) {
- Log.e(TAG, "Invalid application:"+packageName);
- displayErrorDialog(R.string.app_not_found_dlg_text);
- } else {
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- //set view
- setContentView(R.layout.uninstall_confirm);
- PackageUtil.initAppSnippet(this, mAppInfo, R.id.app_snippet);
- //initialize ui elements
- mOk = (Button)findViewById(R.id.ok_button);
- mCancel = (Button)findViewById(R.id.cancel_button);
- mOk.setOnClickListener(this);
- mCancel.setOnClickListener(this);
- }
- }
-
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- boolean finish = true;
- switch(requestCode) {
- case UNINSTALL_PROGRESS:
- finish = false;
- mCurrentState = UNINSTALL_DONE;
- //start the next screen to show final status of installation
- startUninstallDone(resultCode==UninstallAppProgress.SUCCEEDED);
- break;
- case UNINSTALL_DONE:
- //neednt check for result code here
- break;
- default:
- break;
- }
- if(finish) {
- //finish off this activity to return to the previous activity that launched it
- Log.i(TAG, "Finishing off activity");
- finish();
- }
- }
-
- private void finishAndReturn() {
- finish();
- }
-
- public void onClick(View v) {
- if(v == mOk) {
- //initiate next screen
- startUninstallProgress();
- } else if(v == mCancel) {
- finishAndReturn();
- }
- }
-}