我正在嘗試創建一個簡單的android消息傳遞應用程序。所以基本上讓我們假設用戶A向用戶B發送消息。我希望用戶B在收到消息時收到通知。我知道如何創建通知和全部。但基本上我想知道用戶B如何不斷檢查是否收到新消息,即使他不在應用程序中,然後觸發通知和後續操作。自動檢查新消息android
謝謝
我正在嘗試創建一個簡單的android消息傳遞應用程序。所以基本上讓我們假設用戶A向用戶B發送消息。我希望用戶B在收到消息時收到通知。我知道如何創建通知和全部。但基本上我想知道用戶B如何不斷檢查是否收到新消息,即使他不在應用程序中,然後觸發通知和後續操作。自動檢查新消息android
謝謝
您必須設置一個未綁定的後臺服務。 有了這個,您可以不斷向服務器發出拉取請求,或從服務器獲取推送通知並顯示通知。 https://developer.android.com/training/run-background-service/create-service.html
您可以使用Event Bus lib來達到此目的。當接收到新消息時,它將創建和事件,然後您可以接收該事件事件並執行其他操作。
如果你正在談論的短信,那麼你必須創建一個BroadcastReceiver http://developer.android.com/reference/android/content/BroadcastReceiver.html 你可以在這裏看到我的答案短信接收 Verify sms text message by app before it displayed to user 不要忘記給你的應用程序的清單權限。
希望它有幫助。
謝謝你的回答。我認爲這可能符合我的需求,但在應用程序關閉時它不會繼續運行請求,但我仍然希望。正如whatsapp在某種意義上所做的那樣。 – 2014-10-22 09:59:14
有不同的方法來保持服務的存活,例如onStartCommand返回START_STICKY,AlarmManager重新啓動服務,... 但是你不能保持一個服務活着無限(沒有永久通知)。 – MD1948 2014-10-22 10:48:51