两个关闭的android应用程序之间的通

时间:2018-04-13 05:45:16

标签: android

我在一台设备上有2个应用。服务器向两个应用程序发送推送。我希望收到推送的第一个应用程序显示通知,第二个应该什么都不做。如何查看第一个应用已经显示通知? 应用可以关闭。我使用FirebaseMessagingService进行唤醒。

我需要这个,因为用户只能安装一个应用程序或两者兼而有之。

1 个答案:

答案 0 :(得分:1)

最好的方法就是您的服务器只向一个应用发送通知。但如果不可能,你可以使用广播接收器。 您可以使用Broadcast接收器在两个应用程序之间进行通信 在应用B中,例如声明广播接收器如下:

<receiver android:name=".MyBCReceiver"
    android:enabled="true"
    android:exported="true">
    <intent-filter>
       <action android:name="what.ever.you.want" />
    </intent-filter>
</receiver>

来自app A.

Intent intent = new Intent();
intent.addFlags(Intent.FLAG_INCLUDE_STOPPED_PACKAGES);
intent.setAction("what.ever.you.want");
intent.putExtra("key","data");
intent.setComponent(new ComponentName("com.app.b","com.app.b.MainActivity"));  
sendBroadcast(intent);

然后你的应用B,你可以使用sharedPreference做一个标记,不再发出通知。