Android 卸載應用比較簡單:
packageName 爲你獲取到的app的packageName 這裏就不說了
Uri uri = Uri.parse("package:"+packageName);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DELETE);
intent.setData(uri);
startActivity(intent);
如果用startActivityForResult(intent, 1);
在onActivityResult(int requestCode, int resultCode, Intent data)
裏無法返回resusltok 我不知道爲什麼 具體原因不明
那麼最好使用BroadcastReceiver來處理:
mUninstallReceiver = new UninstallReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_REMOVED);
filter.addDataScheme("package");
this.registerReceiver(mUninstallReceiver, filter);
private class UninstallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (packageName != null && ("package:" + packageName).equals(intent.getDataString())) {
這裏可以做一些更新list的操作
//mListAdapter.notifyDataSetChanged();
//bindApps();
//listView.setSelection(currentPosition);
}
}
}
在
protected void onDestroy() {
unregisterReceiver(mUninstallReceiver);
super.onDestroy();
}
註銷掉即可