我正在创建一个可以由服务控制的简单应用程序。为了控制这个应用程序,服务必须知道可以发送给它的命令,所以我认为它应该是提供这些命令列表的应用程序,如下所示:
MY_ACTION_GET_COMMANDS
意图的辅助活动(因此我应该在“AndroidManifest.xml”文件中定义一个intent-filter)。startActivityForResult
方法发送此类意图。如何发送支持的意图列表?
更新:请注意,应用程序和服务位于不同的包中。
答案 0 :(得分:2)
我不确定我理解为什么你需要显示这些意图的活动。这是真正的用户会看到的吗?
如果您真的想获得特定应用正在收听的所有意图的列表,您可以使用PackageManager。使用PackageInfo检索PackageManager。然后,您将能够扫描该应用程序中所有已定义的接收器。
如果你进一步解释,我可能会提供更多帮助。
答案 1 :(得分:1)
您可以将支持的意图作为列表从子活动传递回父级。
Intent intent = this.getIntent();
ArrayList<String> a = new ArrayList<String>();
a.add("com.customintent.INTENT_ONE");
a.add("com.customintent.INTENT_TWO");
intent.putStringArrayListExtra("list",a);
this.setResult(RESULT_OK, intent);