SDK do Cordova - Definir um ID de usuário

Definindo um ID de usuário

Envie seu ID de usuário interno para a Singular para permitir o rastreamento entre dispositivos e relatórios de dados no nível do usuário. Esse identificador vincula a atividade do usuário entre sessões e dispositivos para uma análise de atribuição abrangente.

Nota: Se você usar a solução Cross-Device da Singular, você deve coletar o ID do usuário em todas as plataformas usando um fluxo de login ou autenticação.

Requisitos de ID de usuário

Privacidade e práticas recomendadas

Siga estas diretrizes ao implementar o rastreamento de ID de usuário para garantir a conformidade com a privacidade e a medição adequada entre dispositivos.

  • Sem PII: A ID de usuário não deve expor informações de identificação pessoal (PII), tais como endereços de correio eletrónico, nomes de usuário ou números de telefone. Use um valor com hash exclusivo para seus dados primários.
  • Consistência entre plataformas: O valor da ID de usuário deve ser o mesmo identificador interno que capta em todas as plataformas (Web/Mobile/PC/Console/Offline) para uma medição precisa entre dispositivos.
  • Dados de primeira parte: A Singular inclui o ID de usuário em exportações ao nível do usuário, ETL e postbacks de BI interno (se configurado). O ID de usuário é um dado primário e não é compartilhado com terceiros.
  • Persistência: O ID de usuário persiste até ser explicitamente desativado utilizando unsetCustomUserId() ou até o aplicativo ser desinstalado. Fechar ou reiniciar o aplicativo não apaga o ID de usuário.

Descrição geral da implementação

Quando definir o ID de usuário

Utilize setCustomUserId() para definir o identificador de usuário e unsetCustomUserId() para o limpar durante o fim de sessão. Escolha a abordagem de implementação com base no momento em que o ID de usuário fica disponível no seu fluxo de aplicativos.

Melhores práticas: Se vários usuários compartilharem um único dispositivo, implemente um fluxo de logout que chame setCustomUserId() no login e unsetCustomUserId() no logout.

Se você já sabe a ID de usuário quando o aplicativo é aberto (por exemplo, o usuário tem login persistente), configure-a usando withCustomUserId() antes de inicializar o SDK Singular. Isso garante que o Singular receba a ID de usuário da primeira sessão. No entanto, a ID de usuário normalmente não está disponível até que o usuário se registre ou inicie sessão, caso em que deve chamar setCustomUserId() após a conclusão do fluxo de registro ou autenticação.


Métodos do SDK

Definir ID de usuário personalizada

Envie sua ID de usuário interna para a Singular para rastreamento entre dispositivos e relatórios no nível do usuário. Chame este método imediatamente após a autenticação bem-sucedida para garantir que todos os eventos subsequentes sejam associados ao usuário.

JavaScript
// Set the user ID after login or registration
cordova.plugins.SingularCordovaSdk.setCustomUserId('user_123456');

Assinatura do método:

setCustomUserId(customUserId: string): void

Exemplo: Definir ID do usuário após o login

Chame setCustomUserId() imediatamente após o usuário concluir a autenticação com êxito para garantir que todos os eventos subsequentes são associados ao seu ID de usuário.

JavaScript
function handleUserLogin(email, password) {
  // Your authentication logic
  authenticateUser(email, password)
    .then(function(response) {
      if (response.success) {
        // Set the user ID in Singular after successful login
        cordova.plugins.SingularCordovaSdk.setCustomUserId(response.userId);
        
        console.log('User ID set:', response.userId);
        
        // Navigate to home screen
        navigateToHome();
      }
    })
    .catch(function(error) {
      console.error('Login failed:', error);
    });
}

Anular a definição do ID de usuário personalizado

Limpar o ID de usuário quando um usuário termina a sessão para garantir um acompanhamento preciso da sessão em dispositivos com vários usuários. Isto evita que os eventos subsequentes sejam incorretamente atribuídos ao usuário que terminou a sessão.

JavaScript
// Unset the user ID on logout
cordova.plugins.SingularCordovaSdk.unsetCustomUserId();

Assinatura do método:

unsetCustomUserId(): void

Exemplo: Anular a definição do ID de usuário no fim da sessão

Chame unsetCustomUserId() durante o fluxo de logout para limpar o ID do usuário e evitar a atribuição incorreta de eventos subsequentes.

JavaScript
function handleUserLogout() {
  // Clear app data and user session
  clearUserSession()
    .then(function() {
      // Unset the user ID in Singular
      cordova.plugins.SingularCordovaSdk.unsetCustomUserId();
      
      console.log('User ID cleared');
      
      // Navigate to login screen
      navigateToLogin();
    })
    .catch(function(error) {
      console.error('Logout failed:', error);
    });
}

Definir ID de usuário durante a inicialização

Se o ID de usuário estiver disponível quando o aplicativo for iniciado (por exemplo, o usuário já tiver iniciado sessão com uma sessão persistente), configure-o durante a inicialização do SDK utilizando withCustomUserId(). Isto garante que a primeira sessão inclui o ID de usuário.

JavaScript
document.addEventListener('deviceready', initializeApp, false);

function initializeApp() {
  // Check if user is already logged in (e.g., from local storage)
  var userId = localStorage.getItem('user_id');
  
  // Create configuration
  var config = new cordova.plugins.SingularCordovaSdk.SingularConfig(
    'YOUR_SDK_KEY',
    'YOUR_SDK_SECRET'
  );
  
  // If user ID exists, set it during initialization
  if (userId) {
    config.withCustomUserId(userId);
  }
  
  // Initialize SDK
  cordova.plugins.SingularCordovaSdk.init(config);
  console.log('Singular SDK initialized');
}

Assinatura do método de configuração:

withCustomUserId(customUserId: string): SingularConfig

Recomendação: Utilize withCustomUserId()durante a inicialização para aplicativos com sessões de início de sessão persistentes. Para aplicativos em que os usuários têm de iniciar sessão de cada vez, chame setCustomUserId() após a autenticação.