There is a little gem in the documentation of the latest Android SDK version. A mention of native NPAPI plugins:
WebViews now support plugins. The location of the plugin is set via WebView.setPluginsPath(). Plugins are native (C/C++) code that implement the NPAPI interface.
This opens the door to native plugins on the browser. Including Adobe Flash, if Adobe wants to.
Android is a managed platform running interpreted bytecode. But there is now an explicit mention of native, third-party binaries in the form of NPAPI complaint browser plugins. This is understantable since such plugins often implement audio and video codecs and a bytecode interpreter is probably not fast enough. But this also means it may be possible to develop applications that bundle a native WebView plugin for internal usage.
The SDK is not yet 1.0 but I hope we hear more about this feature. Let's hope it remains here for every developer who wants to use it and on shipping devices.
Closed web clients are sexy:
Enhancements to the Drawing API make runtime drawing much easier with re-styleable properties, 3D APIs, and a new way of drawing sophisticated shapes without having to code them line by line.
Your video card can be used to do compositing on all raster content. Utilizing the hardware processing power of the graphics card, GPU compositing accelerates compositing calculations of bitmaps, filters, blend modes, and video overlays faster than would be performed in software on the CPU.
As a developer Flash 10 looks extremely compelling. You get a platform that just works across the 3 most used operating systems, a very powerful drawing engine optimized for speed and what is probably the most comprehensive runtime environment outside of native applications.
The advantage for closed web clients is clear: the company controlling them has absolute power over them, and can expand and change them in ways a consortium or an industry design committee would never dare.
