2016-07-24 26 views
2

Ich versuche PubNub Kanäle abmelden, wenn ich von meiner App abgemeldet, wie auf diese WeiseWie kann ich wissen, ob die Abbestellung von Channels in Pubnub erfolgreich ist?

client?.unsubscribeFromAll() 

Mein Problem ist, dass ich nicht sicher sein kann, dass abmelden Kanäle Prozess Erfolg ist oder nicht!

Es gibt keinen Abschluss-Handler für Fehler, Erfolg.

Also meine Frage ist, wie kann ich sicher sein, aus dem Abmelden von Kanälen Prozess?

EDIT

ich Push-Benachrichtigungen in meinem Pubnub Kanal zu senden, so möchte ich, nachdem der Benutzer abgemeldet nie mehr Push-Benachrichtigung zu erhalten, so habe ich beschlossen, um den Kanal zu stornieren, aber es scheint, dass

client?.unsubscribeFromAll() 

funktioniert nicht, weil ich immer noch eine Push-Benachrichtigung erhalte, obwohl ich mich von meiner App abgemeldet habe.

Antwort

3

dies herauszufinden Sie gleichen Rückruf verwenden sollten, die von Delegierten verwendet wird, wie dieser Client-Zustandsänderung zu verfolgen:

Rückrufe bei: Zustandsänderung, die Anwesenheit und Meldung der Ankunft verwendet, weil möglicherweise einige Beobachter möchte darüber Bescheid wissen. Andere Operation in der Regel Kontext-basierten und Completion-Block ist mehr als genug in diesen Fällen.

EDIT
Echtzeit-Kanäle und Push-Benachrichtigung Aktivieren/Deaktivieren - nicht miteinander verbunden sind und, wenn dies ausdrücklich Push-Benachrichtigungen aktiviert wurde sie sollte auch in manuell deaktiviert werden. Die Abmeldung ist nur die Trennung von Echtzeitdatenkanälen.

Benutzen Sie den Code unten alle Push-Benachrichtigungen für bestimmte devicePushToken zu deaktivieren:

client?.removeAllPushNotificationsFromDeviceWithPushToken(devicePushToken, andCompletion: { (status) in 

    if !status.error { /* Handle push notification disable completed successfully. */ } 
    else { /* Handle push notification disable did fail. */ } 
}) 

Mit freundlichen Grüßen,
Sergey

+0

Dank! kann es auch in der Subscribe-Situation hilfreich sein, oder? – Rawan

+0

@Rawan ja, finden Sie 'AbbestellenOperation' Definition im Header und dort finden Sie andere Operationstypen. Es gibt auch 'category'-Eigenschaft in' status'-Objekt und enum für sie in den gleichen Kopfzeilen, wo 'AbbestellenOperation' definiert. –

+0

@monlight, danke sooo Brei, Ich habe meine Frage bearbeitet, so können Sie bitte einen Blick darauf werfen? danke, Rawan. – Rawan