我想在收到应用内请求时通知(创建通知)用户。
我正在使用带有PHP的MySQL数据库 - 常规的东西。
每当 user_id_req 字段的值从 0 更改为 1 时,应用程序应创建通知。我能够在App Start上用NotificationManager
进行检查并检查数据库,但我想实时进行,这意味着一旦值发生变化。
我是否应该使用GCM来处理这些请求或在后台运行的服务并每分钟检查一次数据库?
答案 0 :(得分:0)
你 应该绝对使用GCM,而不是轮询模型。
每分钟发出一次网络请求是非常糟糕的做法 - 这将导致大量电池使用。此外,除非您的服务保持唤醒锁定(真的杀死电池),否则设备将最终进入睡眠状态,您的请求将停止,直到用户再次唤醒设备。另一个问题是,除非您注册应用程序以在启动时唤醒并触发服务,否则只要用户重新启动设备,您的轮询就会停止。
大多数GCM教程也会让您创建Service
。不要让这让你感到困惑。如果您只向用户显示通知,则表示您不需要Service
,只需一个简单的BroadcastReceiver
即可。