Skip to content

Privacy (Subscribe / Unsubscribe)

setPrivacy is the master opt-out for a user: unsubscribed users receive no campaigns or messages from Pulsate at all — no push, no in-app, no feed campaigns.

Note the difference from the channel-specific switches:

Switch Scope
setPrivacy(UNSUBSCRIBE) All Pulsate communication
setPushNotificationEnabled(false) Pushes only
setInAppNotificationEnabled(false) In-apps only
val pulsateManager = PulsateFactory.getInstance()
pulsateManager.setPrivacy(PulsatePrivacy.SUBSCRIBE) // opt in (default)
pulsateManager.setPrivacy(PulsatePrivacy.UNSUBSCRIBE) // opt out of everything

Unlike other user-data calls, privacy syncs to Pulsate in real time.

Callback style:

pulsateManager.getPrivacy(object : IPulsateValueListener<PulsatePrivacy> {
override fun onSuccess(value: PulsatePrivacy) { /* SUBSCRIBE or UNSUBSCRIBE */ }
override fun onError(e: Throwable) { }
})

Unsubscribed users are still tracked and segmented — geofence enters/exits are recorded and segment data keeps updating. They simply receive nothing. To stop location tracking too, see Location Updates; to detach the device entirely, use logoutCurrentAlias.