0

我希望在用戶收到應用內請求時通知(創建通知)用戶。
我正在使用MySQL數據庫與PHP - 常規的東西。Android通知:GCM或服務

每當的user_id_req場的變化從0 值,該應用應該創建的通知。我可以在NotificationManager的App Start上執行此操作並檢查數據庫,但我希望實時執行此操作,也就是說只要值發生變化即可。

我應該使用GCM來處理這些請求或一個在後臺運行並每分鐘檢查一次數據庫的服務嗎?

+0

GCM vs Service?你正在比較蘋果和自行車。 – 2014-12-01 22:55:22

+0

這完全沒有幫助。我認爲你可以使用服務來做後臺處理,例如檢查數據庫字段值 - 你能做到嗎? – 2014-12-01 22:57:47

+0

在我看來,一個服務看起來超大你正在談論的工作。當發生某些事情時,您必須通知用戶。我將以此爲標誌,推動是正確的。 – marino 2014-12-01 23:00:08

回答

0

應該絕對使用GCM,而不是輪詢模式。

每分鐘發出一次網絡請求是非常糟糕的做法 - 這將導致大量的電池使用。此外,除非你有你的服務保持一個喚醒鎖(這將真的殺死電池),設備將最終進入休眠狀態,並且您的請求將停止,直到用戶再次喚醒設備。另一個問題是,除非您註冊您的應用程序以在啓動時喚醒並觸發服務,否則只要用戶重新啓動設備,您的輪詢就會停止。

恰巧大多數GCM教程也會讓你創建一個Service。不要讓你迷惑。如果您只向用戶顯示通知,則不需要Service,只需一個簡單的BroadcastReceiver即可正常工作。