Widgets/raccourcis

La nouvelle API de flux pour l'ajout de raccourcis et de widgets dans Android 8.0 permet aux développeurs d'applications d'ajouter des raccourcis et des widgets depuis l'intérieur de l'application au lieu de s'appuyer sur la barre des widgets. Il déprécie également l'ancienne méthode (envoi d'une diffusion) consistant à ajouter des raccourcis pour des raisons de sécurité.

Les lanceurs doivent prendre en charge cette nouvelle implémentation afin que les développeurs d'applications puissent compter sur le système pour ajouter leur raccourci ou widget.

Exemples et source

Les documents sont disponibles dans différentes classes système. Les références incluent les éléments suivants :

  • ShortcutManager.java
    Publier la section de raccourci épinglé dans l’en-tête.
  • Intention.java
    Javadoc pour ACTION_CREATE_SHORTCUT.
  • AppWidgetManager.java
    Javadoc pour requestPinAppWidget.

Mise en œuvre

Les implémenteurs d'appareils doivent ajouter une activité dans leur lanceur avec des actions de filtrage d'intention :

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

Reportez-vous à la documentation de l'API pour plus de détails.

Cette activité doit afficher une invite de confirmation à l'utilisateur pour ajouter le widget/raccourci demandé et, après acceptation, ajouter le widget/raccourci correspondant sur l'écran d'accueil.

Dans le cas de widgets, l'appel accept() doit inclure l'ID du widget nouvellement ajouté.

Implémentation d'une interface utilisateur système

Les partenaires doivent mettre à jour leur application Launcher en utilisant l'implémentation Launcher3 ( packages/apps/Launcher3 ) comme référence.

Recherchez les modifications pertinentes de Launcher3 dans le projet Android Open Source (AOSP) :

Validation

Pour valider la fonctionnalité, essayez d'ajouter des raccourcis depuis Chrome ou l'application Contacts et vérifiez qu'une invite de confirmation appropriée s'affiche. Après acceptation, l'icône devrait être ajoutée sur l'écran d'accueil et Chrome devrait afficher un toast de réussite.