2017-03-09 8 views
0

我最近開始使用OneSignal在基於Firebase的iOS項目上發送通知。OneSignal在Swift 3中使用Firebase將自動通知發送到網段的身份驗證

雖然我可以向特定用戶和用戶陣列發送通知,但我無法找到有關如何使用Firebase設置OneSignal身份驗證的文檔,以便我可以通過應用程序自動定位特定的用戶羣。

,我使用,以向用戶發送通知的數組中的代碼(做工精細):

//to remove the current user ("playerID") from receiving notification 
    let indexToDelete = playerIDArray.index(of: playerID) 

    playerIDArray.remove(at: indexToDelete!) 

    var count = 0 

    while count < playerIDArray.count { 

     OneSignal.postNotification(["contents" : ["en" : "\(usersID!) has sent a message"], "include_player_ids" : ["\(playerIDArray[count])"]]) 

     count = count+1 
    } 

然而,當我嘗試將通知發送到段,像這樣:

 OneSignal.postNotification(["contents" : ["en" : "\(usersID!) has sent a message"], "included_segments" : ["All"]]) 

我得到這個錯誤:

2017-03-09 02:35:30.989 MyApp[3658:87978] ERROR: Create notification failed 

我知道,我得到這個錯誤是由於授權問題,所以我想知道是否有人知道如何使用Firebase設置此授權?

非常感謝!

回答

0

您實際上正在收到此錯誤,因爲您無法使用「included_segments」作爲您應用中的定位參數。

您只能使用「include_player_ids」。

文檔瀏覽: https://documentation.onesignal.com/docs/ios-native-sdk#section--postnotification-

如果你想針對用戶的細分,可以從儀表板這樣做: https://documentation.onesignal.com/docs/sending-notifications#section-selecting-users

或從OneSignal REST API: https://documentation.onesignal.com/v3.0/reference#section-send-to-segments