Widgets/atalhos

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):

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.