Heim >Web-Frontend >H5-Tutorial >Versuchen Sie, den APP-Instanzcode auf der H5-Seite aufzurufen
In diesem Artikel wird hauptsächlich der Beispielcode für den Aufruf der APP auf der H5-Seite vorgestellt. Ich hoffe, er kann Ihnen helfen.
Diese Art von Funktion sollte heutzutage sehr verbreitet sein, Taobao H5, Zhihu H5 und so weiter. . .
Wenn Sie darauf klicken, wird die APP gestartet oder die Download-Seite geöffnet oder direkt heruntergeladen.
Aber ich habe festgestellt, dass diese Funktion von Zhihu etwas anders ist
Ihre Logik besteht darin, mich zuerst zu fragen, ob ich die Zhihu-APP auf meinem Telefon öffnen soll (der Browsermechanismus fragt den Benutzer um Erlaubnis ). Dann erscheint erneut die Download-Eingabeaufforderung.
URL-Schema wird sowohl auf IOS als auch auf Android unterstützt und ist gut kompatibel.
Der Pseudocode lautet wie folgt:
const iframe = document.createElement('iframe');iframe.src = 'URL scheme'; // URL scheme的方式跳转iframe.style.display = 'none';document.body.appendChild(iframe);
Wenn alle Umgebungen ihn zu diesem Zeitpunkt unterstützen, wird er aktiviert up APP.
Aber dies ist eine ideale Situation, mehr ist die schnelle Logik der Kompatibilitätsverarbeitung.
Einige Systeme fangen den src von iframe ab (dies ist nur einer der Gründe dafür, dass die APP nicht aktiviert werden kann), da es sich bei diesem src-Attribut um einen illegalen Hacker handelt und durch dessen Ausnutzung viele Schwachstellen entstehen.
Zu diesem Zeitpunkt ist es daher notwendig, festzustellen, ob die Anpassung der APP fehlgeschlagen ist.
Der Pseudocode lautet wie folgt:
const timer = 1000;setTimeout(function() { // 执行成功后移除iframedocument.body.removeChild(iframe);//setTimeout小于2000通常认为是唤起APP失败 if (Date.now() - last
Verstehen :
Wenn der Evokation ist erfolgreich, H5 Die Seite wird in den Hintergrund geschaltet und der Timer wird verzögert. Auch wenn der Benutzer von der App zur H5-Seite wechselt, muss der Zeitunterschied größer als 2S sein.
Wenn die Erregung fehlschlägt, wird der Timer pünktlich ausgeführt (auch wenn eine Verzögerung von 100 ms vorhanden ist, reicht das aus) und muss zu diesem Zeitpunkt weniger als 2 Sekunden betragen.
Wenn der Iframe abgefangen wird, können wir aus Kompatibilitätsgründen window.location.href = URL scheme
verwenden.
Verwandte Empfehlungen:
10 empfohlene Artikel über H5-Seiten
Detaillierte Erläuterung des Prozesses zum Erstellen einer WeChat H5-Seite
Das obige ist der detaillierte Inhalt vonVersuchen Sie, den APP-Instanzcode auf der H5-Seite aufzurufen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!