Developing With Adobe Flash Professional and an Asus Transformer Prime (Or other new tablets)

Sometimes, the software you’re trying to use for a project doesn’t quite work with the hardware you have, which is the problem I’ve been having at work recently. I’ve been porting digital learning objects developed in Adobe Flash over to AIR for Android, so that users can use them on tablet devices without an internet connection. To do this, I’ve been using Flash Professional CS5.5, and now CS6, along with an ASUS Transformer Prime (TF201). This is a bit problematic, due to a bug in both CS5.5 and CS6 – when trying to debug on or deploy to the Transformer, Flash can’t see the tablet. It took a bit of work, but I figured out how to fix the issue.

 

So first off, I had to figure out what caused the issue. Looking into the Adobe AIR SDK folder, I noticed that it had a copy of the ADB utility from the Android SDK, which is used to interact with Android devices in development mode via the terminal. This was clearly how Flash was detecting Android devices, and installing debug or release versions on the device, and it just wasn’t seeing the Transformer, where the ADB from the Android SDK was. That’s when I got the idea for the fix.

 

All of this is done on Windows, but it could be adapted to OSX pretty easily – I just don’t have an OSX install available to get the paths from.

Software Needed:

  • Flash Professional CS5.5 or CS6 (This also works with Flash Builder 4.6, though the folders are in a different place)
  • The Android SDK
  • Adobe AIR SDK 3.2 (Comes with CS6, you can overlay it on CS5.5 or Flash Builder 4.6 easily)
  • Administrator rights on your computer

Step 1

Close Flash/Flash Builder.

Step 2

 Find the installation directory where you put the Android SDK (mine is at C:\Program Files (x86)\Android\android-sdk\). In this folder, you’ll find another folder called platform-tools. In that folder are the files we need. Select aapt.exe, adb.exe, AdbWinApi.dll, and AdbWinUsbApi.dll. Copy them.

Step 3

Find the Adobe AIR 3.2 SDK folder for your product. For me, it was at C:\Program Files (x86)\Adobe\Adobe Flash CS6\AIR3.2\, but if you’ve overlaid AIR 3.2 on CS5.5 or Flash Builder, your path may be different (depending on how you overlaid it). Once you’re in this folder, go into lib\android\bin (lib is a subfolder of your AIR folder). Paste the files from step two, overwriting any duplicates. If your computer says that you can’t because the files are in use by another program, open your task manager and see if adb.exe is running – if it is, end its task.

Step 4

Restart Flash (or Flash Builder). Try debugging on device, which should now detect your device and work normally. Success!

And there you go, fully function on device debugging and deployment on your Transformer! I would assume this also works with any other tablet that Flash can’t see, but shows up in the SDK’s version of adb – leave a comment if you know of anything else it works for.

This entry was posted in Development, Flash and tagged , , , , , , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

3 Comments

  1. Martin
    Posted November 9, 2012 at 10:51 am | Permalink

    hi theo,

    a had the same problem running flash cs6 and air 3.4. the adb version in C:\Program Files (x86)\Adobe\Adobe Flash CS6\AIR3.4\lib\android\bin was 1.0.26. it did not recognize my tablet “asus transformer pad tf700” which was connected via usb.
    but adb version 1.0.29 does, which is part of the latest android sdk (r20). so i copied the 4 files you mentioned to the directory above, and voila, that’s it! 🙂
    i can now publish from flash directly to the device and start the app.

    thanks a lot, you saved my day!

    martin

    • Theo Keeler
      Posted November 21, 2012 at 11:23 pm | Permalink

      Hi Martin,

      I’m glad I could be of assistance!

  2. Mike
    Posted May 22, 2013 at 12:04 am | Permalink

    Hey this was causing so much trouble for me, but your solution worked liked a charm! Thanks, man!

Post a Comment

Your email is never published nor shared. Required fields are marked *

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*
*