2

Hey experts, actually it's a pretty simple question...just don't know about the answer.

I have an Android app, running a WebView that loads a certain page, also part of the app.

At a given moment, i want to call a javascript function inside the WebView page, but i wanna do this outside the onPageFinished event.

Is that possible? Any ideas?

Thanks in advance.

1 Answer 1

5

Is that possible?

Sure. Use loadUrl("javascript:...");, where the ... is whatever Javascript you wish to run in the context of the currently-loaded Web page. It's basically the same trick that bookmarklets use.

Here is a sample project demonstrating this, by pushing a GPS location over to Javascript.

Sign up to request clarification or add additional context in comments.

4 Comments

Look out for the fact that onpagefinished may fire several times for a given URL due to redirects.
How can you be sure that the page has finished loading before running the script?
@TacB0sS: As noted in the previous comment, use onPageFinished() on your WebViewClient.
@CommonsWare, Thanks you for your help, I'm having a serious issue with the Android WebView and injecting the JavaScript at the onPageFinished... it seems like the onPageFinished call is been delayed: stackoverflow.com/questions/17995739/…

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.