我成功地testing了我的GCM代码。 但是完全一样的代码,我无法得到GCM推送,得到: GCM错误:未注册。
我有一个应用程序,实施了推送通知。 我想了解为什么我们需要“GET_ACCOUNTS”(android.permission.GET_ACCOUNTS),而实施GCM? 有些用户正在提出这个权限的担忧。 我在清单中使用了这个权限,因为它是在官方网站上给出的。 这个权限有多安全? 如果我从清单中删除这个推送通知,那么推送通知会起作用吗?
我已经上传我的应用程序谷歌播放,但用户已经报告了以下exception java.lang.RuntimeException:WakeLock被locking为C2DM_LIB 。 当我尝试释放WakeLock时会发生此exception。 任何人都可以告诉可能是什么问题。
这发生在针对Google云消息传递进行编码的情况下,但适用于其他地方。 考虑以下: var http = new HttpClient(); http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("key=XXX"); 和 var http = new HttpClient(); http.DefaultRequestHeaders.Add("Authorization", "key=XXX"); 两者都生成一个FormatException: System.FormatException:值key = XXX'的格式无效。 解决方法是删除等号。 挖掘reflection器显示有一些validation和parsing代码,当添加一个新的头部值时运行。 为什么这一切都是必要的? 难道这个客户不应该离开我们的方式吗? 你如何逃避等号,以便添加此值成功?
我知道C2DM注册过期了,你应该定期刷新注册ID。 这是GCM的情况吗? 通过在Android GCM指南(如下所示)上查看下面的代码,似乎你只做了一次,不需要刷新,但我没有看到明确写在任何地方,所以我只是想检查。 final String regId = GCMRegistrar.getRegistrationId(this); if (regId.equals("")) { GCMRegistrar.register(this, SENDER_ID); } else { Log.v(TAG, "Already registered"); }
GCM服务器发出的注册ID的最大长度是多less? GCM文档不提供此信息。 使用Google进行search可以发现,注册ID本质上并不是固定长度,长度可以达到4K(4096字节)。 但这些不是Google的正式答案。 我目前正在接收长度为162个字符的注册ID。 任何人都可以帮忙吗?
如果我的应用程序处于打开状态,如何刷新 接收gcm推送通知的活动。 我有一个活动,其中包含从服务器填充数据的列表视图。 如果我收到gcm推送通知(也包含一些数据),我想刷新我的活动( 这里再添加一个项目到列表视图 )。 一种替代方法是添加定时器 ,定期做服务器请求和更新列表适配器数据,但我不想要这些,因为它会花费很多资源。 我是否需要添加广播接收器 ,这将触发接收gcm推进哪些进一步请求更新的服务器数据和更新我的活动用户界面? 亲爱的评论者,请仔细阅读这个问题,我只需要刷新列表 (如果应用程序是打开的,特定的活动是开放的), 否则不需要相同的 。
在Google Cloud Messaging中,注册ID的最大长度是多less?
我正在开发一个Android应用程序,我想开始testing推送通知。 从代码的angular度来看,我都准备好了。 我目前面临的挑战是我根本不知道如何从Google获得Google Cloud Messaging API密钥。 有大量的教程和video在线显示如何在10秒内完成,但Google最近更新了它的开发人员中心 ,这些教程似乎都不再适用。 目前的过程似乎非常繁琐,并不完全类似于我在网上看到的。 我意识到,这只是一个编程问题(如果有的话),但是如果没有Google的API密钥,我甚至无法开发任何东西。 有人能指出我正确的方向吗?
我收到推送服务捕获的一个奇怪的推送消息: Bundle[{CMD=RST_FULL, from=google.com/iid, android.support.content.wakelockid=1}] 刚刚开始发生昨天,我不能真正发现哪个代码的变化是责怪这个。 有没有人见过这个消息,也许知道它来自哪里,为什么?