从其他应用程序控制应用程序

时间:2012-04-21 16:43:33

标签: android android-intent

我阅读this questionanother question,我了解如何从其他应用程序启动应用程序(让我们调用其他应用程序 LauncherApplication )。但是,我的目标不仅是启动一个应用程序,而是使用它的功能,所以我认为 LauncherApplication 应该使用intent(显式或隐式)启动一个活动。

我应该知道安装的应用程序所做的数据和操作,我应该在启动之前将这些信息添加到intent实例中。我希望 LauncherApplication 允许用户(而不是开发人员)配置此意图,但我如何提前知道要为已安装的应用程序设置意图的参数?

我应该实现“LauncherApplication *”以允许用户通过图形界面构建一个intent。或者我可以让我的应用程序支持添加插件:这样,我可以为每个已安装的应用程序创建一个插件,每个插件可以负责管理与其相关的应用程序的意图配置。

更新(添加详细信息)。特别是, LauncherApplication 应该是启用了语音识别器的服务,因此用户可以启动应用程序来说明特定关键字:as以及启动应用程序,用户应该能够关闭它并使用它的功能。

例如,我可以安装一个应用程序((我们称之为 LibraryApp )来搜索库中的可用书籍;该应用程序可以具有以下功能:

  1. 搜索图书(如果该图书可用,该图书已被借出或已由其他人预订,则此功能可能会返回。)
  2. 预订一本书(此功能应该返回完成预订)。
  3. 通过这种方式,例如,当我发出单词“start LibraryApp”时, LauncherApplication 服务应启动 LibraryApp 应用程序。启动应用程序后,该服务应该能够向其发送命令以使用其中一个可用功能(搜索书籍,预订书籍)。

    如何将命令发送到已经处于活动状态的应用程序,以便对其进行控制?

1 个答案:

答案 0 :(得分:3)

  

如何提前知道要为已安装的应用程序设置意图的参数?

你和他们的开发者交谈。 Intent上通常只有零“参数”来启动应用程序的启动器活动(或活动),因为主屏幕不会在Intent上放置此类“参数”。