Gerenciando o consentimento do usuário
A Pushwoosh apoia a conformidade com regulamentos de privacidade (por exemplo, GDPR, CCPA), permitindo que os desenvolvedores controlem quando o SDK inicia a comunicação com os servidores da Pushwoosh. Isso permite garantir que nenhum dado seja coletado antes que o usuário dê seu consentimento explícito.
Visão Geral
Anchor link toPor padrão, o SDK da Pushwoosh inicia a comunicação e a coleta de dados do dispositivo imediatamente após a inicialização. No entanto, você pode alterar esse comportamento para que nenhuma comunicação ocorra até que o usuário dê seu consentimento.
Com esta configuração:
- Se o usuário der o consentimento, o SDK é inicializado e começa a coletar dados.
- Se o usuário não der o consentimento, o SDK permanece inativo e não coleta nenhum dado.
- Se o usuário posteriormente retirar o consentimento, o SDK interrompe todas as atividades e se desconecta dos servidores.
A Pushwoosh fornece mecanismos para gerenciar esse fluxo no iOS, Android e Unity.
Desativar a comunicação do SDK com o servidor na inicialização
Anchor link toPor padrão, a comunicação com o SDK está ativada. Para desativar toda a comunicação com os servidores da Pushwoosh até que o consentimento seja explicitamente concedido pelo usuário, adicione a seguinte chave ao seu Info.plist:
<key>Pushwoosh_ALLOW_SERVER_COMMUNICATION</key><false/>Verificar o status da comunicação
Anchor link toUse os seguintes métodos para determinar se a comunicação está atualmente permitida:
import SwiftUIimport PushwooshFramework
var serverCommunicationAllowed = PWCoreServerCommunicationManager.sharedInstance.isServerCommunicationAllowedprint("isServerCommunicationAllowed: ", serverCommunicationAllowed)import PushwooshFramework
var serverCommunicationAllowed = PWCoreServerCommunicationManager.sharedInstance.isServerCommunicationAllowedprint("isServerCommunicationAllowed: ", serverCommunicationAllowed)#import <PushwooshFramework/PushwooshFramework.h>
BOOL serverCommunicationAllowed = [PWCoreServerCommunicationManager sharedInstance].isServerCommunicationAllowed;NSLog(@"isServerCommunicationAllowed: %d", serverCommunicationAllowed);Ativar a comunicação do SDK após o consentimento
Anchor link toUma vez que o usuário tenha concedido o consentimento, ative a comunicação da seguinte forma:
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().startServerCommunication()import PushwooshFramework
Pushwoosh.sharedInstance().startServerCommunication()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] startServerCommunication];Registrar para notificações push
Anchor link toUma vez que a comunicação esteja ativada, registre explicitamente para notificações push:
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().registerForPushNotifications()import PushwooshFramework
Pushwoosh.sharedInstance().registerForPushNotifications()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] registerForPushNotifications];Desativar a comunicação
Anchor link toPara interromper a comunicação com os servidores da Pushwoosh (por exemplo, se o usuário revogar o consentimento):
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().stopServerCommunication()import PushwooshFramework
Pushwoosh.sharedInstance().stopServerCommunication()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] stopServerCommunication];Android
Anchor link toDesativar a comunicação do SDK com o servidor na inicialização
Anchor link toPor padrão, a comunicação está ativada. Para impedir que quaisquer dados sejam enviados para os servidores da Pushwoosh até que o consentimento do usuário seja obtido, adicione o seguinte ao seu AndroidManifest.xml:
<meta-data android:name="com.pushwoosh.allow_server_communication" android:value="false" />Verificar o status da comunicação
Anchor link toUse os seguintes métodos para determinar se a comunicação com o servidor está atualmente permitida:
import com.pushwoosh.Pushwoosh;
boolean isCommunicationEnabled = Pushwoosh.getInstance().isServerCommunicationAllowed();Log.d("Pushwoosh", "Communication enabled = " + isCommunicationEnabled);import com.pushwoosh.Pushwoosh
val isCommunicationEnabled = Pushwoosh.getInstance().isServerCommunicationAllowed()Log.d("Pushwoosh", "Communication enabled = $isCommunicationEnabled")Ativar a comunicação do SDK após o consentimento
Anchor link toUma vez que o usuário tenha concedido o consentimento, ative a comunicação da seguinte forma:
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().startServerCommunication();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().startServerCommunication()Registrar para notificações push
Anchor link toApós a comunicação ser ativada, registre explicitamente para notificações push:
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().registerForPushNotifications();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().registerForPushNotifications()Desativar a comunicação
Anchor link toPara interromper a comunicação com os servidores da Pushwoosh (por exemplo, se o usuário revogar o consentimento):
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().stopServerCommunication();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().stopServerCommunication()Unity
Anchor link toDesativar a comunicação do SDK com o servidor na inicialização
Anchor link toPor padrão, a comunicação com o SDK está ativada. Para desativar toda a comunicação com os servidores da Pushwoosh até que o consentimento seja explicitamente concedido pelo usuário, aplique configurações específicas da plataforma:
Android
Adicione o seguinte ao seu projeto Unity em AndroidManifest.xml:
<meta-data android:name="com.pushwoosh.allow_server_communication" android:value="false" />iOS
Modifique o Info.plist:
<key>Pushwoosh_ALLOW_SERVER_COMMUNICATION</key><false/>Nota: Você deve ativar a comunicação antes de chamar RegisterForPushNotifications.
Verificar o status da comunicação
Anchor link toUse o seguinte método para verificar se a comunicação com o servidor está atualmente permitida:
bool enabled = Pushwoosh.Instance.IsCommunicationEnabled();Ativar a comunicação do SDK após o consentimento
Anchor link toPara ativar a comunicação após o consentimento:
Pushwoosh.Instance.SetCommunicationEnabled(true);Registrar para notificações push
Anchor link toUma vez que a comunicação esteja ativada, você pode registrar o dispositivo para notificações push:
Pushwoosh.Instance.RegisterForPushNotifications();Desativar a comunicação
Anchor link toPara interromper a comunicação com os servidores da Pushwoosh (por exemplo, se o usuário revogar o consentimento):
Pushwoosh.Instance.SetCommunicationEnabled(false);Web Push
Anchor link toDesativar a inscrição automática na inicialização
Anchor link toPor padrão, o SDK da Pushwoosh exibe a solicitação de inscrição nativa assim que é inicializado. Para evitar que o SDK exiba automaticamente a solicitação de inscrição na inicialização, defina o parâmetro communicationEnabled como false na chamada init.
<script type="text/javascript" src="//cdn.pushwoosh.com/webpush/v3/pushwoosh-web-notifications.js" async></script><script type="text/javascript"> var Pushwoosh = Pushwoosh || []; Pushwoosh.push(['init', { // other initialization parameters... communicationEnabled: false, // Disable communication to prevent automatic subscription prompts }]);</script>Ativar a inscrição após o consentimento
Anchor link toDepois de desativar a inscrição automática, você pode solicitar que o usuário se inscreva a qualquer momento. Quando o usuário concorda em receber notificações push (por exemplo, clicando em um botão “Inscrever-se” na sua interface personalizada), você pode ativar a comunicação chamando o método setCommunicationEnabled. Chamar Pushwoosh.setCommunicationEnabled(true) ativa a comunicação com os serviços da Pushwoosh. Uma vez ativado, o SDK prosseguirá para exibir a solicitação de permissão nativa do navegador.
Pushwoosh.setCommunicationEnabled(true) .then(() => { console.log('User is subscribed to push notifications.'); }) .catch((error) => { console.error('Error subscribing user:', error); });Desativar a comunicação
Anchor link toPara interromper a comunicação com os serviços da Pushwoosh (por exemplo, se o usuário revogar o consentimento), chame setCommunicationEnabled com false.
Pushwoosh.setCommunicationEnabled(false);