Widgets/Verknüpfungen

Die neue Flow-API zum Hinzufügen von Verknüpfungen und Widgets in Android 8.0 ermöglicht es Anwendungsentwicklern, Verknüpfungen und Widgets aus der App heraus hinzuzufügen, anstatt sich auf die Widget-Leiste zu verlassen. Aus Sicherheitsgründen wird auch die alte Methode (Senden einer Übertragung) zum Hinzufügen von Verknüpfungen abgelehnt.

Launcher müssen diese neue Implementierung unterstützen, damit App-Entwickler sich darauf verlassen können, dass das System ihre Verknüpfung oder ihr Widget hinzufügt.

Beispiele und Quelle

Dokumente sind in verschiedenen Systemklassen verfügbar. Zu den Referenzen gehören:

  • ShortcutManager.java
    Abschnitt „Angeheftete Verknüpfung“ im Header veröffentlichen.
  • Intent.java
    Javadoc für ACTION_CREATE_SHORTCUT.
  • AppWidgetManager.java
    Javadoc für requestPinAppWidget.

Implementierung

Geräteimplementierer müssen in ihrem Launcher eine Aktivität mit Absichtsfilteraktionen hinzufügen:

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

Weitere Einzelheiten finden Sie in der API-Dokumentation .

Diese Aktivität sollte dem Benutzer eine Bestätigungsaufforderung anzeigen, um das angeforderte Widget/die angeforderte Verknüpfung hinzuzufügen und nach der Annahme das entsprechende Widget/die entsprechende Verknüpfung auf dem Startbildschirm hinzuzufügen.

Bei Widgets sollte der Aufruf accept() die Widget-ID des neu hinzugefügten Widgets enthalten.

Implementierung einer System-Benutzeroberfläche

Partner müssen ihre Launcher-App unter Verwendung der Launcher3-Implementierung ( packages/apps/Launcher3 ) als Referenz aktualisieren.

Finden Sie die relevanten Launcher3-Änderungen im Android Open Source Project (AOSP):

Validierung

Um die Funktion zu validieren, versuchen Sie, Verknüpfungen aus Chrome oder der Kontakte-App hinzuzufügen und stellen Sie sicher, dass eine ordnungsgemäße Bestätigungsaufforderung angezeigt wird. Nach dem Akzeptieren sollte das Symbol auf dem Startbildschirm hinzugefügt werden und Chrome sollte einen Erfolgstoast anzeigen.