我正在开发一款具有登录功能的应用程序。我只为每个应用程序生成一个gcm注册ID。如果其他用户登录同一个应用程序,他将开始接收针对前一个用户的通知。如何处理这种情况,以便每个用户都能收到针对他/她的通知?我应该为每个用户生成gcmregid吗?处理这种情况的标准方法是什么? 最佳答案 您可以尝试以下操作:当用户注销时,发送请求以删除您服务器上的token,并在您的应用程序上将其删除;一旦用户注销,您只需在您的服务器上删除“用户ID”与“GCMtoken”(或注册ID)的关联。当有人再次登录时,您会与该token建立新的关联。GCMto
我正在阅读有关Google云消息传递(GCM)的信息。GCM连接服务器收到的推送通知被发送到支持GCM的Android设备。我假设它在内部使用设备ID(然后使用ARP协议(protocol)从MAC解析为IP)来发送推送通知。GCM在内部使用哪种协议(protocol)来传递通知?如果是TCP/IP那么它如何解析设备的IP(考虑到用户切换wifi网络和移动数据,这不是唯一的)。谁能帮我理解从GCM到客户的沟通? 最佳答案 GCM通过GooglePlay服务工作(没有GooglePlay服务就没有GCM)设备通过端口5228上的TCP
/***@authorSebastienLorber(lorber.sebastien@gmail.com)*/publicenumEnumDeviceType{ANDROID{@OverridepublicbooleanvalidateDeviceIdentifier(StringdeviceIdentifier){Preconditions.checkArgument(!Strings.isNullOrEmpty(deviceIdentifier));returnANDROID_REGISTRATION_ID_PATTERN.matcher(deviceIdentifier).ma
我有一个android应用程序,我使用RESTAPI(djangorest框架)连接到我的服务器这是一个场景(也许是我的计划):数据以json形式来回发送我有一个用户模型和一个任务模型,其中用户是某些任务的所有者。用户通常会向另一个用户发送任务(json类似于:{"owner":"exampleuser","from":"otheruser","content":"example"...}使用POST方法)-任务有一个bool字段“已完成”,一旦任务完成就会被删除(使用PUT或PATCH方法:completed=true,)一旦使用POST方法创建了一个新任务,用户可以查看与他们的任务
这个问题在这里已经有了答案:HowcanIreceivenotificationsfromGCMwhenapplicationisstopped(2个答案)关闭9年前。在我们使用GCM的应用程序之一上,我们一直收到报告称该应用程序在被终止时停止接收通知。当应用程序再次启动时,通知显示正常。经过调查,我们发现这是由于Android3.1上的这个变化造成的:NotethatthesystemaddsFLAG_EXCLUDE_STOPPED_PACKAGEStoallbroadcastintents.Itdoesthistopreventbroadcastsfrombackgroundser
privatevoidregisterClient(){try{GCMRegistrar.checkDevice(this);GCMRegistrar.checkManifest(this);regId=GCMRegistrar.getRegistrationId(this);if(regId.equals("")){registrationStatus="Registering...";GCMRegistrar.register(this,"1074338555805");regId=GCMRegistrar.getRegistrationId(this);registrationS
所以我尝试使用rpush来使用这个gem来推送我的移动应用程序的通知:https://github.com/rpush/rpush.我正在使用sinatra框架。但是我一直收到这个错误,即使我在文件顶部写了-->require'rpush'。有ruby经验的人可以帮助我吗?我是ruby的新手,所以请多多包涵。这是我的代码require'rpush'ModuleNotifierdefrpush_clientapp=Rpush::Gcm::App.newapp.name="App-Name"app.auth_key="XXXXXXXXXXXXXXX"app.connections=1app
我有一个特殊的问题,我放弃了思考,感到困惑。我有一个使用GCM发出通知的应用程序,我使用“ONESIGNAL”作为注释,因为它被推荐且简单,而且我成功并可以做笔记。问题是我住在伊朗,由于制裁,我需要一个VPN才能使用一个信号。当应用程序启动时,它想要登录到“ONESIGNAL”服务器(使用应用程序key和Apikey)——如果没有VPN,应用程序将挂起,但应用程序上的VPN将正常工作并登录。我想解决这个问题,但我可以在应用程序中打开VPN程序并登录,在它关闭VPN后,但它不好。现在我不知道该怎么办,两个GCM-ONESIGNAL都无法使用....请告诉我如何使用它们或至少如何发送通知?
我正在使用AndroidGCM推送服务,它在一段时间内运行良好,但是如果我让我的应用程序空闲几分钟,或者当我在代码中进行一些修改后重新运行它时,我没有收到任何消息并且GCM服务器给我这个错误:“NotRegistered”我做了一些我发现的搜索thispostedquestion但我还不能在那里发表评论(声誉低:(而且帖子太旧了)在经历它时我不明白谷歌服务器有时会自动刷新注册ID,所以我需要知道的是GCM服务器何时对注册ID进行这些修改以及如何更新我在数据库中保存的regID我是新手所以希望我的问题很清楚谢谢你帮我解决问题 最佳答案
我正在为android制作聊天应用程序。为此,我决定使用GCM(GoogleCloudMessaging)。但是对它进行了一些研究后,我读到它不应该用于聊天之类的东西。我将实现上游消息传递(将数据从设备直接发送到GCM,无需发送到同步)。这是我的担忧:消息会立即传输吗?(将足够快,用户可以看到“打字”/看到)如果所有设备都在线,那么来自GCM的消息到达客户端的保证是什么?我想使用GCM的主要原因是GCM使用的电池生命周期最少这是一款仅限Android的应用。如果GCM不是我应该使用的,我应该使用什么? 最佳答案 我正在处理类似的要求