有没有办法让两个不同的Android应用程序进行通信?

时间:2012-11-30 15:45:11

标签: android android-intent

我想这样做,以便当我的应用程序被选中时,会弹出另一个应用程序。这是否有意图和服务?

3 个答案:

答案 0 :(得分:0)

是的,很有可能

使用Content Provider

在应用之间进行通信

意图可用于启动其他应用。

答案 1 :(得分:0)

您可以使用IPC(进程间通信)。您可以找到文档here

答案 2 :(得分:0)

是的,这是可能的。

你有两种方法可以做到这一点,其中有两种:

  1. 如果您需要某种长连接并需要在应用程序之间移动数据,则可以使用两个服务,每个服务一个,然后与Messenger对象进行通信。 Messenger对象用于跨进程实现基于消息的通信 - 两个不同的应用程序,一旦获得想法就很容易使用。

  2. 如果您只需要在选择应用程序时启动其他应用程序,则可以使用您要启动的应用程序清单中设置的intent过滤器启动意图。如果您只需要启动第二个应用程序,而不需要它们之间的任何连接,那么这就是您所需要的。

  3. 如果您需要启动计算器应用程序,可以尝试这样做:

    Intent i = new Intent();
    i.setClassName("com.android.calculator2", "com.android.calculator2.Calculator");
    startActivity(i);