2014-01-31 49 views
0

我和我的團隊正在開發帶有推送通知的iOS應用程序。蘋果推送通知中的應用程序靜音

我們有一個Rails後端向iOS應用程序發送推送通知。一切按預期工作。

我們有不同類型的通知(促銷,general_info,新聞),我們在通知有效載荷發送如下:

aps: { 
    alert: body, 
    badge: 1, 
    sound: 'bingbong.aiff' 
}, 
type: type 

但是,我們希望用戶指定他想要接收哪些類型的通知和其中沒有(與應用程序內設置菜單)。

例如如果用戶取消選擇「促銷」類型,則包含「促銷」類型的通知將被過濾,以便用戶不會收到促銷通知。

此行爲與Whatsapp!-App用於使組靜音的行爲類似。

我們發現這一個另一種解決方案:

Can you mute incoming Push Notifications from the App side [iOS]

但是這隻能如果用戶在應用程序。

是否甚至有可能檢查有效負載,然後決定當應用程序處於後臺/關閉狀態時是否向用戶顯示push-Notification?

在此先感謝!

回答

2

您的應用程序無法在後臺查看推送有效內容,它只在前臺收到該數據。

要做你想要的那種過濾,你幾乎不得不在服務器端限制發送出去的東西。如果您使用的是推送服務提供商,您通常可以簡單地取消訂閱您的某個類別,並且推送到該類別不會發送給該用戶。

0

不能讀取的載荷時通知來了,你可以在didRecieve方法讀它,

所以,對於創建一些web服務調用的應用程序設置菜單時用戶變化的基礎上,一些錶店,所以當下一次您發送基於該表的推送過濾器時。