2010-12-09 10 views
1

Gibt es eine Möglichkeit abzufangen, wenn ein Benutzer auf eine HTML-Schaltfläche klickt? Ich habe einen Webviewclient, der eine Login-Seite mit zwei Buttons lädt. Zulassen und Verweigern. Ich möchte dich abfangen, wenn die Verweigertaste gedrückt wird. (Verweigern und erlauben haben die gleiche basUrl und eine js die richtige Umleitung).Abfangen html button click

Dank im Voraus

Antwort

0

Klingt wie ein Fall für WebViewClient.shouldOverrideUrlLoading() Umsetzung sicher?

+0

ich mache es schon – Blackbelt

+0

Dann was ist das eigentliche Problem? Sie können jede URL ausspionieren, suchen Sie also einfach nach dem, der von der Schaltfläche "Verweigern" kommt. –

+0

Ich habe es versucht. Ich snooped mit dem Debugger für jedes Mal, wenn die Methoden aufgerufen wurde, aber ohne Erfolg. Die Schaltflächen zum Zulassen/Verweigern werden mit jquery verwaltet. Kann das zu Problemen führen? – Blackbelt

2

Sie erhalten wahrscheinlich keinen Callback zu shouldOverrideUrlLoading(), da dieser nur aufgerufen wird, wenn der Benutzer die Navigation auslöst - wenn Sie jquery/javascript oder eine andere Art von Redirect verwenden, wird er nicht aufgerufen.

Wenn Sie die Kontrolle über die Web-Seite sind, können Sie ein JavaScriptInterface rufen Sie zurück zu Ihrem Android App hinzufügen können eine handhaben es aber gerne Sie hier: http://developer.android.com/guide/webapps/webview.html#BindingJavaScript

Mit JSI Sie einfach eine Funktion in der App registrieren und dann rufen Sie es im Javascript der Seite auf.

Wenn Sie nicht die Kontrolle über die Website haben, können Sie das Javascript noch selbst injizieren, wenn Sie mit der Struktur/DOM der Webseite vertraut sind.