簡體   English   中英

應用被殺死時接收PubNub推送通知

[英]Receive PubNub Push Notifications when app is killed

我正在使用一個Android應用程序,該應用程序使用PubNub Service作為推送通知的第三方,眾所周知,PubNub在處理Android時會使用FCM。

我已將來自PubNub的推送通知的偵聽器放在應用程序類中:

pubnub.addListener(new SubscribeCallback() {
        @Override
        public void status(PubNub pubnub, PNStatus status) {
            Log.d(TAG, "PubNub status: " + status.getStatusCode());
        }

        @Override
        public void message(PubNub pubnub, PNMessageResult message) {
            Log.d("PubNub", "PubNub Channel Name: " + message.getChannel());
            Log.d("PubNub", "PubNub Message: getMessage " + message.getMessage().toString());

        }

        @Override
        public void presence(PubNub pubnub, PNPresenceEventResult presence) {

        }
    });

當應用程序是前台或后台時,一切工作正常,但問題是當該應用程序被殺死(從正在運行的任務中清除)時,我無法從PubNub接收任何推送通知。

我怎么解決這個問題? 我應該把PubNub監聽器放在其他地方嗎? 或如何通過FirebaseMessagingService類接收它?

將內容放入Application類不會解決您的任何問題。

當您通過滑動手動殺死該應用程序時, Application類中的所有內容都會被明顯破壞。 Pubnub無法繼續接收更新。

Android也可能會在后台將您的應用隨機殺死,您的Application類也會被破壞,並且在其中進行業務邏輯絕對不是一個好主意。

最后,您必須處理打ze模式 ,這會在一定條件下減少您的互聯網連接

考慮到所有這些,如果用例需要,您可以考慮使用服務

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM