搜尋

首頁  >  問答  >  主體

消息推送 - 最普遍的android通知推送的解决方案是什么样的?

  1. 要实现一个通知推送的功能,但是现在没有任何思路,不知道现在市场上的应用都是使用什么方案来实现信息推送?

  2. 能否详细介绍下这些方案?

巴扎黑巴扎黑2773 天前664

全部回覆(6)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 13:54:14

    1、GMS:google messange server這個別指望了,我大天朝
    2、現在普遍採用的方法是:在應用啟動時開啟一個PushService,去服務端進行一個長連接(mqtt、xmpp協議等等),然後由服務端透過長連線推播訊息到PushService,PushService接收到訊息之後產生一個notification。可以自己搭建推播伺服器,但建議使用第三方的SDK,例如信鴿、極光推送、百度推送,大部分需求都是可以滿足的。
    用2方法做的話可能會出現一個問題,並不能保證PushService一直存活,所以要解決怎麼保證PushService不會被殺死。

    回覆
    0
  • 黄舟

    黄舟2017-04-17 13:54:14

    @Akioss 說的2確實是常用的方式,PushService的話 alarmmanger可以做一個定時任務,定時給伺服器發送心跳,同時也能保證pushservice 是活的,如果不在,可以在起。

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-17 13:54:14

    可以試試騰訊信鴿,去年用過,不知道現在怎麼樣了

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 13:54:14

    以前做過一個app,當時使用的是androidpn,但是這東西要自己修改一番才能用,用來直接就用第三方的了,有很多選擇,你自己可以上網查查

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 13:54:14

    要實現即時,那就得伺服器推,可以使用極光推送,效果最好

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 13:54:14

    目前,市場上的應用多數的解決方案是使用第三方推送服務。

    我們的解決方案是讓開發者在客戶端整合我們的 Android SDK,服務端可透過 SDK 或使用 RESTful API,向 Android 用戶端發送訊息。

    在即時性方面,Android SDK 會啟動一個後台的 Service,創建並保持到雲巴伺服器的長連接,從而保證了訊息推送的即時性。

    而且,當客戶端目前不在線上的時候,我們可以支援 離線訊息 的功能,保證訊息送達客戶端。

    此外,面對Android 5.0 以上的平台,應用程式進入後台就會被殺死,導致用戶收不到App 訊息推播的問題,我們也對現有的方案進行升級,整合了華為和小米廠商頻道,使用雲巴推送可一鍵對幾種廠商的機型推送,保障到達率。

    回覆
    0
  • 取消回覆