您的位置:首页 > 移动开发 > Android开发

Android 卸载应用且获取应用的状态更新应用列表

2014-05-09 17:23 447 查看
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();

    }

注销掉即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: