Flash Player 10.1 for Android
The mobile Flash story is a long and complex one, even before you throw in Apple. Flash Lite, Adobe's previous attempt at delivering a mobile Flash experience was a cut-down version of an obsolete desktop player, with some Flash video features thrown in for luck. It never really caught on. With the mobile market exploding, Adobe needed to bring its full desktop experience to high-end smartphones.
The result was the Open Screen Project, a mix of software and hardware companies, working with Adobe to re-architect the Flash Player so it delivered desktop-like performance on constrained hardware. It's taken longer than expected to get to a publically available mobile version of the Flash Player, with Android 2.2 the host OS for this beta release.
Adobe has done a good job here: you'll find the familiar sites and services all work, even the BBC iPlayer (although US users won't be able to use Hulu thanks to the company's policy of banning non-PC access). Video quality is surprisingly good, with smooth streaming performance and very few artifacts. If you're running a video streaming site using a Flash-based player, you're already set up for the mobile version, as there's no need to update your code — unless you want to add finger-friendly controls to the player. We were able to connect to many different video sites and services without problem.
One thing to note about mobile Flash is that you're really going to want to be using Wi-Fi if you're streaming video. The RTSP protocol Adobe uses is adaptive, and the limited bandwidth available in 3G networks (compared to a broadband-connected Wi-Fi system) means you're going to get a much lower-quality video stream. However, that's a limitation of the network, not Flash.
Mobile devices make great casual gaming platforms. After all, what else are you going to do when you're stuck on a train and you've answered all your urgent email? Adobe has worked with some of the better-known casual gaming companies to develop mobile versions of their sites. We spent some time playing with a wide range of different puzzle and action games, some of which had been designed to take advantage of Flash Player 10.1's new hardware support for touch and accelerometers. We did have some issues with touch detection — but we had similar problems in the browser, so that may have been an issue with our test device.
Flash isn't just about games or video. It's also a tool for displaying information, and with Adobe's Flex framework, a platform for delivering rich internet applications for business. Sadly that's still an area where the mobile Flash Player 10.1 has some problems. We weren't able to get Adobe's own Tour De Flex sample site to run on our test device, with content failing to render and menus not responding to touch. We had more luck with the flex.org showcase, itself a Flex application. Developers working with Flex will need to take into account the smaller screen sizes of mobile devices — Adobe's own Flexstore sample application loaded and rendered on our test device with large chunks of the screen not showing.
Flash's streaming video works well on Android, even over 3G, with full-screen views taking advantage of the available screen real estate.
Running the mobile version of the GUIMark 2 Flash benchmark, we got a score of 36.33fps for vector and 20.28fps for bitmap operations. That's a respectable score, although for comparison running the same tests on a Windows PC we recorded 60fps for both vector and bitmap operations. It certainly shows that Flash performs well enough on mobile for most purposes — especially as our beta build of Flash Player wasn't using the Nexus One's hardware graphics acceleration. Just to be sure, we tried out one of the GUIMark2 desktop benchmarks on the mobile platform: our test Windows PC scored 7.09fps on the Flash 10 bitmap test, while the mobile version scored 1.6fps.
It's important to be realistic about mobile Flash: with the bandwidth available on mobile networks, high-resolution videos aren't going to stream the way you'd want them to. Optimising existing Flash content for mobile is easier than rewriting it entirely for HTML 5, but some sites are going to stick with the Flash they already have. In almost all cases, that's going to work just fine, even if it's not ideal as a mobile experience. Flash does use up the battery — but don't forget that you're using your 3G or Wi-Fi connection, and that would take power with any online gaming engine or video format.