8

My app is a combination of Android native, html5. Till last week I'm able to see the log messages from native code and javascript code running inside th WebView. But suddenly Logcat is not showing the console messages from javascript, though it is showing Log messages from my native code. Any ideas?

Thanks in advance. Venkat

5 Answers 5

22

You can try adding a console message handler to your WebView by creating your custom WebChromeClient:

class MyWebChromeClient extends WebChromeClient
{
    @Override
    public boolean onConsoleMessage(ConsoleMessage cm)
    {
        Log.d("CONTENT", String.format("%s @ %d: %s", 
                    cm.message(), cm.lineNumber(), cm.sourceId()));
        return true;
    }
}

And then attach it:

someWebView.setWebChromeClient(new MyWebChromeClient());
Sign up to request clarification or add additional context in comments.

Comments

18

For just android native & html5 (not phonegap/cordova) this covers how to display console messages in logcat. http://developer.android.com/guide/webapps/debugging.html#WebView

An alternative is to use jsconsole.com. Remote debugging is covered at http://jsconsole.com/remote-debugging.html

Edit: Some have found jsconsole.com doesn't work. Another alternative for remote debugging is https://bugfender.com/remote-logging Disclaimer: non-affiliate link and I have no relationship with bugfender other than a user. There is a free plan and also various paid plans with higher usage levels.

4 Comments

Wow! Good find dude! jsconsole.com is AMAZING.
implementing onConsoleMessage() worked out for me, see developer.android.com/guide/webapps/debugging.html#Browser
I agree with Dave that jsconsole.com is freakin cool! not only does it give you a way to see your console.log messages but also shows javascript errors with full file path and line numbers. wow! ThankS
The listen feature on jsconsole.com no longer works, rendering it useless for solving this problem.
1

I am running PhoneGap 2.9.1.

After doing some searching I was expecting the Console.log to show in the Eclipse LogCat under the tag 'WebView', so I wasn't sure it was working.

After some playing around I found that console.log() does show in the LogCat under the tag 'CordovaLog'.

Comments

1

This command works too nice

adb shell "logcat | grep 'Web Console'"

I found the answer here

Comments

0

If you want to test your cordova App, within your browser, just like you test any other web app.

You can use: cordova serve . This will run the hybrid app locally. You can open the url http://localhost:8000, and can inspect element for console logs. You can change the DOM elements, CSS.

Comments

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.