Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 多个GCM接收器:1。从我的应用程序,2。来自第三方库_Android_Google Cloud Messaging - Fatal编程技术网

Android 多个GCM接收器:1。从我的应用程序,2。来自第三方库

Android 多个GCM接收器:1。从我的应用程序,2。来自第三方库,android,google-cloud-messaging,Android,Google Cloud Messaging,我正在创建一个应用程序,该应用程序具有专门针对我的应用程序的GCM集成,并且我正在使用一个第三方库,该库也包含GCM集成。 所以问题是我必须在manifest.xml中添加两个广播接收器,当服务器发出通知时,这两个接收器都会被调用。 所以我每次收到两个通知。现在我无法将任何内容更改为库,所以是否有任何方法可供我管理,或者有人可以建议我如何管理两个GCM接收器 注意:我的应用程序和库都有单独的服务和接收器。您可以启用/禁用接收器 我这样做的方式是将逻辑放在Receiver类中。 如果它没有特定的参

我正在创建一个应用程序,该应用程序具有专门针对我的应用程序的GCM集成,并且我正在使用一个第三方库,该库也包含GCM集成。 所以问题是我必须在manifest.xml中添加两个广播接收器,当服务器发出通知时,这两个接收器都会被调用。 所以我每次收到两个通知。现在我无法将任何内容更改为库,所以是否有任何方法可供我管理,或者有人可以建议我如何管理两个GCM接收器


注意:我的应用程序和库都有单独的服务和接收器。

您可以启用/禁用接收器


我这样做的方式是将逻辑放在Receiver类中。
如果它没有特定的参数,那么忽略它,第二个接收器将处理它。

这不是一个糟糕的设计吗?但您可以在从服务器发送消息时在消息中添加一个标志,并且您可以在应用程序代码中使用该标志来知道该为哪个应用程序/库做什么。我知道,但我的应用程序也必须有GCM和库,所以对此无能为力。我已尝试放置标志,但该标志只会在我的应用程序中进行检查,因此当收到通知时,两个接收者都会调用,我可以使用该标志在我的GCMinentService类中管理该标志,但库接收者也会被调用,我会收到通知,我无法阻止。因此,您不想在lib的接收者中接收任何消息??那么为什么不禁用该接收器呢?不,我想接收来自特定接收器的消息意味着如果消息从仅显示应用程序通知的应用程序服务器发送,如果消息来自仅显示该通知的lib服务器。那个么你们知道如何处理这个问题吗?或者我可以用一些条件逻辑或其他什么吗?相关的问题-