所以我需要一种方法来确定是否有一个为特定操作字符串注册的广播接收器。
因此,要检查意图是否可用,我们有方法(来自 http://www.vogella.com/articles/AndroidIntent/article.html)
public boolean isIntentAvailable(Context context, String action) {
final PackageManager packageManager = context.getPackageManager();
final Intent intent = new Intent(action);
List<ResolveInfo> resolveInfo =
packageManager.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
if (resolveInfo.size() > 0) {
return true;
}
return false;
}
哪个有效,但从我的测试中只查找活动注册到的意图。我为特定的操作字符串注册了一个 broadCastReceiver。并且它永远不会将其视为已注册。但如果我发射广播。广播做出反应。所以方法在这种情况下不起作用。
想法?