我正在编写一个Android应用程序,它使用Google云消息传递从服务器接收下游消息。当收到带有onMessageReceived的消息时,我打印包并阅读以下内容:RECEIVEDPUSHNOTIFICATION:Bundle[{gcm.notification.e=1,gcm.notification.badge=1,gcm.notification.sound=default,..etc...我不明白通知负载中的键gcm.notification.e。在谷歌文档中我没有找到类似的东西。此外,在发送消息时,我通常会同时指定通知负载和数据负载。现在我尝试删除通知负载,但我仍然收到gc
我目前正在显示一个项目列表,供用户根据他们喜欢该项目的数量进行赞成票和反对票。例如有3个不同的项目,任务1、任务2、任务3,每个项目都有0票。当我对一个项目投赞成票时,我希望它高于另一个,如果我反对它,它会低于另一个。我通过一个列表适配器和一个扩展BaseAdapter的自定义类让它完美地工作,我现在唯一的问题是,如果我在我自己的客户端上并且我对一个项目进行投票,而另一个用户也在对一个项目进行投票,它会刷新我的列表,并且不会显示本地用户点击了该项目,因此他们可以无限次投票。我目前有2个数组列表,一个包含所有项目,一个仅包含被点击的项目以及它们是被赞成还是被反对。我认为可能调用.noti
我是GCM的新手,我很想知道当应用程序在Android中处于非Activity状态时GCM是如何工作的。当应用程序关闭或打开时如何处理接收消息。存储通知的最佳方式是什么 最佳答案 这是GCM教程的链接:https://developers.google.com/cloud-messaging/基本上它是如何工作的,你需要在你的项目中设置一个监听器类来监听任何进来的东西。你可以监听onReceived、onOpened等回调。然后你可以在单击该通知。它在关闭或打开应用程序时的工作方式需要由开发人员决定。如果您不区分,那么所有通知都会出
我正在实现GCM推送通知服务,为此我使用Service类来扩展我的类。所以我实现的服务在后台持续运行。但是,当应用长时间空闲时,我没有收到任何通知。它仅适用于应用在堆栈中运行时的情况。我知道,当App从Stack关闭时我们无法收到通知。请帮助我在应用程序长时间未运行(如Whatsapp或Gmail)时收到通知。我使用了IntentService但它仅在应用程序运行时(前台或后台)工作。 最佳答案 读这个,IntentService当它用完工作时会自行停止。关于通知,它可能随时出现,因为您需要放置BroadcastReceiver。通
我有一个使用android帐户登录/注销的应用程序。我也在使用GCM,所以当用户登录时我注册设备,如果用户注销我注销它。我遇到了取消注册调用的问题。要从我的服务器注销我的设备,我需要帐户的token。由于我无法将它传递给GCMIntentService的onUnregistered方法(或者至少我不知道如何),我尝试使用AccountManager获取它,但此时我的帐户已被删除。我想解决它,我想到了两个选项:1-先调用GCMRegistrar.unregister,在GCMIntentService->onUnregistered函数中删除账号。这个解决方案的问题是用户必须等待取消注册
我正在尝试通过推送通知来通知设备我从GCM服务器收到了这个响应{"multicast_id":8594338261894783737,"成功":1,"失败":0,"canonical_ids":0,"结果":[{"message_id":"0:1355822022916886%8ae6056ef9fd7ecd"}]}还是收不到通知有了知识-->"success":1但我认为这里有问题-->"canonical_ids":0这是我的代码......privatestringSendGCMNotification(stringapiKey,stringpostData,stringpost
GCM消息的接收者如何检测消息是否已被GCM服务器使用collapse_key“折叠”?是否有可用的反馈?或最佳实践?目标是为“send_to_sync”模式创建一个最佳(最便宜)的实现,其中客户端仅在有消息丢失时“同步”。例子:假设一组10台设备通过GCM消息相互更新它们的确切位置。只有最新的更新是相关的,所以最好让每个用户都有自己的折叠键。由于使用GCM时有4个折叠键的限制,您不能为每个用户使用折叠键,因此您必须创建自己的系统并使用“send_to_sync”模式。如果每条“send_to_sync”消息都包含最新更新+以指示是否有任何遗漏的消息,那就太好了,如果没有,则无需同步。
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。Improvethisquestion最近,我试图学习GCM并制作一个测试应用程序,该应用程序将通过androids官方网站获取android的推送通知。但是,我发现教程对我来说很难。有没有什么简单易学的教程可以让像我这样的新手在不使用android服务器的情况下学习GCM推送通知?
我很好奇androidGcmTokenExpire策略。当我希望注册了Gcm服务的设备能够接收Gcm推送消息时,我将使用API注册它。然后我将获得一个Gcmtoken“A”。如果我从不在Play商店升级我的应用程序版本代码。谷歌会用“B”刷新它并自动使“A”过期吗?如果是,什么时候做。我看过一些文章说,一旦“A”被“B”刷新,那么当服务器尝试向“A”发送消息时,服务器将获得新的注册ID“B”。我现在想知道客户端如何知道gcmtoken“A”已过期并被替换为“B”有人能回答我的问题吗?谢谢 最佳答案 是的,实现onTokenRef
我正在将GCM集成到我的应用程序中,我所做的是制作配置文件google-services.json并将其放入app文件夹(我使用的是AndroidStudio)资源文件也被导入并且我还在我的build.gradle中包含了该插件像这样的应用applyplugin:'com.google.gms.google-services'问题是它仍然没有解决。我想知道哪里出了问题?我已经搜索过了,我找到了this,我现在已经使用了我的项目编号,没有出现错误。这是正确的做法吗?有人请解释 最佳答案 看一下官方google例子的gradle文件:h