[英]how to disable another application broadcast receiver from my application in android?
我需要通过我的应用程序禁用手机中所有已安装应用程序的去电广播接收器。 我试过了,但是没有明白。 请帮我
这是我的代码 :
PackageManager packageManager = getPackageManager();
List<String> startupApps = new ArrayList<String>();
final Intent intent = new Intent("android.intent.action.NEW_OUTGOING_CALL");
final List<ResolveInfo> activities = packageManager.queryBroadcastReceivers(intent, 0);
for (ResolveInfo resolveInfo : activities) {
ActivityInfo activityInfo = resolveInfo.activityInfo;
if (activityInfo != null)
startupApps.add(activityInfo.name);
}
Log.e("receivers",startupApps.toString());
for(int i=0;i<startupApps.size();i++)
{
if(!("com.example.customcalling.GetOutgoingNUmber1").equals(startupApps.get(i)))
{
String newreceivers=startupApps.get(i);
Log.i("newReceivers", newreceivers);
ComponentName receiver = new ComponentName("com.isodroid.fsci.controller.receiver","com.isodroid.fsci.controller.receiver.OutgoingCallReceiver");
pm.setComponentEnabledSetting(receiver,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);
}
}
startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel:"
+ phonenumber)));
这是不可能的。 您无权禁用(或启用)另一个应用程序的组件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.