2015-11-17 49 views
0

我正在使用解析作爲後端服務在iOS聊天應用程序上工作。如果用戶阻止其他用戶,如何阻止推送通知?有可能在解析端過濾這個推送通知嗎?如何在解析iOS應用時阻止特定的用戶推送通知?

提前真的很感謝。

+0

請提供有關應用程序結構的更多詳細信息,以便社區提供更多幫助。這是一個非常開放的問題,可以通過多種方式解決。 –

+0

這個用例如何:在messenger應用程序中,用戶通過PFCloud callFunctionInBackgound發送消息對象和推送通知。接收用戶阻止了發件人。這已經刪除了他們的「關係」,但它不會阻止發送通知。 – enlyte

+0

爲了進一步解釋,阻止的用戶名存儲在用戶創建的數組中。 iOS開發人員,不知道如何獲取數組,或比較用戶名以查找是否在JS(Parse Cloudcode)中被阻止。 @JamesParker – enlyte

回答

0

阻止推送通知被髮送給阻止發件人的用戶有幾種不同的方法。這實際上取決於你如何處理用戶的阻塞。

例如,您可以爲每個用戶添加一個blockedUsernames數組。如果你這樣做了,你可以阻止推送通知被首先發送,通過交叉檢查這個被阻止的用戶數組和發送給它的用戶。

// CHECK FOR BLOCKED USERS 

    PFUser *currentUser = [PFUser currentUser]; // user sending push 
    PFUser *sendPushToUser = //user receiving the push 

// Get array of blocked users 
    NSMutableArray *blockedUsersArray = sendPushToUser[@"blockedUsers"]; 

    BOOL blocked = false; 
    for (NSString *username in blockedUsersArray) { 
     if ([username isEqualToString:currentUser.username]) { 
      blocked = true; 
     } 
    } 

    // If the user isn't blocked, send push 
    if (blocked == false) { 

    [PFCloud callFunctionInBackground:@"sendPushToUser" 
    // more cloud code to handle the notification... 

你也可以在分析雲代碼中使用一些JS來阻塞推送通知。

相關問題