我想从我的应用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);
}
}
});
但我正在接近力量。我怎么解决这个问题?你能救我吗?
答案 0 :(得分:0)
我想在我的应用中隐藏列表安装的应用中的其他应用
幸运的是,这是不可能的,除了通过自定义ROM或可能是root设备。
您可以通过Android at Work执行类似的操作,但您的应用需要是设备所有者,这需要将您的应用设置为首次启动设备的一部分。
使用此包名称&amp;以下代码中的活动名称:
您的应用无权更改其他应用的组件的启用状态。