如何避免拖延Android的GCM消息/更改心跳 [英] How to avoid delay in Android GCM messages / change heartbeat

查看:1943
本文介绍了如何避免拖延Android的GCM消息/更改心跳的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在阅读关于一个GCM的问题,影响到一些人的很多帖子。看来,在一些设备/路由器/运营商的通知,遭受延误。我已经经历过这个问题,我的路由器。消息传来了很多延误WIFI,但瞬间来了,当我禁用WIFI和连接到移动网

I've been reading many posts regarding a GCM issue that affects some people. It seems that in some devices/routers/carriers the notifications suffer delays. I've experienced this issue with my router: messages came with a lot of delay on WIFI but came instantly when I disabled WIFI and connected to the mobile net.

似乎有一种变通方法,可以从Android应用程序来完成。喜欢的东西越来越多,保持GCM连接活着左右。心跳

It seems there is a workaround that can be done from the Android app. Something like increasing the heartbeat that keeps GCM connection alive, or so.

任何人都可以告诉我们,我们应该怎样做,以避免延误?我们怎样才能保持从Android应用程序与GCM的连接?一个code例子(和在何处以及如何使用它)将是非常有益的。

Can anyone tell us what should we do to avoid the delay? How can we keep the connection with GCM from an Android app? A code example (and where and how to use it) would be really helpful.

这个帖子说明问题。它说,我们可以继续使用ping从GCM服务器(这是免费的)每两分钟连接活着。我们怎样才能做到这一点?

This post explains the problem. It says that "we could keep the connection alive with a ping every two minutes from the GCM server (which is free)". How can we do that?

多谢

下面的应用程序似乎做的伎俩。令人惊奇的是,第一个不需要任何许可,第二个因特网连接,第三个是只为根电话:

The following apps seem to do the trick. Surprisingly, the first one doesn't need any permission, the second one internet connection and the third one is only for rooted phones:

<一个href="https://play.google.com/store/apps/details?id=at.pansy.droid.gcmWifiFix">https://play.google.com/store/apps/details?id=at.pansy.droid.gcmWifiFix

<一个href="https://play.google.com/store/apps/details?id=com.elotro.pushheartbeat">https://play.google.com/store/apps/details?id=com.elotro.pushheartbeat

<一个href="https://play.google.com/store/apps/details?id=com.andqlimax.pushfixer">https://play.google.com/store/apps/details?id=com.andqlimax.pushfixer

推荐答案

我会把这个作为第一个答案评论,但我没有足够的声誉。

I would put this as a comment in the first answer but I don't have enough reputation.

我有一个类似的问题,我解决了它调用我的web服务之前,执行下面的code。

I had a similar issue and I solved it executing the code below before calling my webservice.

context.sendBroadcast(new Intent("com.google.android.intent.action.GTALK_HEARTBEAT"));
context.sendBroadcast(new Intent("com.google.android.intent.action.MCS_HEARTBEAT"));

希望它可以帮助你!

Hope it help you!

这篇关于如何避免拖延Android的GCM消息/更改心跳的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆