AIR 2.7 + Flash Player 10.3 Beta 2 on Labs

The runtime teams are on a roll! Flash Player 10.2 was only released to the general public just last month and the first beta of Flash Player 10.3 was already on Adobe Labs just a few weeks after that. Today the second beta of Flash Player 10.3 is available on Labs.

Flash Player 10.3 introduces new developer features and enhanced user privacy protection, such as:

  • Media measurement
  • Acoustic echo cancellation
  • Integration with browser privacy control for local storage
  • Native control panel
  • Auto-update notification for Mac OS

We’ve also just released AIR 2.7 on Labs. AIR 2.7 also has the media measurement and acoustic echo cancellation features from Flash Player 10.3 as well as an enhanced HTMLLoader API.

These new beta runtimes are available so that you can test your existing content and start playing around with the new APIs. If you find an issue make sure you tell us about it!

Flash on Android – evidently some people like it

I was installing Flash Player on a new Android device today and noticed that the number of user ratings is quickly approaching 200,000 and those ratings are VERY good — 4.5 stars!  Screenshot below from – as of 3/31/2011 4:38PM EDT.

Evidently, some users like having Flash on their mobile devices. ;-)


Adobe MAX 2011 – Crowdsource Request!

The Adobe MAX 2011 will probably once again be the best place and time you can be all year long to learn about Adobe LiveCycle ES.  We’ve already started internally assembling ideas for topics but I would really like to seek input from the LiveCycle Developer Community.  Specifically, please send me an email to dnickull at adobe dot com and tell me what topics you would like to see taught at Adobe MAX in Los Angeles, October 1-5, 2011.

Flash Access in your hand(held)

Flash Access is gaining momentum with content/service  providers, and is coming to mobile devices, including Android tablets and other mobile platforms, in the second half of 2011. This will extend the opportunities for monetization of premium content to more points of playback and will help consumers enjoy premium content on (most of) their favorite devices.

Flash Access is a studio-approved content protection solution for content monetization. It is part of the Flash Platform, enabling seamless access to premium video content with rich interactivity and multi-screen support. Other content protection solutions work primarily as silos, offering content only on certain devices or from certain content providers. With the Flash Platform, the same content can be deployed across multiple screens.

In the few months since Flash Access launched in mid-2010, there has been strong adoption worldwide, which is now supported on well over 85% of all Internet-connected computers. In a previous post, I mentioned that Flash Access protected content was also supported in AIR for TV, the Flash-based application framework and runtime that has been optimized for Internet/Smart TVs and broadband-enabled BluRay players. Now with the announcement of upcoming support for mobile, content providers will be able to target over a billion multi-screen devices from dozens of manufacturers with a single back-end.

I often get asked who is using Flash Access. The answer, of course, changes quickly as there has been rapid adoption. So far, content providers have deployed services offering premium video from Hollywood blockbusters to independent films, with additional uses in enterprise, government and education sectors. Use cases include streaming, download and even peer-to-peer, with monetization through a combination of rental, electronic sell-through and subscription in addition to advertising-funded models.

In addition to working directly with content providers (see some below), we have also been working closely with our partner ecosystem to enable a faster time to market and ease of integration. A number of service providers, from Content Distribution Networks (CDNs) to Online Video Platforms (OVP) have entered agreements to support Flash Access as a hosted option integrated into their infrastructure, thus allowing their customers to easily leverage the robust content delivery made possible by Flash Access. Some of these partners include Akamai, Brightcove, Limelight, Neulion, Origin Digital and thePlatform.

Here are a few really cool examples of companies using Flash Access today. We’ll be showcasing Flash Access at the Adobe booth at NAB, feel free to stop by. If you have licensing enquiries, please visit our licensing portal or email



VUDU has licensing agreements with every major movie studio and dozens of independent and international distributors to offer a large library of movies, including the largest 1080p library of video on-demand movies available anywhere. VUDU is a subsidiary of  Walmart.

“VUDU delivers the best streaming movie experience available on more than 300 devices – from HDTVs and blu-ray players to the Playstation 3.  We are also working with Adobe to support Flash for PCs and Macs using Flash Access,” said Edward Lichty, VUDU’s General Manager.  “We’re looking forward to expanding our collaboration with the upcoming release of Flash Access for mobile devices, which will ultimately enable us to deliver our best-in-class streaming service to consumers on the go.”



SundanceNow is the place to watch independent films online. Instantly watch HD streaming video of new releases and hard to find films from around the world.

“Our clients take their commitment to content creators very seriously,” said Marc Sokol, Executive Vice President, Marketing and Business Development at Neulion. “In choosing Flash Access we are giving content owners, like those showcasing their amazing independent films on SundanceNow, the confidence that their content will not only be securely delivered but also properly monetized through our service, no matter which device our customers choose to watch on.”



Voddler is an online video service based in Scandinavia and an early adopter of Flash Access. They have successfully integrated Flash Access with their distribution infrastructure and their AIR-based application. This allowed Voddler to secure content from content owners like Walt Disney, Paramount, and Sony Pictures.

“For both free and pay-per-view options, we have to reassure our partners that their content is properly monetized,” Anders Sjöman, vice president of communications for Voddler. “Adobe Flash Access helps safeguard our growing catalog of 3,300 titles and supports a variety of business models.”


Florian Pestoni

Adobe MAX 2011!

Adobe MAX – Save the date!

This year’s MAX will happen October 1-5, 2011, once again at the Los Angeles, CA convention center.  I will be there!

If you are not familiar with Adobe MAX, it is a once a year dream to be up close and in person with those who drive Adobe, from product management to engineers to sales & marketing. Adobe MAX showcases the latest tools and technologies that are shaping the future of digital experiences. Learn directly from industry leaders and Adobe experts and connect with peers. Make sure you get MAX updates as they are announced and sign up for the mailing list today.

Other action items:

Follow @AdobeMAX on twitter

Hit us up on Facebook

Follow me on Twitter – (Hint – there may be some exclusive offers coming from my account!)

Creating PlayBook apps with Flex and QNX UI Components

I got some requests about how to use both Flex and QNX UI components for building PlayBook apps. In this post I will show you how to do it.

Here are the basic steps.

1. Create a Flex mobile project. Make sure that you enabled the project for BlackBerry Tablet OS development.

2. Edit project properties to include the QNX libraries to the project build path (right-click on the project name > Properties). Select BlackBerry Tablet OS section and then check the Include BlackBerry Tablet OS libraries in build path.

Once you apply this changes your project should be ready for QNX components. Of course you have to add QNX components using ActionScript code; you can’t use QNX components as MXML tags.

You have to remember that the QNX UI components don’t inherit or extend the Flex base UI components. And because of this you can’t add them, for example, directly to a View Flex class using view.addElement(QNX-UI-component); instead you can use an instance of Flex UIComponent as wrapper. Here is code snippet that illustrates this technique:

Here is screencast that walks you through the setup and shows a sample app:


You can download the project code from here.

Building a jQuery Mobile Application with the PlayBook WebWorks SDK

I remain really impressed with the PlayBook as a device. It’s a great size, has fantastic specs, and the user experience that the QNX team has built is fun to use. Primarily I’ve been using the Flash-based AIR SDK for my tests and applications. I think that’s the best way to build PlayBook apps and when I’ve talked to people I’ve gushed that it’s the best mobile Flash development experience we have. But there are also a lot of JS/HTML developers who will want to deploy PlayBook content and RIM has included a WebWorks SDK to make that possible. So I took it for a spin, porting my landmark finder to the device.

Getting Started

The first thing you have to do is grab all of the required files. You first need to make sure you have the AIR 2.5 SDK (which, since we’ve moved to 2.6, can be found here). Then you can grab the WebWorks SDK and the simulator files from the BlackBerry developer site. By default the WebWorks SDK installs to your user directory, so if you can’t find it, look for a folder called bbwp.

Building the Application

There really isn’t any special trick to getting jQuery Mobile working on the PlayBook. It works perfectly and it performs really well. My application just took the core jQuery Mobile framework and included two different screens; one for getting the location and another for a list of landmarks that are close to you. It uses the GPS coordinates from the device and then goes out to Geonames to find a list of landmarks in the area. Selecting one of the landmarks takes you to Wikipedia so you can find out more about it.

The code (above) doesn’t have anything particularly tricky, which is a testament to how easy it use to use the WebWorks SDK if you’re an HTML/JS developer. I was even able to use the standard HTML5 Geolocation AP. RIM hasn’t announced any plans for geolocation on the device so I’m not sure what the final status or experience will be. Today on the simulator you can get a geolocation object but you can’t get position, so I just default to using the lat/lng from my neighborhood here in Seattle.

Creating the Config.xml File

The PlayBook uses a manifest file, config.xml, to control the title, icon, and features on the device. The config.xml file is pretty straightforward and if you’re familiar with app manifest files you should have no issues. There is also some decent documentation here. Mine is below.

There were a couple of gotchas I ran into when I dove into the config.xml file. The first was the access attribute. Instead of asking for blanket access to the web, you have to specify which domains your application will access. In my case it was just the Geonames API. But if you’re pulling down remote source files (say from jQuery) you’ll also need to include that domain.

Compiling the Application

Compiling and deploying the application was a bit tougher. Right now the only tools I could find are command line tools for the compiling, packaging, and deployment of WebWorks applications. The first thing you have to do is zip up all of the files you want to include in the application. The packager tool converts a .zip file into a .bar file, the native file format of the PlayBook. So I selected my config.xml file, my index.html file, and then all of the css and js files from jQuery to create The tool you use to do that is in the bbwp directory in the root of the WebWorks SDK directory. Here’s the command. You can also specify an output directory with a -o switch. By default it creates a bin directory in the directory you’re in and puts the .bar file there (my WebWorks SDK is in an SDKs folder in my Library).


That will build a file in the bin directory of your project.

Deploying to the Simulator

I won’t get into how to set up and configure the simulator because that’s been covered in other places. But once you have the simulator set up, you can test and deploy your application. Within the bbwp directory you’ll find a blackberry-tablet-sdk/tools directory, which has a bunch of libs for deploying and signing your application. To test it on the simulator you’ll use blackberry-deploy. To deploy it you have to have the simulator in development mode and know the IP address of the simulator and the password on the device. With that info you can deploy your .bar file to the simulator with this command.

blackberry-deploy -installApp -device  -package "bin/" -password 

And now you should be all set!.

Word of Caution

This particular example isn’t fantastic for the simulator because it uses the geolocation APIs, which aren’t supported currently on the simulator. But if you’re building a straight jQuery Mobile app (or any HTML/JS app) then these steps will get you compiled and on the device. The next step is to make sure your application is signed and then you can submit it to RIM’s App World and it’ll be ready to use when the PlayBook launches.

Government 2.0 Architectural Patterns

Having co-authored a book for O’Reilly titled “Web 2.0 Architectures”, which largely focuses on patterns of things deemed to be “web 2.0”, I have turned my mind towards specializing many of these towards government.
The scope for this work would be IT systems that provide services to citizens.  There are several concepts that seem to be no-brainers when you look at them at a high level. However, there may be red tape or other legislative or legal reasons why they cannot be simplified.
A white paper is in order, however here are some preliminary thoughts:
1. Please don’t ask me for information you already have!  Governments should avoid asking their users for information they already have.  Practical:  I fill out income tax forms every year in which I have to enter data that is used to calculate my personal taxes.  The reality is that my government already has most if not all of this information.  My employer has to file my income with them, charities already have filed copies of receipts and the government knows exactly how much money they have deducted already for federal and provincial taxes.  Why am I being asked to enter that information into a form again?  Perhaps figuring out a confidential way to send me my completed tax return and then allow me to file “adjustments” would be more efficient from a user perspective?
2. Open Data.  The Government of Canada has recently made several sets of data open for the people who paid for the data (citizens) to access.  (  I applaud this move and now we have a responsibility to help them specialize the way data is published at the next level.
3. Allowing multiple channels of communication to be reconciled.  The Canadian government again had a great program for electronic passport applications and renewals, which reconciled electronic forms data and “in person” interviews.  More government departments need to be savvy and adopt this sort of system.
4. Use of Social Media!  I’ve seen some government departments shun social media.  Sometimes this is based on a fear or perception that the conversations will be antagonistic towards their department.  Guess what?  It is far better to be part of a conversation than to be defined by it.  Get over your fears and get involved with social media.  Use it as a tool to figure out where the common practices are that annoy end users and how to best fix them.  Find out what is working well and what is not.  Find out what the public does not know and use social media to help convey solutions to us.  Use social media to get citizen input and ideas.  Vancouver City council has done this! (  This involves letting go of ego and recognizing that good ideas can come from anyone.
5. Electronic records.  The Ministry of Health in BC has started moving to EMR (Electronic Medical Records).  This is a huge step in the right direction.  I trust this far more than having all my records sitting in a single doctor’s office in paper format.  
6. Use SOA!  Services to citizens are core.  If you can take services and allow 3rd parties to provide them, this could make all our lives simpler.  With this comes great responsibility for things such as ensuring records are not breached or files compromised, however I believe this can be done in a manner that serves the greater public interest.  The use of services could be applied to many contexts including Government to Government, Government to Citizen and Government to Industry (Business).
7. Protect my data!   Please take steps to protect my personal data from hackers or accidental leaks.  Adobe makes a great product called “Rights Management” (part of the LiveCycle ES platform), which can mitigate the impact of disasters, even after they have occurred.   
8.  Use technology to become more open and transparent.  Allow the decisions made, data available and rationale being closed voting to be publicly accessible.  This would be easy to implement by using a Robert’s Rules XML schema to mark up data that would allow anyone to find out who attended meetings, who voted on various topics, and categories and more.  The public would love it more than finding out later or worse, being critical based on false beliefs.  Transparency should be a cornerstone.  Isn’t this what democracy is all about anyways?
9.  Accessibility by Joe Average.  Typically, access to senators, heads of state and other high ranking public officials has been perceived as impossible for the average person.  Using the collaboration tools available via the Internet, governments can easily allow citizens to have better access to information and individuals charged with the fiduciary duties of public office or as public servants.   Products like Adobe Acrobat Connect could be used to have a citizens briefing once a week to allow individuals a platform to engage with government on various topics.  Obviously this wouldn’t work in a general setting (e.g.: Obama allows any citizen to discuss any topic), however scoping this to narrow issues such as local municipal politic issues could have a huge impact.
Anyways, these are some initial ideas I had.  If you think they are bunk or have others, please leave a comment.