AppboyKit (também conhecido como o SDK Objective-C) não é mais suportado e foi substituído pelo Swift SDK. Não receberá mais novos recursos, correções de bugs, atualizações de segurança ou suporte técnico—no entanto, o envio de mensagens e a análise de dados continuarão a funcionar normalmente. Para saber mais, veja Apresentando o Novo SDK Braze Swift.
Definir IDs de usuário para iOS
Os IDs de usuário devem ser definidos para cada um de seus usuários. Esses devem ser imutáveis e acessíveis quando um usuário abre o app. Nomear seus IDs de usuário corretamente desde o início é uma das etapas mais cruciais na configuração de IDs de usuário. Sugerimos enfaticamente o uso do padrão Braze de UUIDs e GUIDs (detalhado abaixo). Também recomendamos enfaticamente que você forneça esse identificador, pois isso lhe permitirá:
- Acompanhe seus usuários em dispositivos e plataformas, melhorando a qualidade de seus dados comportamentais e demográficos.
- Importe dados de seus usuários usando nossa API de dados de usuários.
- Direcione-se a usuários específicos com nossa API de envio de mensagens, tanto para mensagens gerais quanto transacionais.
Se tal identificador não estiver disponível, a Braze atribuirá um identificador único aos seus usuários, mas você não terá as capacidades listadas para IDs de usuário. Você deve evitar definir IDs de usuário para usuários para os quais você não possui um identificador exclusivo que esteja vinculado a eles como indivíduos. Passar um identificador de dispositivo não oferece nenhum benefício em comparação com o rastreamento anônimo automático de usuários que o Braze oferece por padrão.
Se quiser incluir um valor identificável como ID de usuário, para aumentar a segurança, é altamente recomendável adicionar o recurso de autenticação do SDK para evitar a simulação do usuário.
Sugestão de convenção de nomenclatura de ID de usuário
No Braze, recomendamos enfaticamente nomear os IDs de usuário, também chamados de IDs externos, em um formato UUIDs e GUIDs. UUIDs e GUIDs são identificadores universalmente exclusivos que consistem em um número de 128 bits usado para identificar informações em sistemas de computador. Isso significa que esses UUIDs são longos, aleatórios e bem distribuídos. Se você escolher um método diferente para nomear seus IDs de usuário, eles também deverão ser longos, aleatórios e bem distribuídos. Também é importante notar que as IDs de usuário diferenciam maiúsculas de minúsculas. Por exemplo, “Abcdef” é um usuário diferente de “abcdef”.
Se os IDs de usuário incluírem nomes, e-mails, carimbos de data e hora ou incrementos, sugerimos usar um novo método de nomenclatura mais seguro para que os IDs de usuário não sejam tão fáceis de adivinhar ou simular. Se optar por incluir isso em seus IDs de usuário, recomendamos adicionar nosso recurso de autenticação do SDK para evitar a simulação do usuário.
Fornecer essas informações a terceiros pode permitir que pessoas de fora da sua organização obtenham informações sobre como seus IDs de usuário estão estruturados, abrindo sua organização para atualizações potencialmente maliciosas ou remoção de informações. A escolha da convenção de nomenclatura correta desde o início é uma das etapas mais importantes na configuração de IDs de usuário. No entanto, é possível fazer uma migração usando nosso endpoint de migração de ID externo.
| Nomeação de ID de usuário | |
|---|---|
| Recomendado | Não recomendado |
| 123e4567-e89b-12d3-a456-836199333115 | JonDoe829525552 |
| 8c0b3728-7fa7-4c68-a32e-12de1d3ed2d5 | [email protected] |
| f0a9b506-3c5b-4d86-b16a-94fc4fc3f7b0 | CompanyName-1-2-19 |
| 2d9e96a1-8f15-4eaf-bf7b-eb8c34e25962 | jon-doe-1-2-19 |
Atribuindo uma ID de usuário
A seguinte chamada deve ser feita assim que o usuário for identificado (geralmente após o registro) para definir o ID do usuário:
1
[[Appboy sharedInstance] changeUser:@"YOUR_USER_ID_STRING"];
1
Appboy.sharedInstance()?.changeUser("YOUR_USER_ID")
Não chame changeUser() quando um usuário fizer logout. changeUser() só deve ser chamado quando o usuário fizer o registro no aplicativo. A definição de changeUser() para um valor padrão estático associará TODAS as atividades do usuário a esse “usuário” padrão até que o usuário se registre novamente.
Certifique-se de chamar esse método na thread principal do aplicativo. Chamar o método de forma assíncrona pode levar a um comportamento indefinido.
Além disso, recomendamos não alterar o ID do usuário quando um usuário se desconecta, pois isso impede o direcionamento de campanhas de reengajamento para o usuário conectado anteriormente. Se você antecipar vários usuários no mesmo dispositivo, mas quiser direcionar apenas um deles quando o aplicativo estiver em um estado de logout, recomendamos acompanhar separadamente o ID de usuário que deseja direcionar enquanto estiver desconectado e voltar para esse ID de usuário como parte do processo de logout do app.
Práticas recomendadas e notas para integração de ID do usuário
Preservação automática do histórico do usuário anônimo
| Contexto de identificação | Comportamento de preservação |
|---|---|
| O usuário não foi identificado anteriormente | O histórico anônimo é mesclado com o perfil do usuário após a identificação. |
| O usuário foi previamente identificado no app ou via API | O histórico anônimo não é mesclado com o perfil do usuário após a identificação. |
Consulte Perfis de usuários identificados para saber mais sobre o que ocorre quando você identifica usuários anônimos.
Notas adicionais e práticas recomendadas
Observe o seguinte:
- Se o seu app for usado por várias pessoas, é possível atribuir a cada usuário um identificador exclusivo para rastreá-los.
- Após a definição de um ID de usuário, não é possível reverter esse usuário para um perfil anônimo.
- Não altere o ID do usuário quando um usuário fizer o registro, pois isso pode separar o dispositivo do perfil do usuário.
- Como resultado, não será possível direcionar mensagens de reengajamento para o usuário que se desconectou anteriormente. Se você prevê múltiplos usuários no mesmo dispositivo, mas deseja direcionar apenas um deles quando seu aplicativo estiver desconectado, recomendamos manter separadamente o rastreamento do ID do usuário que você deseja direcionar enquanto estiver desconectado e retornar a esse ID de usuário como parte do processo de logout do seu aplicativo. Por padrão, somente o último usuário registrado receberá notificações por push do seu app.
- Mudar de um usuário identificado para outro é uma operação relativamente cara.
- Quando você solicita a troca de usuário, a sessão atual do usuário anterior é automaticamente encerrada e uma nova sessão é iniciada. O Braze fará automaticamente uma solicitação de atualização de dados para mensagens no app e outros recursos do Braze para o novo usuário.
Se houver aceitação de usar um hash de um identificador exclusivo como ID de usuário, certifique-se de normalizar a entrada da função de hash. Por exemplo, se for usar um hash de um endereço de e-mail, confirme que está removendo os espaços em branco à esquerda e à direita da entrada e levando em conta a localização.
Aliasing de usuários
Um alias de usuário serve como um identificador de usuário exclusivo alternativo. É possível usar aliases para identificar usuários em dimensões diferentes do seu ID de usuário principal:
- Defina um identificador consistente para análise de dados que seguirá um determinado usuário antes e depois de ele ter feito o registro em um app ou site móvel.
- Adicione os identificadores usados por um fornecedor terceirizado aos seus usuários do Braze para reconciliar mais facilmente seus dados externamente.
Cada alias consiste em duas partes: um nome para o próprio identificador e um rótulo que indica o tipo de alias. Os usuários podem ter vários aliases com rótulos diferentes, mas apenas um nome por rótulo.
Para saber mais sobre a configuração de aliases de usuário em relação a um perfil de usuário, consulte Aliases de usuário.
1
[[Appboy sharedInstance].user addAlias:ALIAS_NAME withLabel:ALIAS_LABEL];
1
Appboy.sharedInstance()?.user.addAlias(ALIAS_NAME, ALIAS_LABEL)
Editar esta página no GitHub