Como trazer o Androidify para o Wear OS com a API Watch Face Push
Leitura de 3 minutos
Há alguns meses, relançamos o Androidify como um app para gerar bots Android personalizados. O Androidify transforma sua selfie em um bot Android divertido usando o Gemini e o Imagen.
No entanto, como o Android abrange vários formatos, incluindo nossa adição mais recente, o XR, pensamos: como podemos levar a diversão do Androidify para o Wear OS?
Um mostrador do relógio do Androidify
Como os bots do Androidify são altamente personalizados, o lugar natural para mostrá-los é o mostrador do relógio. Além de ser a superfície mais visível, ela também é a mais pessoal, permitindo que você represente quem você é.
Mostrador do relógio Androidify personalizado, gerado com base em uma selfie
O Androidify agora pode gerar um mostrador do relógio dinamicamente no app para smartphone e enviá-lo para o relógio, onde ele será definido automaticamente como o mostrador. Tudo isso acontece em segundos.
Design de alto nível
Fluxo completo para criação e instalação de mostradores de relógio
Para alcançar a experiência de ponta a ponta, várias tecnologias precisam ser combinadas, conforme mostrado neste diagrama de design de alto nível.
Primeiro, o avatar do usuário é combinado com um modelo preexistente do Formato do mostrador do relógio, que é empacotado em um APK. Isso é validado por motivos que serão explicados. e enviado para o relógio.
Ao ser recebida pelo relógio, a nova API Watch Face Push, parte do Wear OS 6, é usada para instalar e ativar o mostrador do relógio.
Confira os detalhes:
Como criar os modelos de mostrador do relógio
O mostrador do relógio é criado com base em um modelo, que foi projetado no Watch Face Designer. Este é nosso novo plug-in do Figma que permite criar mostradores do relógio no Formato do mostrador do relógio diretamente no Figma.
Um modelo de mostrador do relógio Androidify no Watch Face Designer
O plug-in permite que o mostrador do relógio seja exportado de várias maneiras diferentes, incluindo como recursos do Formato do mostrador do relógio (WFF). Eles podem ser facilmente incorporados como recursos no app Androidify para criar dinamicamente o mostrador do relógio finalizado.
Empacotamento e validação
Depois que o modelo e o avatar são combinados, o Portable Asset Compiler Kit (Pack) é usado para montar um APK.
No Androidify, o Pack é usado como uma biblioteca nativa no smartphone. Para mais detalhes sobre como o Androidify interage com a biblioteca Pack, consulte o repositório do GitHub.
Como etapa final antes da transmissão, o APK é verificado pelo validador de envio de mostrador do relógio.
Esse validador verifica se o APK é adequado para instalação. Isso inclui verificar o conteúdo do APK para garantir que ele seja um mostrador de relógio válido, além de algumas verificações de desempenho. Se for válido, o validador vai gerar um token.
Esse token é necessário para a instalação do relógio.
Enviando o mostrador do relógio
O app Androidify no Wear OS usa o WearableListenerService para detectar eventos na camada de dados de wearables.
O app para smartphone transfere o mostrador do relógio usando uma combinação de MessageClient para configurar o processo e ChannelClient para transmitir o APK.
Instalar o mostrador no relógio
Depois que o mostrador de relógio é recebido no dispositivo Wear OS, o app Androidify usa a nova API Watch Face Push para instalar o mostrador:
val wfpManager =
WatchFacePushManagerFactory.createWatchFacePushManager(context)
val response = wfpManager.listWatchFaces()
try {
if (response.remainingSlotCount > 0) {
wfpManager.addWatchFace(apkFd, token)
} else {
val slotId = response.installedWatchFaceDetails.first().slotId
wfpManager.updateWatchFace(slotId, apkFd, token)
}
} catch (a: WatchFacePushManager.AddWatchFaceException) {
return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR
} catch (u: WatchFacePushManager.UpdateWatchFaceException) {
return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR
}O Androidify usa o método addWatchFace ou updateWatchFace, dependendo do cenário: a API Watch Face Push define um conceito de "slots", ou seja, quantos mostradores de relógio um determinado app pode ter instalado a qualquer momento. No Wear OS 6, esse valor é 1.
A abordagem do Androidify é instalar o mostrador do relógio se houver um slot livre. Caso contrário, qualquer mostrador do relógio atual será substituído pelo novo.
Definir o mostrador do relógio ativo
Instalar o mostrador de relógio de forma programática é uma ótima etapa, mas o Androidify busca garantir que ele também seja o mostrador ativo.
A API Watch Face Push introduz uma nova permissão de execução que precisa ser concedida para que os apps possam fazer o seguinte:
com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE
Depois que essa permissão for adquirida, o método wfpManager.setWatchFaceAsActive() poderá ser chamado para definir um mostrador de relógio instalado como o ativo.
No entanto, há várias considerações que o Androidify precisa considerar:
- O
setWatchFaceAsActivesó pode ser usado uma vez. SET_PUSHED_WATCH_FACE_AS_ACTIVEnão pode ser solicitado novamente depois de ser negado pelo usuário.- O Androidify já pode estar no controle do mostrador do relógio ativo.
Para mais detalhes, consulte como o Androidify implementa a lógica de definição como ativo.
Começar a usar o Watch Face Push para Wear OS
A API Watch Face Push é uma API versátil, igualmente adequada para melhorar o Androidify e criar marketplaces de mostradores de relógio com todos os recursos.
Talvez você tenha um app para smartphone e esteja procurando oportunidades para aumentar o engajamento e a satisfação dos usuários.
Ou talvez você seja um desenvolvedor de mostradores de relógio que quer criar sua própria comunidade e galeria lançando um app de marketplace?
Confira estes recursos:
- API Watch Face Push
- Formato do mostrador do relógio: confira também as próximas mudanças na política relacionadas à publicação de mostradores do relógio.
- Watch Face Designer
- Repositório do Androidify no GitHub
- Página de detalhes do app do Androidify na Google Play Store
Confira também o vídeo complementar para saber mais sobre como trouxemos o Androidify para o Wear OS.
Mal podemos esperar para ver o que você vai criar com a API Watch Face Push!
-
Novidades sobre produtosHoje, temos o prazer de anunciar o lançamento estável das bibliotecas AndroidX Security State versão 1.1.0 e Security State Provider versão 1.0.0.
Maunik Shah, Alec Garcia, Joseph Yong • Leitura de 4 minutos -
Novidades sobre produtosHoje, estamos lançando o primeiro conjunto de tarefas de longo prazo (LHT, na sigla em inglês), que são tarefas de grande complexidade que levam vários dias ou até uma semana para serem concluídas por um engenheiro. Também estamos lançando a avaliação com agentes, começando com agentes dos provedores de modelos correspondentes.
Matthew McCullough • Leitura de 3 minutos -
Novidades sobre produtosA depuração por Wi-Fi no Android agora é mais rápida, confiável e fácil de configurar do que nunca. Com o ADB Wi-Fi 2.0, apresentamos uma nova pilha de servidores e um tratamento de rede mais inteligente para resolver diretamente o feedback dos desenvolvedores sobre lacunas de usabilidade.
Steven Jenkins, Sherif Eid, Fabien Sanglard • Leitura de 1 minuto
Receba os insights mais recentes sobre desenvolvimento Android na sua caixa de entrada semanalmente.