Test your AIR apps on an Android phone
I realized that for us (Europeans) it is a little bit harder to get our hands on a Nexus One or Droid phone. So, if you have created an AIR app for Android and you don’t have a device to test it on we can meet at one of the next events I’m doing and I will let you do the testing. Maybe we can shoot a video too :)
For now, my schedule looks like this:
- June 2nd I’ll be in Cluj-Napoca Romania attending a Flex Camp
- June 3rd – 5th Timisoara Romania, attending and speaking at Drupal Camp
- June 10th-12th Norway attending gotoAndSki()
If you live in Bucharest, just send me an email and we will figure out a date depending on when I’m not travelling.
Looking forward to seeing what you build :)
Open Source Media Framework 1.0 is out
The first release of OSMF, 1.0 is out. This is great news for both developers and publishers. Using the components from OSMF you can build quickly high quality and fully featured video players. And if you think about this, it totally make sense. I mean if you are a publisher your main expertise is to create/distribute/monetize the content and not to create advanced video players. And if you are a developer then you get an excellent start using components that were already tested and supports the latest advancements from the Flash Platform (Flash Player 10.1, Flash Access 2.0, HTTP Dynamic Streaming).
OSMF gives you the blocks you need to build a modern and powerful video player. What if you just want an out of the box player? Well, you have to take a look at Strobe Media Playback then. This is a compiled SWF that gives you a video player created using the OSMF.

I just want to add one more thing: OSMF was developed by many parties, not only by Adobe. Others submitted plug-ins and code. I know my friends from Kaltura are one of them, but other big names like ESPN, Akamai, Brightcove.
You can find more here.
Webinar: App in a Week
The entire European platform evangelism team worked hard to create great content for a webinar called App in a Week (June 7th-10th). What is it all about? In short: We will show you how you can create applications using various
techniques with the help of the Flash Platform. Basically you will see different tools at work (Flash Professional, Flash Catalyst, Flash Builder, Photoshop), different approaches (Flex, ActionScript, desktop, mobile or web apps) and different back-end technologies (PHP or Java).
Long answer: it’s really too long, so better sign up and join us. I’m sure you’ll find new things. Here is the complete schedule:
- June 7th – 12:00 – 13:00 GMT Erase the Designer to Developer gap: Adding interactions to your design with Serge Jespers
- June 7th – 15:00 – 16:00 GMT Connecting your design to PHP services with Mihai Corlan
- June 8th – 12:00 – 13:00 GMT Connecting a web application to a J2EE backend using Flash Builder 4 with Michael Chaize
- June 8th – 15:00 – 16:00 GMT Working with Flash CS5 components in your Flash Builder 4 project with Mike Jones
- June 9th – 12:00 – 13:00 GMT Going multi-user with P2P in Flash Player 10.1 with Tom Krcha
- June 9th – 15:00 – 16:00 GMT Developing multi-user applications with LiveCycle services with Tom Krcha
- June 10th – 12:00 – 13:00 GMT Bringing web Applications to the desktop with AIR 2.0 with Piotr Walczyscyn
- June 10th – 15:00 – 16:00 GMT Code once and run on multiple mobile devices with Mark Doherty
As you can see we set up the event to work well for Europeans :) You can register here!
goToAndSky() Norway
| June 10, 2010 | to | June 12, 2010 |
On June 10-12 I’ll be in Norway attending goToAndSky() conference. My session is about debugging Flex apps.
Drupal Camp Timisoara
| June 4, 2010 | to | June 5, 2010 |
On June 4th I will present on building Drupal modules with Flex at the Drupal Camp Conference from Timisoara, Romania. More info here.
Flex Camp Cluj-Napoca, Romania
| June 2, 2010 | to | June 3, 2010 |
I will present a session on Designer/Developer workflow on June 2nd in Cluj-Napoca. Also, if you want to see Flash Player 10.1 and Adobe AIR running on Nexus One join me :)
You can register here. The event will start at 18:00, June 2nd. The location is Vitrina Business Center, Str Constantin Brancusi 67-69.
Flash Player and Google TV
If you watch the news or what’s happening at Google I/O 2010 chances are that Google TV is not a novelty anymore. However you may not know that Google TV uses Flash Player 10.1 (Google’s browser, Chrome, integrates Flash Player). This is something I know for sure I want. Being able to watch YouTube videos on my TV with my whole family, instead of huddling around a small computer screen, is really nice.
On the other hand, I can’t believe how fast the time flies and how fast the technology evolves and morphs these days. One year ago I was in Berlin talking with journalists for the first time about Digital Home, where the TV sets can handle both the web and regular TV shows.
Here you can see a video with Google TV running Flash content:
Get AIR for Android and play with it
Later Update:
I rewrote the application using the Flex 4.5 framework. It has better and nicer UI and more features. You can find the application on Android Market and BlackBerry App World stores – just search for aTabSplitter there. I added Camera support so you can change the picture from the first screen with one taken with your device. Enjoy and let me know what you think!
Today, at Google I/O 2010 we have announced a public beta of the Adobe AIR for Android. This means you can sign in for getting the bits and if you have a Google Nexus One phone you can install the runtime and then test the existent AIR apps for Android or create new ones.

So this makes the perfect moment for sharing my AIR app for Android that will come handy every time you have a dinner with others and want to split the bill. So grab the APK file from here, make sure you have the Android SDK on your machine and the phone is connected to the computer through the USB cable, and then run this command in console :
adb install -r aTabSplitter.apk
If you don’t like command line, then you can use Serge Jespers AIR app for packaging AIR apps as native installers including APK files for Android. Check his blog post here.
You can get the AIR for Android bits from here (and find more about developing for Android with Adobe AIR).
If you play with my app and you have feedback, please drop a comment!
Building Android apps with Adobe AIR
Last week I created my first ever mobile application. It is an AIR app for Android. The app is called aTabSplitter because ahh, it just helps you to split a restaurant bill between many people. Here are some screenshots with the two screens of the app:

Developing this small application was quite entertaining. But it teach me a few lessons too:
- You know the old saying “premature optimization is the root of all evil”. This is true for mobile apps too. You never know if some framework or workflow will do the job until you actually try. In my case, the common sense was telling me that Flex 4 framework being a desktop framework is to heavy for the mobile world. After trying it, I think actually it works quite good for me. Your mileage can vary.
- Developing for mobile is not easy at all. I spent almost my entire professional life building web applications for desktops. Doing mobile apps after this is like trying to create jewels miniatures with the skills of a mine worker. You need a different mind set; you need to acquire new skills.
- It is highly educational watching people using your app. Because of the touch-input nature of the mobile apps and the personal experience each user carries forward from previous devices/apps, you will certainly notice some interesting behaviors. With my app, a friend tried to remove a person (on the first screen) by throwing him outside of the screen. Needless to say that I didn’t think of this workflow, but it gave me an idea on how to improve the app.
Finally, this week I had the time to clean up the UI and code a little bit, and put together a video (the making-of type of video). Here is the video (you can watch the video in higher resolution here):
If you want to have a look at the code (although I warn you it is not production ready) you can download this project file. If you want to run this on a computer without a touch screen you need to make couple of changes (work with MouseEvents instead of TouchEvents, change root node in main.mxml from Application to WindowedApplication).
I can’t wait to have AIR for Android out and see what people will build!
Update: if you fancy the Belorussian version of this post, check this out.
Working with Doctrine 1.x, Zend Framework, and Flex
Later Update: If you are looking for an article rather on Doctrine 2 than Doctrine 1, then check this one.
This year I finally had the time to play with Doctrine (version 1.x) and Flex. Actually, it was more than playing; I’m using it for a real project that hopefully will enter production pretty soon. To summarize the experience in just a few words: it’s mind-blowing.
OK, I admit I may be exaggerating a little bit. Still, it is something that can change the way you build projects. Doctrine is an ORM (Object Relational Mapper) framework for PHP and it can really speed up the server side development when you have a lot of tables in your database.
In this article, I explore how to work with Doctrine on the server side, Flex on the client side, and remoting to communicate between Flex and PHP (using the Zend Framework for remoting on the PHP side). I also want to share with you some tools and workflows that can save you some time. While most things are fairly straightforward there are a number of tips and tricks that you may find useful if you decide to go down this road. (I will show you how to use plain vanilla value objects and how to handle dates just to give you two examples. Why reinvent the wheel?)
The application I’m going to build in this article is simple but the workflow is the same one I used with a much more complex application. Having said that let’s start by understanding the big picture.


