Widget e scorciatoie

La nuova API di flusso per l'aggiunta di scorciatoie e widget in Android 8.0 consente agli sviluppatori di app di aggiungere scorciatoie e widget dall'interno dell'app anziché utilizzare la barra dei widget. Inoltre, per motivi di sicurezza, viene ritirato il vecchio metodo (invio di un messaggio di broadcast) per l'aggiunta di scorciatoie.

I lanciatori devono supportare questa nuova implementazione in modo che gli sviluppatori di app possano fare affidamento sul sistema per aggiungere la scorciatoia o il widget.

Esempi e origine

I documenti sono disponibili in vari sistemi di classificazione. I riferimenti includono:

  • ShortcutManager.java
    Pubblica la sezione Scorciatoie bloccate nell'intestazione.
  • Intent.java
    Javadoc per ACTION_CREATE_SHORTCUT.
  • AppWidgetManager.java
    Javadoc per requestPinAppWidget.

Implementazione

Gli implementatori di dispositivi devono aggiungere un'attività nel proprio Avvio app con azioni di filtro per intent:

  • android.content.pm.action.CONFIRM_PIN_SHORTCUT
  • android.content.pm.action.CONFIRM_PIN_APPWIDGET

Per ulteriori dettagli, consulta la documentazione dell'API.

Questa attività dovrebbe mostrare all'utente una richiesta di conferma per aggiungere il widget/la scorciatoia richiesto e, dopo l'accettazione, aggiungere il widget/la scorciatoia corrispondente sulla schermata Home.

Nel caso dei widget, la chiamata accept() deve includere l'ID widget del widget appena aggiunto.

Implementazione di un'interfaccia utente di sistema

I partner devono aggiornare la propria app Avvio utilizzando come riferimento l'implementazione di Launcher3 (packages/apps/Launcher3).

Trova le modifiche pertinenti a Launcher3 nell'Android Open Source Project (AOSP):

Convalida

Per convalidare la funzionalità, prova ad aggiungere scorciatoie da Chrome o dall'app Contatti e verifica che venga visualizzato un messaggio di conferma appropriato. Dopo l'accettazione, l'icona dovrebbe essere aggiunta alla schermata Home e Chrome dovrebbe mostrare un messaggio di conferma.