Práticas de ativação e desativação do SDK

Documento

Conformidade de privacidade com Singular SDK

Guia abrangente para implementar soluções de rastreamento em conformidade com a privacidade usando os métodos opt-in e opt-out do Singular SDK para GDPR, CCPA, COPPA e outros regulamentos de privacidade.

Isenção de responsabilidade legal: as diretrizes nesta página não constituem aconselhamento jurídico. Consulte a sua equipa jurídica sobre a conformidade com as leis de privacidade aplicáveis à sua jurisdição e operações comerciais.

A Singular fornece ferramentas abrangentes de conformidade com a privacidade, permitindo que as organizações utilizem os recursos da plataforma, mantendo a conformidade com os regulamentos de privacidade em evolução.

Público-alvo Desenvolvedores, equipes jurídicas/conformidade, gerentes de produto
Regulamentos aplicáveis GDPR, CCPA, COPPA e leis de privacidade específicas da jurisdição

Visão geral da regulamentação de privacidade

Estruturas de conformidade suportadas

A Singular Platform suporta a conformidade com os principais regulamentos de privacidade através de mecanismos configuráveis de gestão de consentimento e controlo de rastreio.

Regulamentação Escopo Requisito-chave Método recomendado
GDPR Proteção de dados e privacidade da União Europeia Consentimento do utilizador antes da recolha de dados Opção de inclusão ou exclusão
CCPA Direitos de privacidade do consumidor na Califórnia Direito de não participar na venda de dados Opt-Out
COPPA Proteção da privacidade em linha das crianças (com menos de 13 anos) Autorização dos pais antes da recolha de dados de crianças ou implementação de uma porta etária Opt-In + Age Gate
Leis regionais Regulamentos de privacidade específicos de cada jurisdição Varia consoante a jurisdição Consultar aconselhamento jurídico

Regulamentos em evolução: As leis de privacidade evoluem continuamente com novas promulgações e interpretações. A plataforma Singular fornece ferramentas flexíveis que se adaptam às mudanças nos requisitos de conformidade, mantendo a funcionalidade de rastreamento completa quando permitido.


Métodos de conformidade

Singular suporta dois métodos primários de conformidade: Opt-In (consentimento em primeiro lugar) e Opt-Out (rastreamento em primeiro lugar com controle do usuário), cada um abordando diferentes requisitos regulamentares e modelos de consentimento do usuário.

Seleção do método

Escolhendo o método de conformidade apropriado

Selecionar o método de conformidade com base em regulamentos aplicáveis, dados demográficos do utilizador e orientação de aconselhamento jurídico.

Método Quando é necessário Resumo da implementação
Opção de inclusão
  • Conformidade com o GDPR na UE
  • Conformidade com a COPPA para aplicações para crianças
  • Jurisdições que exigem consentimento explícito
Atrasar a inicialização do SDK até que o utilizador conceda o consentimento. Nenhum dado é transmitido sem permissão explícita.
Opt-Out
  • Conformidade com a CCPA na Califórnia
  • Jurisdições que permitem o rastreio com opção de auto-exclusão
  • Aplicações dirigidas a públicos adultos com opções de consentimento
Inicializar o SDK normalmente, mas fornecer um mecanismo para os utilizadores interromperem o rastreio em qualquer altura.
Híbrido
  • Aplicações que operam em várias jurisdições
  • Demografia mista do público
  • Requisitos regulamentares variados
Implementar o Opt-In para utilizadores que requerem consentimento explícito e, em seguida, fornecer um mecanismo de Opt-Out para controlo contínuo.

Melhores práticas: Muitas organizações implementam uma abordagem híbrida utilizando a opção Opt-In para o consentimento inicial, seguida da opção Opt-Out nas definições da aplicação, proporcionando a máxima flexibilidade e cobertura de conformidade.


Método Opt-In

Abordagem de consentimento inicial que atrasa a inicialização do SDK até que o utilizador conceda explicitamente permissão para a recolha e o rastreio de dados.

Implementação da opção Opt-In

Estratégia de implementação

O método Opt-In requer a apresentação da interface de consentimento antes de qualquer inicialização do SDK ou transmissão de dados para a plataforma Singular.

Requisito Crítico: Não inicializar o SDK Singular ou coletar quaisquer dados até que o usuário conceda explicitamente seu consentimento. A inicialização do SDK deve ser condicional com base no status do consentimento.


Fluxo de trabalho de implementação

Diagrama de Fluxo de Opt-In

Opt-In Workflow Diagram


Implementação passo a passo

1

Verificar o estado do consentimento

No lançamento da aplicação, verifique a preferência de consentimento armazenada antes de qualquer operação do SDK.

Considerações sobre a implementação:

  • Armazenar a preferência de consentimento no armazenamento persistente (SharedPreferences, UserDefaults, etc.)
  • Verificar o estado de consentimento antes da inicialização de AppDelegate ou MainActivity
  • Predefinição para sem consentimento (não assumir permissão)
SWIFTKOTLINREACT NATIVE
// Check consent status from storage
func hasUserConsent() -> Bool {
    return UserDefaults.standard.bool(forKey: "singular_tracking_consent")
}

func application(_ application: UIApplication, 
                 didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    
    // Only initialize if consent granted
    if hasUserConsent() {
        initializeSingular()
    } else {
        // Show consent dialog
        presentConsentDialog()
    }
    
    return true
}
2

Apresentar interface de consentimento

Se não for armazenada nenhuma preferência de consentimento ou se o consentimento não for concedido, apresentar uma interface de consentimento clara que explique as práticas de recolha de dados.

Requisitos da interface de consentimento:

  • Linguagem clara: Linguagem simples que explique quais os dados recolhidos e porquê
  • Ação explícita: O utilizador tem de tomar uma ação afirmativa (não deve marcar previamente as caixas)
  • Opções granulares: Consentimento separado para diferentes tipos de dados, se exigido por regulamento
  • Recusa fácil: Recusar o consentimento deve ser tão fácil como concedê-lo
  • Ligação à política de privacidade: Ligação para a política de privacidade completa para obter informações pormenorizadas

Requisitos do GDPR: Nos termos do RGPD, o consentimento deve ser dado livremente, específico, informado e inequívoco. As caixas pré-marcadas ou o consentimento implícito não cumprem os requisitos.

3

Tratar a concessão de consentimento

Quando o utilizador concede o consentimento, armazena a preferência e inicializa o Singular SDK com a configuração normal.

SWIFTKOTLINREACT NATIVE
func userGrantedConsent() {
    // Store consent preference
    UserDefaults.standard.set(true, forKey: "singular_tracking_consent")
    UserDefaults.standard.synchronize()
    
    // Initialize Singular SDK
    initializeSingular()
}

func initializeSingular() {
    let config = SingularConfig(apiKey: "SDK_KEY", andSecret: "SDK_SECRET")
    
    // Configure as needed
    config.launchOptions = launchOptions
    
    // Initialize SDK
    Singular.start(config)
}
4

Tratar recusa de consentimento

Quando o utilizador recusa o consentimento, armazena a preferência e não inicializa o SDK. A aplicação continua a funcionar sem rastreio.

SWIFTKOTLINREACT NATIVE
func userDeclinedConsent() {
    // Store declined preference
    UserDefaults.standard.set(false, forKey: "singular_tracking_consent")
    UserDefaults.standard.synchronize()
    
    // Do NOT initialize Singular SDK
    // App continues without tracking
    
    // Optional: Log declined consent for internal analytics
    print("User declined tracking consent")
}
5

Fornecer revogação do consentimento

Mesmo depois de conceder o consentimento através do método Opt-In, os utilizadores devem ter a opção de revogar o consentimento mais tarde. Implemente o mecanismo Opt-Out nas definições da aplicação.

Requisito regulamentar: A maioria dos regulamentos de privacidade exige a possibilidade de retirar o consentimento tão facilmente como a sua concessão. Implementar o método Opt-Out nas definições para a gestão contínua do consentimento.

Consulte a secção Método de exclusão para obter detalhes sobre a implementação da revogação.


Conformidade com a COPPA

Proteção da privacidade das crianças

As aplicações direcionadas para crianças ou públicos mistos requerem uma consideração especial ao abrigo da COPPA e de regulamentos de privacidade para crianças semelhantes.

Implementação do Age Gate
#

Requisito de verificação da idade

As aplicações com audiências mistas (crianças e adultos) devem implementar a porta de idadeantes de qualquer recolha de dados de crianças.


Fluxo do Age Gate

  1. Pedido de idade: Solicitar a idade do utilizador ou a data de nascimento no lançamento da aplicação antes de qualquer rastreio
  2. Determinar o público: Identificar se o utilizador é uma criança (com menos de 13 anos nos EUA) ou um adulto
  3. Utilizadores crianças: Para crianças, obter consentimento verificável dos pais antes de inicializar o SDK (tratar como Opt-In com requisito de consentimento dos pais)
  4. Utilizadores adultos: Para adultos, proceder com o fluxo normal de aceitação ou exclusão com base na jurisdição

Métodos de consentimento parental

A COPPA aceita vários métodos de consentimento parental verificável:

  • Os pais fornecem informações sobre o cartão de crédito
  • Formulário de consentimento assinado por fax, correio eletrónico ou correio postal
  • Os pais telefonam para um número gratuito
  • Pais em videoconferência com o pessoal
  • Os pais fornecem um documento de identificação emitido pelo governo, verificado na base de dados
  • Responder a perguntas de desafio baseadas no conhecimento

Consultar um consultor jurídico sobre o método de consentimento parental adequado para a sua aplicação.

Aplicações dirigidas exclusivamente a crianças
#

SDK especializado para aplicações para crianças

Para aplicações dirigidas exclusivamente a crianças (não a públicos mistos), a Singular fornece SDKs especializados para aplicações para crianças que cumprem os requisitos COPPA ao não capturar identificadores de dispositivos.

SDKs de aplicativos para crianças: Consulte as Perguntas Frequentes sobre SDKspara Crianças e entre em contato com a equipe de sua conta para obter orientação sobre como utilizar a Singular de maneira compatível com a COPPA para aplicativos exclusivos para crianças.


Principais diferenças

Os SDKs do Kids Apps diferem dos SDKs padrão:

  • Sem recolha de identificadores de dispositivos (IDFA, GAID, etc.)
  • Capacidades de atribuição limitadas (apenas agregadas)
  • Sem rastreio entre dispositivos
  • Em conformidade com as políticas de aplicações para crianças da App Store e da Play Store

Método de auto-exclusão

Abordagem de rastreio em primeiro lugar, inicializando o SDK normalmente, mas fornecendo ao utilizador o controlo para interromper o rastreio em qualquer altura através das definições ou preferências da aplicação.

Implementação da opção Opt-Out

Estratégia de implementação

O método Opt-Out permite a inicialização do SDK no lançamento da aplicação, fornecendo ao mesmo tempo um mecanismo para os utilizadores desactivarem o rastreio, se desejado, normalmente através da interface de definições.


Fluxo de trabalho de implementação

Diagrama de fluxo de Opt-Out

Opt-Out Workflow Diagram


Implementação passo a passo

1

Inicialização do SDK no lançamento da aplicação

Inicialize o Singular SDK normalmente durante o lançamento do aplicativo, habilitando o rastreamento por padrão.

SWIFTKOTLINREACT NATIVE
func application(_ application: UIApplication, 
                 didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    
    // Check if user previously opted out
    let hasOptedOut = UserDefaults.standard.bool(forKey: "singular_opted_out")
    
    // Initialize Singular SDK
    let config = SingularConfig(apiKey: "SDK_KEY", andSecret: "SDK_SECRET")
    config.launchOptions = launchOptions
    Singular.start(config)
    
    // If previously opted out, stop tracking immediately
    if hasOptedOut {
        Singular.stopAllTracking()
    }
    
    return true
}
2

Fornecer mecanismo de exclusão

Criar um mecanismo claro e de fácil acesso para que os utilizadores possam optar por não aceitar o rastreio, normalmente nas definições da aplicação ou nas preferências de privacidade.

Requisitos da interface de exclusão:

  • Fácil acesso: Colocar numa localização intuitiva (Definições → Privacidade ou semelhante)
  • Descrição clara: Explicar o significado da opção de exclusão e o impacto na funcionalidade da aplicação
  • Alternância simples: Botão ou alternância de um passo para desativar o rastreio
  • Efeito imediato: A desativação tem efeito imediato sem necessidade de reiniciar a aplicação
  • Reversível: O utilizador pode optar por voltar a participar com a mesma facilidade

Requisito CCPA: A Lei de Privacidade do Consumidor da Califórnia exige que a hiperligação "Não vender as minhas informações pessoais" seja apresentada de forma proeminente. O mecanismo de auto-exclusão deve ser claramente identificado e facilmente acessível.

3

Lidar com a ação de auto-exclusão

Quando o utilizador optar por sair, chame Singular.stopAllTracking()para cessar imediatamente toda a transmissão de dados para a Singular.

SWIFTKOTLINREACT NATIVE
func userOptedOut() {
    // Stop all tracking immediately
    Singular.stopAllTracking()
    
    // Store opt-out preference
    UserDefaults.standard.set(true, forKey: "singular_opted_out")
    UserDefaults.standard.synchronize()
    
    // Optional: Show confirmation to user
    showAlert(title: "Tracking Disabled", 
              message: "Your data will no longer be tracked.")
}

stopAllTracking() Comportamento

Quando stopAllTracking() é chamado:

  • Todo o rastreamento de eventos cessa imediatamente
  • O rastreamento de sessão é interrompido
  • Nenhum dado é enviado aos servidores da Singular
  • Rastreio de atribuição desativado
  • A definição persiste em todas as sessões da aplicação até ser revertida
4

Tratar a ação de aceitação

Quando o utilizador decidir optar por voltar a participar, chame Singular.resumeAllTracking()para retomar as operações normais de rastreio.

SWIFTKOTLINREACT NATIVE
func userOptedIn() {
    // Resume all tracking
    Singular.resumeAllTracking()
    
    // Update opt-out preference
    UserDefaults.standard.set(false, forKey: "singular_opted_out")
    UserDefaults.standard.synchronize()
    
    // Optional: Show confirmation to user
    showAlert(title: "Tracking Enabled", 
              message: "Your app activity will now be tracked.")
}

resumeAllTracking() Comportamento

Quando resumeAllTracking() é chamado:

  • O seguimento de eventos é retomado imediatamente
  • O rastreio de sessões é reiniciado
  • Transmissão de dados para servidores Singular activada
  • Rastreio de atribuição reativado
  • Nova sessão criada para marcar o reinício

Melhores práticas de implementação

Considerações sobre o opt-out

Colocação de configurações
#

Locais recomendados

Coloque o controlo de exclusão em locais intuitivos e de fácil acesso:

  • Definições de privacidade: Secção dedicada à privacidade ou às definições de dados
  • Definições gerais: Menu principal de definições com uma subsecção de privacidade clara
  • Definições de conta: Área de preferências da conta de utilizador
  • Primeira experiência: Mencionar a disponibilidade de auto-exclusão durante a integração
Comunicação clara
#

Requisitos de transparência

Comunicar claramente o significado da auto-exclusão e qualquer impacto na funcionalidade:

  • Descrição da recolha de dados: Explicar quais os dados recolhidos e para que fins
  • Efeitos da auto-exclusão: Descrever o que acontece quando o utilizador opta por não participar
  • Impacto na funcionalidade: Divulgar se a exclusão afecta as funcionalidades da aplicação
  • Reversibilidade: Confirmar que os utilizadores podem optar por voltar a participar em qualquer altura
Persistência das preferências
#

Considerações sobre armazenamento

Armazenar a preferência de exclusão de forma fiável em todas as sessões da aplicação:

  • Armazenamento persistente: Utilizar SharedPreferences (Android) ou UserDefaults (iOS)
  • Verificar no lançamento: Verificar o estado da auto-exclusão em cada lançamento de aplicação
  • Respeitar a preferência: Honrar o opt-out mesmo se o SDK for reinicializado
  • Armazenamento de backup: Considere a possibilidade de fazer backup no servidor para obter consistência entre dispositivos

Considerações adicionais

A conformidade abrangente com a privacidade requer atenção a vários aspectos além da implementação básica de opt-in/opt-out.

Retenção e eliminação de dados

Gestão de dados do utilizador

Os regulamentos de privacidade exigem frequentemente mecanismos para os utilizadores solicitarem a eliminação ou exportação de dados.

Direitos do titular dos dados: Contacte o Singular Support para obter assistência com pedidos de eliminação de dados do utilizador ou requisitos de exportação de dados ao abrigo do GDPR, CCPA ou outros regulamentos de privacidade.


Política de privacidade

Divulgações obrigatórias

Manter uma política de privacidade abrangente e acessível que divulgue as práticas de recolha, utilização e partilha de dados.

Requisitos da política de privacidade:

  • Dados recolhidos: Enumerar todos os tipos de dados recolhidos, incluindo identificadores de dispositivos, eventos e informações do utilizador
  • Objetivo da utilização: Explicar como são utilizados os dados (análise, atribuição, publicidade, etc.)
  • Partilha com terceiros: Divulgar a partilha de dados com a Singular e outros terceiros
  • Direitos do utilizador: Explicar os direitos do utilizador relativamente ao acesso aos dados, eliminação e exclusão
  • Informações de contacto: Fornecer um método de contacto para questões e pedidos de privacidade

Conformidade com várias jurisdições

Requisitos de privacidade globais

As aplicações que servem várias jurisdições têm de estar em conformidade com vários regulamentos de privacidade em simultâneo.

Abordagem Descrição
Baseada em geolocalização Detetar a localização do utilizador e aplicar controlos de privacidade adequados com base na jurisdição (Opt-In para a UE, Opt-Out para a Califórnia, etc.)
Norma mais elevada Aplicar os requisitos mais rigorosos (normalmente GDPR Opt-In) a nível global, simplificando a conformidade à custa do rastreio imediato
Seleção do utilizador Permitir que os utilizadores especifiquem a jurisdição durante a integração, aplicando controlos de privacidade adequados

Necessidade de aconselhamento jurídico: A conformidade com várias jurisdições é complexa e requer conhecimentos jurídicos. Consulte um consultor de privacidade para determinar a abordagem adequada para a sua empresa.


Testar a implementação da privacidade

Lista de verificação de validação

Validação da implementaçãoda privacidade:

  • SDK não inicializado antes do consentimento concedido (método Opt-In)
  • stopAllTracking() cessa imediatamente a transmissão de dados
  • resumeAllTracking() reinicia com êxito o rastreio
  • A preferência de auto-exclusão persiste em todas as sessões da aplicação
  • A interface de consentimento explica claramente as práticas de dados
  • Mecanismo de auto-exclusão facilmente acessível nas definições
  • Política de privacidade acessível e abrangente
  • Porta de idade implementada para aplicações de audiências mistas (COPPA)
  • A Consola de Testes não mostra eventos quando o opt-out é recusado
  • A Consola de Testes mostra um resumo dos eventos quando a opção é activada

Recursos adicionais

Documentação completa para conformidade de privacidade, implementação de SDK e orientação regulamentar.

Documentação do Singular


Recursos de regulamentação de privacidade


Isenção de responsabilidade legal

Não se trata de aconselhamento jurídico: As informações fornecidas neste guia representam métodos de implementação técnica geralmente aceites, mas não constituem aconselhamento jurídico. Para determinar a interpretação completa das leis de privacidade e a forma como se aplicam ao seu negócio específico, consulte a sua própria equipa jurídica ou de privacidade.

Os regulamentos de privacidade variam consoante a jurisdição e continuam a evoluir. Mantenha uma consulta contínua com o conselho jurídico para garantir a conformidade com as leis aplicáveis.