如何从我的应用程序隐藏其他应用程序?

时间:2016-02-18 21:22:04

标签: android

我想从我的应用Android中隐藏任何应用程序(Telegram,Viber,...)。我想在我的应用中隐藏列表安装的应用中的其他应用。我尝试使用此代码。 我使用以下代码获取应用包名称及其活动名称:

private void hideapplication() {
final PackageManager pm = getPackageManager();

Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);

List<ResolveInfo> appList = pm.queryIntentActivities(mainIntent, 0);
Collections.sort(appList, new ResolveInfo.DisplayNameComparator(pm));

TextView textview= (TextView)findViewById(R.id.textview);
 ImageView imageview =(ImageView)findViewById(R.id.imageview);

for (ResolveInfo temp: appList) {
    Log.v("my logs", "package and activity name = " + temp.activityInfo.packageName + "    " + temp.activityInfo.name);
}

}

使用此包名称&amp;以下代码中的活动名称:

checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
    if (buttonView.isChecked()) {
        Toast.makeText(context, "Checked", Toast.LENGTH_SHORT).show();
        ComponentName componentName = new ComponentName(applicationInfo.packageName, applicationInfo.name);
        packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
    }
}

});

但我正在接近力量。我怎么解决这个问题?你能救我吗?

1 个答案:

答案 0 :(得分:0)

  

我想在我的应用中隐藏列表安装的应用中的其他应用

幸运的是,这是不可能的,除了通过自定义ROM或可能是root设备。

您可以通过Android at Work执行类似的操作,但您的应用需要是设备所有者,这需要将您的应用设置为首次启动设备的一部分。

  

使用此包名称&amp;以下代码中的活动名称:

您的应用无权更改其他应用的组件的启用状态。