我已经阅读了许多关于影响某些人的GCM问题的帖子。似乎在某些设备/路由器/运营商中,通知会出现延迟。我的路由器遇到过这个问题:消息在WIFI上延迟很多,但在我禁用WIFI并连接到移动网络时立即出现。似乎有一种解决方法可以从Android应用程序中完成。诸如增加心跳以使GCM连接保持活跃之类的东西。谁能告诉我们应该怎么做才能避免延误?我们如何从Android应用程序保持与GCM的连接?一个代码示例(以及在何处以及如何使用它)将非常有帮助。Thispost解释了问题。它说“我们可以通过GCM服务器(免费)每两分钟ping一次来保持连接处于Activity状态”。我们该怎么做?非常感谢以下应
我成功测试了我的GCM代码。但完全相同的代码,我无法获得GCM推送并得到:GCMError:NotRegistered. 最佳答案 GCM响应NotRegistered表示遵循“如果它是NotRegistered,您应该从服务器数据库中删除注册ID,因为该应用程序已从设备上卸载,或者它确实没有配置为接收com.google.android.c2dm.intent.RECEIVEIntent的广播接收器。”来自documentation.检查在什么情况下您会收到此错误,从设备上卸载应用程序或您在AndroidManifest中描述不正
我刚刚在AndroidSDK管理器中将GooglePlay服务更新到了最新版本-23。接下来,我将项目中的依赖项更新为:com.google.android.gms:play-services-gcm:8.3.0但我得到了:Foundcom.google.android.gms:play-services-gcm:8.3.0,butversion8.1.0isneededFoundcom.google.android.gms:play-services-gcm:8.3.0,butversion8.1.0isneededFoundcom.google.android.gms:play-s
我有一个应用,实现了推送通知。我想了解在实现GCM时为什么需要“GET_ACCOUNTS”(android.permission.GET_ACCOUNTS)的原因?一些用户对此权限表示担忧。我已在list中使用此权限,因为它在官方网站here中给出.这个权限有多安全?如果我从list中删除它,推送通知会起作用吗? 最佳答案 ItusesanexistingconnectionforGoogleservices.Forpre-3.0devices,thisrequiresuserstosetuptheirGoogleaccounton
我知道C2DM注册会过期,您应该定期刷新注册ID。GCM是这种情况吗?通过查看AndroidGCM指南(如下所示)上的以下代码,您似乎只执行一次并且不需要刷新,但我没有看到任何地方明确写,所以我只是想检查一下。finalStringregId=GCMRegistrar.getRegistrationId(this);if(regId.equals("")){GCMRegistrar.register(this,SENDER_ID);}else{Log.v(TAG,"Alreadyregistered");} 最佳答案 编辑:这个答案
是否可以将相同的发件人ID用于更多应用程序?现在我有18个使用相同后端的应用程序(不同的语言和一些功能)。现在我正在使用GCM实现推送通知。但是后端团队更喜欢只有一个谷歌项目——所有应用程序的SENDERID。有人试过吗?这种情况可能吗?有什么缺点?谢谢 最佳答案 非常欢迎(并鼓励)开发者为他们的所有应用使用相同的发件人ID/APIkey。当您发送消息时,您指定一个注册ID,该ID隐式链接到生成它的应用+设备的包名称。只有请求注册ID的应用才会收到您的消息。来源:我是GoogleAndroid团队的成员。
Google刚刚宣布GoogleCloudMessaging现在更名为FirebaseCloudMessaging。这对GCM的现有用户意味着什么?需要进行哪些迁移(如果有)? 最佳答案 什么是FCM,我们为什么要使用它?FCM(Firebase云消息传递)是Firebase品牌下GoogleCloudMessagingAPI的新改进版本。它具有GCM的所有功能以及一些附加功能。根据FirebaseFAQ,它“继承了GCM的核心基础架构,使用新的SDK使云消息传递开发更容易”。Google在其CloudMessagingFAQ中解释
在GoogleCloudMessaging中,注册ID的最大长度究竟是多少? 最佳答案 谷歌工程师saidtheregistrationIDcanbeupto4K。用户观察到它是255个字符。 关于androidGCM注册ID最大长度,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/11324666/
Update:GCMisdeprecated,useFCM如果我的应用打开,如何刷新接收gcm推送通知的Activity。我有一个包含ListView的Activity,其中填充了来自服务器的数据。如果我收到gcm推送通知(其中还包含一些数据),我想刷新我的Activity(这里向ListView添加一个项目)。另一种方法是添加timer,它会定期执行服务器请求并更新列表适配器数据,但我不想要这些,因为它会占用大量资源。我是否需要添加广播接收器,它会在接收gcmpush时触发,进一步请求更新的服务器数据并更新我的ActivityUI?尊敬的评论者,请仔细阅读问题,我只需要刷新列表(如果
我想知道ECDHE-ECDSA-AES128-GCM-SHA256和ECDHE-ECDSA-AES128-GCM-SHA256是否有最低key生成要求?我正在尝试使用上述算法之一让TLS客户端和服务器相互连接并继续接收“无共享密码错误”。我创建了一个CA来签署客户端和服务器证书,并尝试仅使用openssl和node.js进行连接。我在localhost(127.0.0.1)上运行客户端和服务器以消除任何其他可能的问题。这是我到目前为止所做的:CAkey对创建:$opensslgenrsa-outca-key.pem4096$opensslreq-new-x509-days365-key