My first AIR for Android development experience

June 28, 2010By 47 Comments

I recently got a Nexus One phone and I’m very excited about the development potential with AIR, Flash Player and Android! Since this is a whole new world to me, I thought I would write up a post summarizing my first experience with Android mobile development. I had ventured down the iPhone/Objective-C path awhile back but the syntax was so different than my Java and other development experience and with my limited time for side projects it just wasn’t working for me. Being able to leverage my ActionScript/Flex skills for the mobile world is beyond cool! Before going into the details of my first little app however, I think it’s important to go over some terminology to clear things up for those who may not know all the mobile jargon.

iPhone: a type of phone designed by Apple (multiple manufacturers). Runs the iOS Operating System, same as the iTouch and iPad. Multiple models include iPhone 3G, 3GS and the recently announced iPhone 4, which will run the iOS version 4.
BlackBerry: one of the first smartphones to become popular among business users, and developed by Research In Motion (aka: RIM). Runs a proprietary BlackBerry OS.
Nexus One: a type of phone manufactured by HTC for Google, runs the Android OS
Droid: a type of phone made by Motorola, runs the Android OS
Android: Google’s mobile OS (Operating System) originally launched in September, 2008
Eclair : The codename for Android OS version 2.1
Froyo: The codename for Android OS version 2.2 – just recently announced
HTC : a cell phone manufacturer, like Motorola
apk : An android package file extension. This is the type of file needed to install to the Android OS.
Adobe AIR 2.5 – the version of AIR that has support for Android, with tools to package apk files from the command line. With this version you can turn an AIR app into an Android app. Adobe announced the AIR for Android Public Beta program in May, here are details of the announcement.

My first app…
Since I’m a big runner, I decided it could be useful to develop a run tracker application for my phone. Serious runners tend to keep track of their mileage, pace, etc. so they can track their progress for training purposes. So with this in mind I went into Flash Builder and created my ‘RunTracker’ project. It’s made up of some tabs that allow you to input your running data and calculate pace, as well as show your history and pace trend in a simple line graph. The app uses SQLite (local database built into AIR) to save the run data. Here are a few screen shots taken from the Android emulator. The code for the project and the 2.1 (Eclair) and 2.2 (Froyo) versions of the apk are located here for reference. The Froyo version was built as a debug version (see notes about debug below).



A quick summary of the steps is outlined below. More can be found in the developer documentation at the AIR for Android Public Beta site. The Developing_AIR_apps_for_Android.pdf is a must read document and outlines all of the steps in depth. There’s also a great article by Christian Cantrell on Adobe Devnet that goes into designing apps for multiple platforms and screen resolutions that is worth a read here too.

1) Download the AIR 2.5 SDK and Android tools. Everything you need can be found in the documentation once you sign up for the AIR for Android public beta.

2) Create your AIR app to be used for mobile. NOTE: You need to change the WindowedApplication to an Application tag and then be sure to set visible to true in your app-descriptor.xml file, for example:

                <!-- Whether the window is initially visible. Optional. Default false. -->
		<visible>true</visible>

The following icon sizes should also be specified for low, medium, and high density screens respectively. This is the icon that will show on your phone menu.

    <icon>
          <image36x36>assets/icon36.png</image36x36>
          <image48x48>assets/icon48.png</image48x48>
          <image72x72>assets/icon72.png</image72x72>
   </icon>

3) Package your application using the adt command line tool and package an AIR application for Android. For example:
adt -package -target apk -storetype pkcs12 -keystore ../../myCert.p12 RunTracker.apk RunTracker-app.xml RunTracker.swf assets/runner72.png

UPDATE: If you want to create a debug version of your application so you can see errors and stack traces, you need to add -debug to the target such as:

adt -package -target apk-debug -storetype pkcs12 -keystore ../../myCert.p12 RunTracker.apk RunTracker-app.xml RunTracker.swf assets/runner72.png

Then install your apk to the device and while connected run the following command from the command line:
adb logcat

Then run the app in the device and you should see the trace of what’s happening in the console.

4) Install it to either the Android emulator or your smartphone device. NOTE: The emulator is VERY SLOW. I would HIGHLY recommend using a phone if you have one. I almost gave up on AIR for Android development when I had only tried the emulator because of the performance, but it’s a whole different experience when installing to your phone so don’t be dismayed! You can use the -r option to reinstall it after the first time. Make sure to exit out of the application before doing the re-install. You can specify a -d for the phone or -e for the emulator, but if you only have one of them connected or running it will use that one by default. For instance, since I have my phone connected and my emulator running, I would use this option to install to my phone only:

adb -d install -r RunTracker.apk

Also, as part of the development I noticed a few things to point out. Certain components don’t work so well out of the box without some tweaking. For instance on the Spark NumericStepper, the default arrow buttons were much too small to click on easily on the Nexus One. I decided to take advantage of the Flex 4 skinning features and create a custom skin for my NumericStepper with increment and decrement buttons that used icons and were bigger than the default ones. Since by default the keyboard would pop up on the Android device when the user clicked into the NumericStepper (so numbers can be entered versus using the arrow keys), I also added a restrict property to the TextInput part of my custom NumericStepper that would restrict the entered values to numeric only.

There are more features I plan to add to this little app, (geolocation APIs to actually track the run etc) and I’ll continue to play around with things as the AIR for Android features progress, but it was fun to get my feet wet and see what it was about. I encourage you to do the same. And if you’re a runner too, grab the apk and try it out!

Filed in: Adobe AIRFlex 4Flex/AIR Tags:

About the Author ()

Comments (47)

Trackback URL | Comments RSS Feed

Sites That Link to this Post

  1. Flex learner | Blog | My first AIR for Android development experience | June 30, 2010
  1. Great post. I too have recently started developing on Android using the AIR SDK, very exciting times ahead. http://www.dgrigg.com/post.cfm/06/23/2010/Developing-Flash-applications-for-Android

  2. Nikos says:

    very good thanks , I can’t even get the emulator to connect to the internet :)

  3. ryancanulla says:

    Great summary! I’ll certainly be trying this soon!

  4. Nikos says:

    HI, what build of AIR does your apk target?

  5. moshe says:

    Very nice sample.
    I tried this and when activating the adt and after entering the password I got

    C:\Users\moshe\Downloads\Air-Flex\RunTracker\bin-debug\RunTracker-app.xml(28): e
    rror 103: application.version is an unexpected element/attribute
    C:\Users\moshe\Downloads\Air-Flex\RunTracker\bin-debug\RunTracker-app.xml(163):
    error 104: application.versionNumber is required

    even though I put 1.1 in the RunTracker-app.xml

  6. moshe says:

    Hi Devgirl
    the answer was in the question I had to change version to versionNumber in the app.xml

  7. simon says:

    I can’t even get the AIR runtime to install to the emulator on mac. I have no idea what I’m doing wrong

    error:
    can’t install ‘Runtime_Emulator_Froyo_20100705.apk’ because it’s not a file

    …is what terminal tells me. I’ve cd’d into my tools folder where I unzipped the apk from adobe. Yet, adb refuses to install it….anyone got an idea here?

    • devgirl says:

      Hi Simon, unfortunately you have come across a bug that others of us have also seen. It appears to be related to the emulator only. I have heard there’s a bug tracking this, I will see if i can find more info about it and post it here. Thanks! Holly

    • matt says:

      I had the same problem on a mac, here is how I solved it. When you download it, make sure you do save link as or whatever. When you see the icon of the file downloaded, it should be a file icon and not a folder. If the extension has a .apk.apk at the end, it should still install. Make sure you arent unarchiving anything on the apk.

  8. Luiz says:

    Very inspiring post! Thanks a lot. BTW, can you please shed some light on how AIR run-time fits into Android Software Stack? I doubt it uses Dalvik VM for accessing native capabilities of the device. Right? AIR (runtime) probably has some direct channels of communication with core (native) libraries. Maybe you have some links to materials where this architectural relationships between AIR and Android are discussed?

    • devgirl says:

      Yes, AIR is actually running natively on Android. I can’t really give much detail on this other than point you to the documentation located on the prerelease site: , but they are continuously putting updates out so definitely check it out regularly. Thanks! Holly

  9. Rupert says:

    Hi Devgirl,

    Nice application. As far as I get I could never manage to build an air application that uses Application as it’s main class, either I can run yours.
    I wondered how do you get this running into Android 2.2 emulator since it always crashes on mine. Could you post some tip?
    I’m using the lastest air runtime and the android sdk 2.2 lastest revision.

    thanks in advance.

    • devgirl says:

      Hi Rupert! Can you let me know what happens when you run it with Application as the main class? Did you set visible to true in the app-descriptor, and did you ensure you’re using the right AIR 2.5 build that supports Android?

      I actually built the posted apk version with Eclair, which is why it’s probably not working for you on the emulator, but I’m recompiling a new one for the Froyo build and will add it to the project and post it. Thanks! Holly

      • Rupert says:

        Hi! What happens is that the application seems to start whole screen turns white and then the emulator shuts down the application an returns to the apps main panel. It’s not just a problem with your application particulary but also happens if I build an air 2.5 application and use Application or WindowedApplication as main application file.

        kind regards,

        Rupert.

        • devgirl says:

          I just posted the 2.2/froyo version of the apk at the same location as the rest of the project (different name from the eclair one) http://tourdeflex.adobe.com/AIR-for-android/. I built this as a debug apk version so maybe you could run the adb logcat after installing it to your emulator and then run it on the emulator and let me know if you see some specific errors in the console? I added an update in my post about the whole debug option. Let me know what you find, thanks! Holly

      • devgirl says:

        Rupert, I asked a few of my Adobe friends about this and heard that their is a bug with using the emulator with froyo where what you described will happen if you are using Spark components in your app. Apparently all MXML components should work. Let me know if you find this to be the case, thanks! Holly

      • Rupert says:

        Hi Holly,

        I have just installed the froyo version of your app on the android 2.2 emulator and it didn’t worked. Regarding trying to run the previous version of your app on eclair was not posible since I couldn’t find the appropiate air 2.5 runtime for eclair emulator on the pre-release site.

        I really appreciate your efford of clarifying this issue by asking your Adobe friends.
        It would be nice if they were made some reference to this issue on the prerelease site so we could have avoided all this fruitless bug hunting. A bit better documentation on prer-elease site won’t do harm.

        Thanks a lot again. I will keep an eye on your blog.
        best regards.

        ps:
        Here is the log cat it’s even resumed is quite long so please remove it if you wish:
        I/ActivityManager( 63): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0×10200000 cmp=app.RunTracker/.AppEntry }
        I/ActivityManager( 63): Start proc app.RunTracker for activity app.RunTracker/.AppEntry: pid=241 uid=10034 gids={}
        D/dalvikvm( 63): GREF has increased to 301
        I/ARMAssembler( 63): generated scanline__00000077:03545404_00000004_00000000 [ 47 ipp] (67 ins) at [0x3486c8:0x3487d4] in 945931 ns
        D/dalvikvm( 241): Trying to load lib /data/data/com.adobe.air/lib/libCore.so 0x43e3d8f0
        D/dalvikvm( 241): Added shared lib /data/data/com.adobe.air/lib/libCore.so 0x43e3d8f0
        D/qemud ( 38): fdhandler_accept_event: accepting on fd 10
        D/qemud ( 38): created client 0x150b8 listening on fd 15
        D/qemud ( 38): client_fd_receive: attempting registration for service ‘sensors’
        D/qemud ( 38): client_fd_receive: -> received channel id 8
        D/qemud ( 38): client_registration: registration succeeded for client 8
        D/qemud ( 38): fdhandler_event: disconnect on fd 15
        D/ReleaseLogging: ( 241): 0
        D/dalvikvm( 241): GC_FOR_MALLOC freed 2531 objects / 201008 bytes in 122ms
        I/dalvikvm-heap( 241): Grow heap (frag case) to 4.233MB for 1680016-byte allocation
        D/dalvikvm( 241): GC_FOR_MALLOC freed 703 objects / 43984 bytes in 89ms
        D/dalvikvm( 241): GC_FOR_MALLOC freed 217 objects / 1693544 bytes in 141ms
        I/dalvikvm-heap( 241): Grow heap (frag case) to 3.146MB for 582416-byte allocation
        W/ActivityManager( 63): Launch timeout has expired, giving up wake lock!
        D/dalvikvm( 241): GC_FOR_MALLOC freed 8 objects / 480 bytes in 100ms
        I/ActivityManager( 63): Displayed activity app.RunTracker/.AppEntry: 10089 ms (total 10089 ms)
        W/ActivityManager( 63): Activity idle timeout for HistoryRecord{4400f358 app.RunTracker/.AppEntry}
        I/ActivityManager( 63): Process android.process.acore (pid 154) has died.
        I/DEBUG ( 31): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
        I/DEBUG ( 31): Build fingerprint: ‘generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys’
        I/DEBUG ( 31): pid: 241, tid: 241 >>> app.RunTracker <<<
        I/DEBUG ( 31): signal 11 (SIGSEGV), fault addr 00000258
        I/DEBUG ( 31): r0 00000158 r1 00000001 r2 81a84b1c r3 00000f28
        I/DEBUG ( 31): r4 00000158 r5 00000100 r6 000000e9 r7 00000082
        I/DEBUG ( 31): r8 00000001 r9 814ed8bd 10 00000009 fp 45a22b68
        I/DEBUG ( 31): ip 81a84b1c sp be9c80b8 lr 8151784b pc 8153684a cpsr 00000030
        I/DEBUG ( 31): #01 lr 8151784b /data/data/com.adobe.air/lib/libCore.so
        I/DEBUG ( 31):
        I/DEBUG ( 31): stack:
        I/DEBUG ( 31): be9c8078 8156dd75 /data/data/com.adobe.air/lib/libCore.so
        I/DEBUG ( 31): be9c8088 be9c8114 [stack]
        D/Zygote ( 33): Process 241 terminated by signal (11)
        I/ActivityManager( 63): Process app.RunTracker (pid 241) has died.
        I/WindowManager( 63): WIN DEATH: Window{44018cc0 SurfaceView paused=false}
        I/WindowManager( 63): WIN DEATH: Window{44019570 SurfaceView paused=false}
        I/WindowManager( 63): WIN DEATH: Window{44017e30 app.RunTracker/app.RunTracker.AppEntry paused=false}
        I/UsageStats( 63): Unexpected resume of com.android.launcher while already resumed in app.RunTracker
        I/BootReceiver( 63): Copying /data/tombstones/tombstone_06 to DropBox (SYSTEM_TOMBSTONE)
        D/dalvikvm( 63): GC_FOR_MALLOC freed 8208 objects / 420448 bytes in 333ms
        W/InputManagerService( 63): Got RemoteException sending setActive(false) notification to pid 241 uid 10034
        D/dalvikvm( 63): GC_FOR_MALLOC freed 584 objects / 211152 bytes in 222ms
        D/dalvikvm( 63): GC_FOR_MALLOC freed 349 objects / 15200 bytes in 322ms
        I/dalvikvm-heap( 63): Grow heap (frag case) to 4.943MB for 72720-byte allocation
        D/dalvikvm( 63): GC_FOR_MALLOC freed 280 objects / 14536 bytes in 155ms
        W/KeyCharacterMap( 118): No keyboard for id 0
        W/KeyCharacterMap( 118): Using default keymap: /system/usr/keychars/qwerty.kcm.bin

  10. Rupert says:

    I see in the bug fixes of the Air runtime release of 20100720 says
    “2635683 – Application using Spark components Crashes on Froyo Emulator”

    so I will give it a try a soon as I can.

    kind regards.

    • Rupert says:

      Yeap is running now. However when I click an input field the application seems to close/crash and ui elements seems very big and out of the visible are a of screen.
      I will do some tests later at home.

      thanks you.

  11. moshe says:

    Hi Rupert

    I have the same problem and I saw what you found regarding
    “2635683 – Application using Spark components Crashes on Froyo Emulator”
    but the only findings in google were in french
    can you alaborate about what should be done

    moshe

  12. Rupert says:

    Hi moshe,

    As far as I could try the crash problem does not happen anymore.
    To solve this issue you have to install the lastest Air Runtime For Android on the emulator and also update your Air sdk to the new released version.
    Then rebuild your project and reinstall the apk on the emulator.
    Take in mind that you must use Application and not WindowedApplication as the main project class.

    hope this helps,

  13. anangphatak says:

    Hey,
    Thanks for the tute. However, I have this app in FlashBuilder 4. I am pretty sure I followed directions on prerelease and your blog.

    Till I did not add the argument “assets/images/*.png” to adt I did not even get the Adobe Agreement screen.

    However, I my app is getting stuck at the “progress bar” 1/3rd full.

    I am ok to share code as this is just a POC, but I would like to know what I am doing wrong.

  14. Bing says:

    Hi devgirl,

    This url seems broken,
    http://tourdeflex.adobe.com/AIR-for-android/
    Can you tell me how to get your RunTracker source code? or apk files, Thank you very much.

  15. James says:

    Hi, I’m just getting started with AIR for Android and this is really interesting. I know I’m abit late but I’d be very interested to see your code and it’s coming up as not found in the link in your blog. Is it possible to repost it somewhere maybe please? Thanks. :)

  16. James T says:

    Hi im new and i’ve created 4 apps on the market and i am now selling one for £0.50.
    I just want to know can i create an app on eclair(2.1) and froyo(2.2).
    Is it possible and if please can you tell me how!!!

  17. aryo says:

    i can’t install adobe air for my android emulator, teh web says invalid testig opportunities

    how should i test my app then?

  18. Great article, I had come across this a long time back and waited for something simpler. Life is much better for Flex developers like you and me now with Flash Builder Burrito:
    http://blog.air4android.com/?p=13

  19. androidstudent says:

    hi devgirl,

    I’m a beginner in android as well as in adobe flash,flex etc.In my system

    windowsxp,java1.6,eclipse(helious),android revision 9 with sdk 2.3.Added the adt plugin

    for eclipse and developed apk (helloworld ,conver )example and worked on emulator,i

    don’t has an actual device.

    Now a problem raised is to create a flash application that has to run on emulator or

    android.
    for that i googled a lot in your blog also its not explaining how to start a

    programe.I dont have adobe tools like flash builder or flex builder,but AdobeAIRSDK and

    flex_sdk_4.1.0.16076 is there and i combine flex_sdk_4.1.0.16076 with AdobeAIRSDK,and

    saved in a folder in my D: drive.

    I had gone through the

    “http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-

    7fd9.html” to create the swf file and its working with adl command and installed the

    AdobeAIRInstaller.exe on double clicking the *.air application after showing the

    installation location “The application could not be installed. Try installing it again.

    If the problem persists, contact the application author.”this error is comming what is

    the problem ,ok that is a simple appl how the same can be done for android.
    please help me if you can,waiting for your reply.

    Thanks a lot in advance and sorry for bad english.

    • devgirl says:

      Hi there, have you packaged your application such as shown in my post from above using the adt -package command? Once you have the .apk android file created from running that command, you then need to install it to the emulator from the command ine using adb such as:

      adb -e install -r .apk

      But what might be easier for you now rather than doing all of this command line is to download Flash Builder Burrito from here -> http://labs.adobe.com/technologies/flashbuilder_burrito/. You can build the android .apk file through Flash Builder and then run it in the simulator there…

      Hope that helps! Holly

  20. androidstudent says:

    hi devgirl,

    Thanks for your reply.As per your suggestion for flash builder ,i logged in for the

    trial version from
    “https://www.adobe.com/cfusion/entitlement/index.cfm?e=labs_flashbuilder_burrito” it

    take a long time to download, so i
    started with adt command line with the source mentioned at the blog

    “http://tourdeflex.adobe.com/AIR-for-Android/” from there
    i downloaded source files and save to a folder .
    then by using

    a combination of flex_sdk_4.1.0.16076+AdobeAIRSDK (that has android apk creation

    facility)that set as path variable in my
    system.

    first go to this link http://tourdeflex.adobe.com/AIR-for-Android/
    it shows a svn type file listing then clicked on the srcview/

    there Download source 36k i got the “RunTracker.zip”

    unzipped that and open the src folder and do the same as explained in
    “http://help.adobe.com/en_US/air/build/WS144092a96ffef7cc4c0afd1212601c9a36f-8000.html”

    changed the “Required” fields as
    RunTracker
    RunTracker
    1.0
    RunTracker.swf

    then in cmd i typed
    D:\21-4-2011\src>amxmlc RunTracker.mxml
    (some changes in RunTracker.mxml as the /> is not supporting so added

    ,, etc and
    copied the assets to “D:\21-4-2011\src\com\devgirl\runtracker\skins” for getting the

    png)
    then it generates the “RunTracker.swf”

    just checked the swf by adl command its working fine

    and then
    D:\21-4-2011\src>adt -certificate -cn SelfSigned 1024-RSA sampleCert.pfx godblessyou

    created sampleCert.pfx

    after that
    D:\21-4-2011\src>adt -package -storetype pkcs12 -keystore sampleCert.pfx RunTrac
    ker.air RunTracker-app.xml RunTracker.swf RunTracker.mxml com assets

    it generates the “RunTracker.air”

    that all for the flash project creation but my problem is how to generate the apk

    because i’m using the eclipse adt plug-in it
    will create the apk in the bin folder, there a onCreate method ,main.xml,string.xml etc

    etc are there so where do i had to do
    the program or do all the same will generated by the flash builder burrito .

    please explain me, sorry for the long posting

    thanks for the reply

  21. devu says:

    If yo guys are interested in building apps for Android check this out http://www.flaemo.com/blog also calling all skilled devs (included devgirl obiously :)) willing to help.

  22. Javad says:

    Hi,

    I thought you might be interested in an Android AIR Bridge I have been working on. It allows you to create mixed Flex/AIR and Android applications with serialisation using AMF. I believe this should fully open up Android as a platform to Flex developers.

    It is available to check out from at google code from http://code.google.com/p/android-java-air-bridge/.

    You can also view a demo on my blog at http://javadz.wordpress.com.

    Javad

  23. Natwins says:

    Hi,

    I’m building an application using air 2.5, and I need to run it on android 2.1 device. Is there a way to dowload the air runtime.apk for eclair(the pre release version). I searched it every where but the prerelease version is not available. Can you please provide a link to download it.

    thank you.

    natwins

  24. Amit says:

    Hi

    I am facing the problem that i have created a custom component based on hgroup. while testing it when i touch it the softkeyboard appears always. ihave used the click event on the hgroup.

    Please help.

  25. Michael says:

    Dear Holly,

    Bear with me plse because its a bit of a reader.

    specs: using Flash CS5 & Flex builder 4.5 & Air 2.7.1

    Im trying to develop a flash multitouch app for the samsung galaxy tab(my test device) and others like that.

    The .swf is coming along and multitouch is great flash rules if it comes to RAD.

    But…:
    Deploying it on the device as an .swf and using a flashplayer from the android market results in the screen trying to resize/zoom when using more then one finger.

    Trying to solve this I published it as a Flash AIR file and used the Flex builder
    to convert it to an .APK for the device; hoping that disabeling the resize options in the air settings would allow me to move two fingers over the screen without this fun-spoiling effect.

    This is where I got lost.
    The generated .swf works fine in the flash player on the device and on the pc.

    When using flex builder to create the .APK i discovered(with some help from googling)that the Flash CS generated XML file had version 2.0 for the xmlns; also it generates a Version attribute in the XML that needed to be changed to versionNumber.
    Creating the XML from Flex builder would upset Flash in that it would fail building the AIR file. Precreating the XML by starting from FLash CS5 would create an AIR file that works great on the PC, but then generating the .APK would fail on the XML requiring a version number higer then 2.0 and VersionNumber instead of Version attribute.
    Manually changing these in the XML in Flex wouold sucsessfully generate a .APK but when deployed on the device, it just produced a blank screen. Trying a tabbed template for the xmlns it would show the tab title but the rest stays white.

    Tinkering with the xml, although generating an .APK file, obviously is not working.

    So my question is: Is there an incompatibility issue between my flash cs5 and my flex builder that causes this?

    I’m using the trial versions so my time testing is limited.
    If I cannot determine if flash will be adequate for my project; performance wise but foremost because of the multitouch zoom thingy.
    My other option is ‘regressing’ to mobile java or c++ but i would really like to be able to use flash its creative and graphic capabilities to speed up the development cycle.
    I am a one person company and investing in flash without beeing able to use it for mobile deployment is, at least for now, not an option.

    Please help me if there is something im doing wrong so I can get a simple .fla thru the flex builder to a working .apk on my devices.

    Highest regards,

    Mac

    • Hi there!

      I’m a little confused about exactly what you’re trying to do, however, I can tell you that if you need to use both Flash CS and Flash Builder (note that it was renamed to Flash Builder from Flex Builder) – you can use Flash Professional from CS 5.5 (upgrade from your current version) and Flash Builder 4.5.1 out of the box and they should both generate AIR apps targeted with the AIR 2.6 namespace/xmlns. As you probably noticed, you can’t use the AIR 2.0 version to build TabbedViewNavigatorApplication apps etc because that wasn’t supported in that version.

      All that said, I don’t see exactly why you need Flash Professional CS at all if you’re now trying to build .apk’s to run on your android devices because those are not going to be using the Flash Player in the browser, they are going to be installed as separate apps on the device using the AIR runtime (which includes the flash runtime) and will get installed automatically on your android device if it’s not there already. So you can just use Flash Builder 4.5.1 instead to build a mobile application targeted for your android device that has the multitouch APIs, Tabbed Application support and a bunch of other options.

      You may want to download the AIR Launchpad on Adobe Labs and use that to generate a quick sample project that you can import into Flash Builder to get started with all the APIs. There’s a multitouch sample that you can select to be generated in there too. I wrote it for people to get started w/ mobile dev’t quickly in Flash Builder. It targets the AIR 2.6 version just like Flash Builder 4.5.1.

      I know it’s confusing, but I hope this somehow helps :)!! Holly

    • One more thing… If you’re comfortable with Flash Pro then it might also just be a matter of getting the CS5.5 version to generate AIR for android projects from there with this latest version…

      http://www.adobe.com/cfusion/tdrc/index.cfm?product=flash&loc=en_xap

      Here’s a great blog to reference for this as well:

      http://www.paultrani.com/blog/index.php/2011/04/flashprocs55/

      Cheers!
      Holly

  26. Michael says:

    Holy…Holly =)

    Your name and evangelism go well together.
    Your confusion about my confusion has made me see the light.

    As I was starting to suspected; I am having compatablility issues.

    I was confused about why I had to go through so much trouble to get two sybling programs to cooperate, while all the time I was running a fake CS5.5 trial and not the real thing (and probably a trojan or two but i´ll deal with those later).
    The effort I put in to get my .APK running fast enough, blinded me from seeing that I was using the erroneous software.
    So thank you for taking the time to help out and color me stupid.

    I will be removing the Fake Flash CS5 and try again with a valid demo.
    Beeing a software developer, there´s not much I despise more then hacked software.

    As your picture and title suggest you are truly an angel for helping me. Although… having played some MMORPG’s I still suspect you to be a bald bearded bloke.
    In wich case I would still be equally gratefull afcourse.

    Thx a mill..

    Mac

  27. Kerry Taylor says:

    Hi Holly,

    I have been developing apps for Android using Flash Pro cs5. Do you know if the mycert.p12 is restricted to each app it is packaged with, or can one mycert.p12 be used for multiple apps. I’ve been using one certificate for each app I develop.

    Also, would your friends at Adobe know anything about running Flash Pro CS5 on mac os with lion. I recently bought a mac mini running lion and my Flash Pro CS5 program throws errors when I try to create a certificate and when I try to publish the apk file.

    I ended up installing snow leopard on a partitioned external hard drive to get my Flash Pro CS5 program to run with lion. So far no problems.

    Thanks for your help.

    Kerry

Leave a Reply