Lassen sie in meiner Android-Aktivität meiner Crosswalk Ansicht sagt, zeigt eine Seite wie diese:Fußgängerübergang: wie URL der Nicht-Web-Ressource in einem neuen Tab/Fenstern geöffnet bekommen
<html>
<body>
<a target="_blank" href='http://some-website.com/document.pdf'>Download a PDF</a>
</body>
</html>
Wie kann ich die URL abfangen von Dieser Link?
Beachten Sie, dass die Callbacks wie XWalkResourceClient.shouldOverrideUrlLoading
oder shouldInterceptLoadRequest
nicht aufgerufen werden, da Crosswalk ein vollständig neues Dokument lädt, da es den Link in einem neuen "Fenster" öffnet.
Es gibt einen Rückruf für die Fenstererstellung, XWalkUIClient.onCreateWindowRequested
, aber das enthält keinen Parameter, der die URL enthält, die in dem neuen Fenster geladen wird.
Ich weiß auch, dass der Benutzercode, wenn ein neues Fenster erstellt wird, ein neues XWalkView zum Laden des Zieldokuments instanziieren kann, und ich sollte den benutzerdefinierten Ressourcenclient und UI-Client festlegen.
Was ich bisher versucht:
- Alle Methoden in
XWalkResourceClient
undXWalkUIClient
mit einem URL-Parameter, sowohl im Herkunfts- und Zielansichten. Entweder werden sie nicht aufgerufen, oder der Parameter ist null oder leer. - Geben Sie in
XWalkUIClient.onCreateWindowRequested
eine Unterklasse von XWalkView zurück, dieload()
überschreibt, damit sie die URL abfangen kann. Diese Methode wird nicht aufgerufen.
Jeder Vorschlag wird sehr geschätzt. Vielen Dank!
ist es möglich, diese zu aktivieren, wenn ein a href Link in dem Fußgängerübergang Webview geklickt wird? Wenn ja, wie? – AlexioVay
Mein Beispiel in oben ist das Crosswalk WebView. – Xiaofeng