Android beabsichtigt, sowohl Waze als auch Google Maps zu öffnen

Es gibt ein paar ähnliche Beiträge, aber ich konnte keinen genauen finden. im grunde möchte ich sowohl google maps als auch waze mit der gleichen absicht öffnen. Zuerst habe ich es versucht:

final String uri = String.format(Locale.ENGLISH, "geo:%f,%f", latitude, longitude);
final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
startActivity(intent);

Waze navigierte direkt zum richtigen Ort und Google Maps öffnete den richtigen Ort. Dann stellte ich fest, dass Google Maps keine PIN für den Standort enthält, sodass der Benutzer nur schwer weiß, wo genau er sich befindet. Also habe ich mich umgesehen und festgestellt, dass für Google Maps das "? Q = .. (label)" erforderlich ist ... Ich habe die Uri-Konstruktion geändert in:

final String uri = String.format(Locale.ENGLISH, "geo:%f,%f?q=%f,%f (%s)", latitude, longitude, latitude, longitude, name);

Aber dann hat Waze zwei Dinge getan: Zum richtigen Ort navigieren UND das Etikett durchsuchen. Dazu musste der Benutzer auf die Schaltfläche "Zurück" klicken, um den Bildschirm mit den Suchergebnissen zu schließen und bei der Navigation an der richtigen Stelle zu bleiben.

Ich habe überall nach einer Antwort gesucht, aber keine Lösung gefunden, mit der beides erreicht werden kann. Zuerst dachte ich, dass es nicht möglich ist und Waze einen Bug hat ... aber dann bemerkte ich, dass Facebook Messenger genau das macht, was ich will. Wenn Sie auf eine Nachricht mit einem Ort klicken, werden beide Apps geöffnet: Google Maps verfügt über eine PIN (mit einer Bezeichnung) und Waze navigiert direkt zu diesem Ort, ohne eine Suche durchzuführen.

Einige Fragen zu den oben genannten Punkten: 1. (Natürlich) Wie kann ich das erreichen? 2. Wie kann ich wissen, wie die Absicht des Facebook-Kuriers aufgebaut wird? (Kann ich es trotzdem einfangen?) 3. Was ist der Grund dafür, dass das Etikett nur mit dem "? Q = .." versehen ist?

Vielen Dan

Antworten auf die Frage(3)

Ihre Antwort auf die Frage