Android通知:GCM或服务

时间:2014-12-01 22:53:51

标签: android mysql notifications android-service google-cloud-messaging

我想在收到应用内请求时通知(创建通知)用户。
我正在使用带有PHP的MySQL数据库 - 常规的东西。

每当 user_id_req 字段的值从 0 更改为 1 时,应用程序应创建通知。我能够在App Start上用NotificationManager进行检查并检查数据库,但我想实时进行,这意味着一旦值发生变化。

我是否应该使用GCM来处理这些请求或在后台运行的服务并每分钟检查一次数据库?

1 个答案:

答案 0 :(得分:0)

应该绝对使用GCM,而不是轮询模型。

每分钟发出一次网络请求是非常糟糕的做法 - 这将导致大量电池使用。此外,除非您的服务保持唤醒锁定(真的杀死电池),否则设备将最终进入睡眠状态,您的请求将停止,直到用户再次唤醒设备。另一个问题是,除非您注册应用程序以在启动时唤醒并触发服务,否则只要用户重新启动设备,您的轮询就会停止。

大多数GCM教程也会让您创建Service。不要让这让你感到困惑。如果您只向用户显示通知,则表示您不需要Service,只需一个简单的BroadcastReceiver即可。