Firebase dynamische Links doppelt behandelt

Ich habe ein Problem, dass der dynamische Firebase-Link neu gestartet wird, wenn die Android-App neu gestartet wird. Die folgende Sequenz erzeugt das Problem:

Klicke auf die Deep Link URLdie App wird bei der Ansicht geöffnet, auf die der Deep Link zeigt (wie erwartet) App schließen (komplett)Öffne die App über das Symboldie App wird bei der Ansicht geöffnet, auf die der Deep Link zeigt (obwohl dies nicht der Fall sein sollte) danach funktioniert es gut

Ich verwende die neuesten (9.0.2) Bibliotheken. Der Code ist so ziemlich wie in den Beispielen (z. B. hier:https: //firebase.google.com/docs/dynamic-links/android#add-an-intent-filter-for-deep-link), autoLaunchDeepLink ist false.

Ich habe festgestellt, dass dies durch einen Fehler verursacht wurde, der jedoch in der aktuellen Version behoben werden sollte:https: //github.com/googlesamples/google-services/issues/14

Ich habe eine Problemumgehung versucht, indem ich AppInvite.AppInviteApi.getInvitation zweimal aufgerufen habe, wie im github-Fehlerbericht angegeben. Kein Erfolg

In onCreate Ich überprüfe, ob savedInstance null ist, und überprüfe Deep Link nur, wenn dies der Fall ist.

Ich überprüfe Deep Link auch in onNewIntent, um es zu handhaben, während die App ausgeführt wird. Dies wird jedoch nicht aufgerufen, wenn das Problem auftritt.

In meinem Manifest ist der Intent-Filter mit dem spezifischen Protokoll und Host nur in der Hauptaktivität enthalten. Das Protokoll wird auch in anderen Filtern in anderen Aktivitäten verwendet, aber ich habe auch versucht, ein anderes Protokoll in solchen ohne Wirkung zu verwenden. Nur die Hauptaktivität verwendet AppInvite.AppInviteApi.getInvitation, um die Absicht zu ermitteln. Das Problem tritt auch dann auf, wenn ich andere Absichtsfilter aus allen Aktivitäten entferne.

Haben Sie eine Idee, was falsch sein könnte oder was ich noch überprüfen sollte?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage