2017-10-19 199 views
0

我使用appcelerator開發新的Android應用程序。我使用ti.cloudpush來使用來自firebase的推送通知,如example;如果應用程序處於後臺,通知將成功發送並顯示在設備的通知欄中,但當應用程序處於前臺或未關閉狀態時,即使發送處理結果爲「成功」,也不會收到通知。Appcelerator關閉應用程序時未收到Android通知

我需要使它像facebook messenger一樣,如果應用程序已關閉,則會顯示在設備屏幕中。我嘗試了其他幾個模塊,例如「ti.goosh」和「nl.vanvianen.android.gcm」,我發現在Android世界中,我應該在應用程序的某個地方編寫「START_STICKY」以強制執行該服務,以便即使應用程序已關閉。

我試圖開發單獨的服務並在tiapp.xml中調用它,但如果應用程序關閉,服務也會被終止。

編輯 有任何SDK工具必須安裝該Appcelerator的需要在構建過程中使用

+0

你確定你是不是在應用程序的關閉狀態下接收PN?因爲如果你在後臺模式下收到它們,那麼你也必須以殺死狀態接收它們。如果您使用ti.cloudpush,則無需編寫任何其他服務代碼。欲瞭解更多信息,你可以分享你的項目環境的細節和一些代碼片段,說明你如何編寫PN代碼? –

+0

在殺人狀態下接收推送沒有任何進展。我一直在很多應用程序中使用ti.cloudpush,沒有任何打嗝。你還可以分享你正在使用什麼樣的GCM或FCM? –

+0

我使用FCM,我創建了一個名爲notification.js的文件並將其保存在app/lib中,我需要這個文件在index.js中並初始化它,這個文件與名爲android的通道一起保存。 –

回答

0

如果Android設備已谷歌Play服務,安裝,不需要任何行動,使推notificatons工作在背景或前景。我正在使用ti.goosh模塊,它的工作非常完美。 我想你發送錯誤數據到設備正確顯示的通知,我要送這樣的數據:

data: { 
    "data": 
     { 
      'title': 'Notification title', 
      'alert': 'Short user notification text, when it is shown as pop up after receiving notification', 
      'big_text': 'Long notification text, when user expanding it', 
      'sound': 'default', //notification sound (here is default to user android settings) 
      'force_show_in_foreground': true, //is notification must be shown when application in foreground 
      'color': '#0dd149' //background color of notification icon 
     } 
} 
相關問題