Update: as others have mentioned in the comments, this is not just for mobile. You can now create desktop AIR applications that don’t require a separate runtime.

We recently launched the Adobe AIR 3 beta SDK that you can download on the Adobe Labs site. By far the most exciting feature for me is the new captive runtime support. This allows you to bundle the AIR runtime with your application rather than requiring the user to install it. When you build an AIR app for iOS this happens already as the AIR runtime is not allowed. This essentially brings that same workflow to Android.

This is important as many negative comments have been made about apps in the Android market because of the separate runtime requirement. So does this mean that all your apps should now use the captive runtime feature? Well that all depends. You obviously won’t get automatic updates when new versions of the AIR runtime are released. You will have recompile your app using a new captive runtime version. Your application will also increase in file size (~8mb) as you are now bundling the runtime. This hasn’t been a huge issue on iOS but it is something to think about.

Our newest evangelist, Andrew Trice, wrote a great blog post about this new feature so check it out if you want more details. It is very easy to create a captive runtime application as it is simply a new target (apk-captive-runtime) that you provide to ADT when you compile. See below for the new ADT options:

1
adt -package -target ( apk | apk-debug | apk-emulator | apk-captive-runtime ) ( CONNECT_OPTIONS? | -listen <port>? ) ( -airDownloadURL <url> )? SIGNING_OPTIONS <output-package> ( <app-desc> PLATFORM-SDK-OPTION? FILE-OPTIONS | <input-package> PLATFORM-SDK-OPTION? )