31
Oct
kk-chromium-icon

This feature is perhaps bigger news for app developers than end users, but it's an important one nonetheless. Ever used an app that feels really slow, clunky, and unresponsive - almost like a mobile web page? It probably is one! You see, many publishers of apps out there don't actually build real mobile apps. Credit card companies, cell phone carriers, airlines - you know, the sort of companies you kind of live to hate. They're often too lazy / incompetent / cheap to build real native Android applications, and instead rely on what's called WebView. Essentially, WebView allows an app to display a web page. There are legitimate uses for such a feature, obviously, but many developers out there abuse it and construct tiny "shell" apps that are little more than WebView frames.

This is a problem for two reasons. First, web wrapper apps really, really suck. Every time someone publishes a web wrapper app, an adorable kitten angel loses its wings and gets rabies and mauls an innocent fluffy bunny. Second, the current Android WebView is based on the old stock Android WebKit browser, which Google has not updated in something around an eternity. This breaks things. It makes things go slow.

As of Android 4.4, this changes - WebView is now built on Chromium, bringing much-needed support updates for web standards like HTML5, CCS3, and JavaScript. It should also dramatically improve JavaScript performance, since Google's V8 JavaScript Engine is part of Chromium.

This is just one of our many Android 4.4 feature highlights, so keep checking for more as the day goes on. Don't forget to check out our KitKat overview post, either!

Android Developers

David Ruddock
David's phone is an HTC One. He is an avid writer, and enjoys playing devil's advocate in editorials, imparting a legal perspective on tech news, and reviewing the latest phones and gadgets. He also doesn't usually write such boring sentences.

  • Nick

    Considering the current (severely broken) state that Chrome is in on Android, I worry that this will actually make things much worse.

    • http://twitter.com/rohanXm Rohan Mathur

      Can't get much worse than what WebView is right now in Android :)

    • Brad

      Only reason I don't use chrome is no flash... otherwise, it seems pretty smooth

    • Adrian Zugaj

      This has nothing to do with Chrome for Android.

      • Nick

        Chrome uses the Chromium rendering engine. Presumably all of Chrome's issues (severe lag, memory leaks, etc) stem from the rendering engine being subpar.

    • Alex Lockwood

      The Chrome application is different from the Chromium webview...

    • deltatux

      Even on the Nexus 4, the stock AOSP browser runs better than Chrome which is sad if you think about it...

      • https://steamcommunity.com/id/m-p-3 m-p{3}

        I hope they'll focus on Chrome's performance eventually.

        I often have to swipe two or three times to close a tab because for some reason the app didn't register the action (on a Nexus 4). Maybe I'm doing it too fast, but that kinda annoying.

        And if we could reorder the bookmarks on Android that would be great, annoying to use a computer to do so..

  • Anthony Restaino

    As the developer of a browser that uses the native WebView, I find this VERY exciting.

    • Trent Callahan

      ACR is amazing. Keep up the great work!!

    • Guest

      Which browser?

      • Anthony Restaino

        Lightning Browser ;)

  • Kyle Riedemann

    I do agree that Chrome is kinda broken, that said imagine Plume with in-app Chromium view. No more weird compatibility issues, every app that has it's own web browser should render HTML 5 instead of looking for a plugin for views, etc.

  • Dushyant_C

    "Every time someone publishes a web wrapper app, an adorable kitten angel loses its wings and gets rabies and mauls an innocent fluffy bunny."
    ROFL :D

  • sQueezedhe

    Hm.. will it sync my google account so i don't have to log in on EVERY SINGLE WEB WRAPPER APP ALL OVER AGAIN AND AGAIN..*cough, .. well?

    • http://www.gameosaur.com/ neoKushan

      I can only imagine that being a security risk...

  • Testraindrop

    So does this mean in AOSP the oldschool AOSP browser gets replaced with Chromium also?

    I'm not sure if this is a good or a bad thing, I like the AOSP browser :(

    • http://www.gameosaur.com/ neoKushan

      The AOSP browser was at one point based on Chromium (I think?) but just hasn't seen much updating since. Remember, that Chromium and Chrome are not quite the same thing. I would think that the AOSP browser will still be there, and will benefit from this change but won't be suddenly switching to Chrome.

  • http://www.gameosaur.com/ neoKushan

    How often will this be updated, though? Is the Chromium code now part of the core OS and thus will only see changes with every point release, or is it part of play services or whatever? Given how often Chromium's code is updated, I can't imagine it being fun as a developer being stuck on an old version, or worse yet having to support widely different versions across all flavours of KitKat.

  • http://flavors.me/sabret00the sabret00the

    Webview is a horribly broken concept to start with. If you want to go to a web page, make users use the browser that's installed and to their choice. Grrr!

    That said, if developers insist, I hope they start using Geckoview.

    • Björn Lundén

      Webviews are good for apps like Falcon Pro that actually uses it to show webpages without leaving the app. Using it for app UI stuff is very bad though. I'm sure most people can agree with that.

      • http://flavors.me/sabret00the sabret00the

        There's absolutely no reason why Falcon Pro can't boot you to a normal browser and use OAuth to authenticate.

        • Björn Lundén

          Except that would make it slower to browse through your twitter feed. It's a case where a WebView is used right, to act as an in-app web browser for viewing linked articles. I'm not even sure what you mean it should open the browser and OAuth to?

          • http://flavors.me/sabret00the sabret00the

            Not sure how you work that out since all webview does it authenticate your credentials.

          • Björn Lundén

            Falcon Pro also uses webviews to inline website viewing in the app, ie. as an in-app browser. What is so hard to understand about that?

  • http://thisismartin.com/ Martin Spa.

    It was about time.

  • mjku

    The old browser is still a smoother experience than Chrome to this day, so I'm not entirely sure why the excitement other than offering marginally better HTML5 support (but worse in some ways, like HLS video streaming in a video wrapper).

    • matthewfabb

      The old browser hasn't been updated since 2011, when Google started working on Chrome mobile. So beyond faster JavaScript, all sorts of HTML5 features, hardware accelerated CSS3, the old browser also has a lot of bugs that were never fix. Also debugging issues on the older browser was a lot more difficult. There are a lot more ways to debug and profile Chrome mobile than there is on the old Android browser.

      So even if you might find the old browser a lot smoother, most WebView apps are still likely to perform better using Chrome as the base and be more bug free than using the older version.

      • oj88

        Not true, still a myth. The WebKit engine version was upped in Jelly Bean, and together with Project Butter, it made a significant boost in performance. I still find scrolling and HW accelerated CSS animations to perform better in the Jelly Bean WebKit AOSP browser on my Nexus 4 and Galaxy Nexus than Chrome. Chrome supports new features and has somewhat better JS performance. I just hope they fix scrolling soon.

        • matthewfabb

          No, the WebKit engine wasn't updated in Jelly Bean. It's been stuck at WebKit version 534.30 since Android 4.0.1. You can see this by looking up sites that track either WebKit version numbers or agent strings. Or if you have a device on Jelly Bean, open up the browser in any of the many websites that display your user agent and you can see for yourself it's still at 534.30.

          If you saw any article talking about WebKit being updated in Jelly Bean and Project Butter, they were likely talking about Chrome mobile (currently on WebKit version 537.36).

          • oj88

            So why did the AOSP browser in Jelly Bean support new features? I have an app that uses the HTML5 input slider. It didn't work on ICS, but started working (and working really good) in JB. I also noticed many bugs with HW accelerated CSS animations in ICS that went away in JB. I may be wrong about the WebKit versions, I assumed it was upped, but I haven't checked it out. I'm still having a hard time believing that there were no changes from ICS to JB in the AOSP browser, because it added both new features, fixed bugs and improved performance.

  • shane miller

    Why all the hate on webview? If written/designed well it can be very difficult to tell the difference between native and web apps. I remember the Discover card android app is/was a web view and it was without a doubt a high quality, responsive and sharp looking app. I will say though, its painful to use to poorly made web app, and those will usually be the ones with one star ratings.

  • Jhonny

    This is not a feature, it is a bug. The new Chromium WebView is not backward compatible and lacks many features.

    It would have been much better if they did not remove the old WebView. Having both would have been a choice.

    Please star this issue to get Google's attention on it:
    https://code.google.com/p/android/issues/detail?id=62378

  • Sanmoy Ray

    HTML5 canvas is not hardware accelerated in 4.4 webview. As a result, canvas rendering is even poorer than ICS. Games/apps which rely on html5 canvas, are slowed down to death. There are several bugs raised : https://code.google.com/p/chromium/issues/detail?id=315111

  • David Aschole

    I think David you are lazy ashole.