Artigo de Sean McQuillan e Prateek Tandon, publicado originalmente pelo Android Developers Blog. A tradução foi feita pela Redação iMasters com autorização.
***
O que acontece com o uso e a acessibilidade do app quando as pessoas pegam celulares novos? O feedback que tivemos é que as pessoas querem que os aplicativos funcionem imediatamente ao sair da caixa, assim como nos seus telefones antigos.
Desenvolvedores de aplicativos bem-sucedidos também podem estar acostumados a pensar sobre a ativação do usuário em um modelo emprestado diretamente da web. Na web, as pessoas registram novas contas, fazem login ao encontrar excelentes recursos e depois permanecem logadas quando experimentam valor e voltam repetidamente a usar sua página da web.
A história é a mesma no mobile. As pessoas se inscrevem para criar novas contas, fazem login usando seus ótimos recursos, e então permanecem logadas quando encontram valor e lançam repetidamente seu app. No entanto, há uma grande diferença. Os aplicativos Android geralmente armazenam mais informações em comparação com sua sessão web média. Você normalmente não precisa voltar a inserir sua senha em um aplicativo Android por anos depois da criação da conta, ou seja, até o momento em que você receber um novo telefone.
Obter um novo telefone pode ser um evento raro para muitas pessoas – algumas ficam com o mesmo dispositivo por anos. No entanto, em geral, uma grande proporção de quem usa seu aplicativo receberá um novo telefone anualmente. Temos várias ferramentas para ajudá-lo a manter as pessoas logadas, engajadas e felizes quando utilizarem seu aplicativo em um novo telefone.
Faça backup dos dados do seu app
O backup automático para aplicativos deve ser configurado para cada aplicativo. Esse recurso faz exatamente o que diz: backup automático dos dados do seu app. Então, quando as pessoas recebem um novo telefone, os dados do aplicativo são automaticamente restaurados antes do seu aplicativo rodar.
Para configurar o Auto Backup para o seu app, você precisa configurar as regras de inclusão/exclusão:
AndroidManifest.xml
<application ... android:fullBackupContent="@xml/autobackup">
xml/autobackup.xml
<?xml version="1.0" encoding="utf-8"?> <full-backup-content> <include domain="sharedpref" path="."/> <exclude domain="sharedpref" path="device.xml"/> </full-backup-content>
Ao configurar as regras de inclusão/exclusão, é importante evitar armazenar dados sensíveis de usuários no Auto Backup, embora seja um ótimo lugar para armazenar configurações específicas do usuário e outros conteúdos de aplicativos!
Para implementar o rastreamento do Auto Backup, registre um BackupAgent e ouça a callback onQuotaExceeded(long, long). Se o seu aplicativo exceder o limite de backup de 25MB, essa callback será sua notificação de falha. Em um app bem configurado, isso nunca acontecerá, para que você possa rastreá-lo como um relatório de falha.
Aprenda mais sobre Auto Backup para apps.
Otimize o login
Quando falamos com as pessoas sobre as experiências que elas querem em seus novos telefones, elas são muito claras: querem que seu aplicativo se lembre de quem são, e elas não querem voltar a inserir uma senha. Há várias maneiras de conseguir isso como desenvolvedor:
- Use o Google Sign-In para tornar o login sem atrito. As pessoas podem fazer login com sua conta do Gmail ou qualquer endereço de e-mail. Mais importante ainda, elas não precisam se lembrar de uma senha. Além de melhorar o registro e a ativação, o Google Sign-In ajudará com a retenção, pois permite que os novos telefones se reativem com um único botão, ou mesmo automaticamente. Ainda melhor, você pode usar o Google Sign-In para a mesma experiência de login para seus aplicativos iOS, web e Android. Essa experiência perfeita também está disponível se o seu aplicativo usar Firebase Auth para lidar com o Google Sign-In.
- Torne as coisas mais simples usando Google Smart Lock e Autofill. Esses dois recursos funcionam de mãos dadas para ajudar as pessoas a acessarem suas senhas com segurança. O Autofill foi introduzido no Android O, e se oferecerá para salvar as senhas do usuário do app no armazenamento de dados do Smart Lock ou no seu gerenciador de senhas preferido, automaticamente quando fizerem o login. Para preparar seu aplicativo, configure as dicas do Autofill e exclua os campos que não devem ser preenchidos pelo framework Autofill.
<TextView android:id="@+id/username" android:layout_width="wrap_content" android:layout_height="wrap_content" android:autofillHints="username" /> <TextView android:id="@+id/password" android:layout_width="wrap_content" android:layout_height="wrap_content" android:autofillHints="password" /> <TextView android:id="@+id/captcha" android:layout_width="wrap_content" android:layout_height="wrap_content" android:importantForAutofill="no" />
- Integre a Smart Lock for Passwords API para armazenar senhas com segurança. Ele é compatível com a API 9 e funciona muito bem em dispositivos com versões antigas do Android que não funcionam com o Autofill. Semelhante ao Autofill, a Smart Lock API oferecerá uma caixa de diálogo para salvar as senhas das pessoas depois de logadas. Mas, ainda melhor, ele permite a recuperação programática para o retorno automático ao login do usuário, mesmo em novos dispositivos e no Chrome. Para suportar essa funcionalidade, você precisará incluir algum código em seu aplicativo; confira o Codelab para saber como integrar Smart Lock for Passwords ao seu app. Além disso, não se esqueça de linkar seu aplicativo e site para uma experiência suave no Chrome e no Android com Autofill e Smart Lock.
- Considere usar a Account Transfer API para que seu aplicativo possa transferir credenciais de um telefone antigo para um novo. Ele faz isso usando um bluetooth/cabo criptografado, e você pode transferir dados de telefones que funcionam com a API 14 ou superior. A transferência de conta acontece quando o usuário do seu aplicativo está configurando seu novo telefone pela primeira vez, embora seu app não precise ser instalado a partir da Google Play Store. Quando o seu aplicativo for reinstalado na Google Play, as credenciais estarão disponíveis para o seu app na primeira ativação. Veja mais boas práticas para começar com a Account Transfer API e leia o guia da API para transferência de contas.
Codelabs
Se ainda não o fez, experimente o Auto Backup para Android Codelab e o SmartLock Codelab.
Melhorar a retenção no Android para muitas pessoas envolverá tentar superar o atrito de switches do dispositivo. Com uma caixa de ferramentas rica à sua disposição para transferir configurações com Auto Backup e para melhorar a experiência de login com Google Sign-In, Smart Lock for Passwords, Autofill, e Account Transfer API, você tem a oportunidade de oferecer uma excelente história de usuário: o seu app funciona nos novos telefones das pessoas, como fez nos seus telefones antigos.
***
Este artigo é do Android Developers Blog. Ele foi escrito por Sean McQuillan e Prateek Tandon. A tradução foi feita pela Redação iMasters com autorização. Você pode acessar o original em: https://android-developers.googleblog.com/2018/02/discover-tools-for-android-data.html