A nova API de fluxo para adicionar atalhos e widgets no Android 8.0 permite que os desenvolvedores de aplicativos adicionem atalhos e widgets de dentro do aplicativo em vez de depender da bandeja de widgets. Ele também descontinua o método antigo (enviar uma transmissão) de adicionar atalhos por motivos de segurança.
Os lançadores precisam dar suporte a essa nova implementação para que os desenvolvedores de aplicativos possam contar com o sistema para adicionar seu atalho ou widget.
Exemplos e fonte
Os documentos estão disponíveis em várias classes de sistema. As referências incluem o seguinte:
- ShortcutManager.java
Publicar seção de atalho fixado no cabeçalho. - Intent.java
Javadoc para ACTION_CREATE_SHORTCUT. - AppWidgetManager.java
Javadoc para requestPinAppWidget.
Implementação
Os implementadores de dispositivos precisam adicionar uma atividade no iniciador com ações de filtro de intent:
-
android.content.pm.action.CONFIRM_PIN_SHORTCUT
-
android.content.pm.action.CONFIRM_PIN_APPWIDGET
Consulte a documentação da API para obter mais detalhes.
Essa atividade deve exibir um prompt de confirmação para o usuário adicionar o widget/atalho solicitado e, ao aceitar, adicionar o widget/atalho correspondente na tela inicial.
No caso de widgets, a chamada accept()
deve incluir o ID do widget recém-adicionado.
Implementando uma interface do usuário do sistema
Os parceiros precisam atualizar o aplicativo Launcher usando a implementação do Launcher3 ( packages/apps/Launcher3
) como referência.
Encontre as alterações relevantes do Launcher3 no Android Open Source Project (AOSP):
- ID de alteração: 8b2002e28072c52d78f6d052c6ff6da50a2d0324
- ID de alteração: 278359539c02ca160caf1df54ce96053a2a2ef59
Validação
Para validar o recurso, tente adicionar atalhos do Chrome ou do aplicativo Contatos e verifique se um prompt de confirmação adequado é exibido. Ao aceitar, o ícone deve ser adicionado na tela inicial e o Chrome deve exibir um brinde de sucesso.