Thomas Joos | mobile application developer

(re)create your thoughts and expand your limits.

Porting Flash Lite to the Iphone: b.Tween

with 18 comments

This week we released our Rock Werchter Mobile Guide which offers a whole amount of information that could come in handy for every attendee. You can find more info about this application and how to download it at or you can check my previous post.

We managed to create a flash lite application, providing cool graphics and animation ( that’s why we definately do NOT use JavaME ) and giving you all the information you need without any other crap! How great is that. No more silly ringtones or wallpapers to ”catch your attention”. This time you just get what you need: Rock Werchter Information in a rich visual environment. In aproximately 3 clicks you can get a lot of actionable information out of it, and that’s how it should be!

The cool part is that for the first time in the mobile history we ported our Flash Lite Project to the iphone/ipod touch, taking advantage of all the oppurtunities the iphone UI has to offer. Of course everybody is very very curious to know how exactly we have pulled this of.


A while ago Emanuele Cipolloni contacted me, telling me about a project he was working on called eyeGT.

What is eyeGT (standing for Enhance Your Experience Graphical Toolkit) is fully explained in this post, but for a short summary there you go: eyeGT is a highly efficient graphic renderer, capable of handling vector graphics and bitmaps. Beside the basic services of rendering, eyeGT provides a very extensive API that allow to define: buttons, animations, hierarchical containers,  color and special effects, static text, editable fields and much more; think about it as a Windows GDI+ or Mac OSX Quartz2D on steroids, heavily optimized and designed from the ground up for mobile. You may have heard of a lot of other toolkits available, performing similar sorts of things on desktop PCs, such as AntiGrain, but eyeGT is quite different and not only in terms of speed.

eyeGT is completely self contained, does not use 3rd party code like FreeType for the fonts (like AntiGrain) and offers a “flat” interface to developers: it never returns pointer to objects, requires you to setup complex classes or intricate design scheme. It is impossible to create applications with eyeGT that have memory leaks or crashes. eyeGT comes in the form of a DLL , Shared Object or FrameWork depending on the platform; by the way it does support many platforms, not just iPhone/iPod Touch: Nokia 2nd Edition (6600, 6680, 6630 etc), Nokia 3rd Edition (whole range including Feature Pack 1 & 2 models), Sony Ericsson UIQ2.x e UIQ3.x (including P800, P900, P910i, P990, W850, W950, W960, P1 and others), Motorola Z8 e Z10, Microsoft Windows Mobile (every smartphone and PDA based on Windows Mobile 5, 6, 6.1 e 6.1 Pro), Apple iPhone e iPod Touch Nintendo DS (original and Lite), Sony PlayStation Portable, GamePark’s GP2X F100, many phone models based on MontaVista Linux and is available to be ported on other embedded platforms as the base requirements are very minimal.


b.Tween sits between eyeGT and the application’s business logic and allows converting very quickly actionscript based applications into native ones with minimal changes. Barefootsoft created this framework on top their eyeGT technology that could further enhance it. By the time Flash 9 was announced supporting ActionScript 3. The new version of AS was much closer to a full OO language. In the mean time, Flash developers habits were changing, they were less and less relying on the timeline to make animations and applications using that infamous quantity of GotoAndPlay() and Stop() statements plastered all over and uses more the scripting language to manipulate the appearance and GUI. So the idea was to recreate more or less the underling framework of AS3 in C++ and use eyeGT as the final renderer for the application. This has proved immediately with a few advantages:

  • The code that uses the framework is compiled to machine code, that means several orders of magnitude faster than the ActionScript equivalent (AS3 in Flash 9 is JIT compiled but we are talking about mobile platforms here where there is no AS3 and no JIT compilation, for the moment at least)
  • Parts of the code that are unused are left out the final compiled application, so size and time to transmit/load are reduced to the minimum
  • Native code can access ANY feature of the hosting platform: wants Bluetooth? Wants to process received SMS? Wants to read the phone book? All possible from native applications not so from a player based one.

b.Tween: Porting Flash Lite to the Iphone

Emanuele had seen a few of my flash lite projects like FITC Toronto Mobile and he asked me if they could use my Flash Lite content to beta test b.Tween and port it to the iphone. It did not take that long to port some basic stuff to the iphone and even though it had to be more optimized, the result already looked cool.

When we created our Rock Werchter guide we thought it might be very awesome to port it to the iphone and release it in public, even though b.Tween is in beta, porting flash lite to the iphone was something i just HAD to shout out! I worked together with Emanuele for a couple of days creating this application, starting with a visual interface, iphone optimized. We discussed the flow of the application and how we could use the iphone UI advantages to make the application even cooler. In a few days Emanuele will make a blogpost showing you how exactly you can use the b.Tween framework.

But for now, just have a little patience and make sure to download and test our Rock Werchter Mobile Guide.



Written by vilebody

July 2, 2008 at 8:00 am

18 Responses

Subscribe to comments with RSS.

  1. […] indica Thomas Joos en su blog, el desarrollador italiano Emanuele Cipolloni ha logrado ejecutar una aplicación hecha en Flash […]

  2. […] Cool, read the complete process to how to Port Flash Lite content to Apple Iphone. […]

  3. I’ve seen just about every post from Barefoot on this subject, and nowhere have I seen how this is actually accomplished. Could you please enlighten us how you took AS3 code and assets from a Flash Lite project and integrated them into Barefoot’s framework? Did you have to rewrite everything, or does b.tween “emulate” the AS3 structure?

    Brett Walker

    July 2, 2008 at 5:59 pm

  4. […] info: en de weblog van Thomas Joos (Either JavaScript is not active or you are using an old version of Adobe Flash Player. Please […]

  5. […] Thomas Joos did the porting of his Flash Lite app using the b.Tween framework which sits on top of barefootsoft’s EyeGT technology. eyeGT is multi platform highly efficient graphic renderer, capable of handling vector graphics and bitmaps. Think about eyeGT as a Windows GDI+ or Mac OSX Quartz2D on steroids, heavily optimized and designed from the ground up for mobile. This is NOT a iPhone Flash Player (Lite or otherwise), but rather a sets of tools, a graphical engine (eyeGT) and a framework (b.Tween) that extract, rework, and optimize the Flash application, turning it into a fully native and compilable Objective-C/C++ application that doesn’t require any runtime, thus complying with the iPhone SDK requirements. Crazy stuff! […]

  6. […] una versión independiente (no oficial) funcionando en un iPhone, esto fué gracias al programador Thomas Joos ha portado Flash Lite al iPhone con […]

  7. […] niedługo pojawi się więcej ciekawego softu na iphona, właśnie udało się uruchomić aplikacje flash na iphonie. Otwiera to drogę do ciekawych pomysłów wykorzystywania iphona jako interfejsu do kontrolowania […]

  8. […] information is in Joos’ blog post on the […]

  9. Nice blog, i have added it to my favourites, greetings

    iphone games music

    July 19, 2008 at 2:42 pm

  10. Tahnks for posting


    August 3, 2008 at 3:41 am

  11. iPhone Firmware 2.0 Compatibility?

    John Rockefeller

    August 10, 2008 at 1:24 am

  12. Great site, I’ll come back and read more when I have more time.


    October 28, 2008 at 5:32 pm

  13. […] I guess everyone is thinking, it’s not a jeopardous thing to allow Flash on iPhone platform, and Apple might be too arrogant. However, we have to wait Apple’s agreement – it would be in 9 months I think. Besides, we don’t refuse any tricks, such as the belgian interactive designer Thomas Joos made his tricks to port Flash Lite to the iPhone (, […]

  14. Hypothetically, if I were to state that I have created a complete flash player app for the iPhone and started advertising the free download link everywhere, what would be the reaction from apple?


    November 29, 2008 at 4:46 pm

  15. @Matt: apple will first deny its existence, then they’ll claim it does not work, then they’ll try to find a way to make it look like u r breaking some license law, then they’ll try to buy the rights from you, then they’ll…..what next?

    @Thomas: pls explain the process cos its two good…no, its three good to be true!


    January 29, 2009 at 10:58 am

  16. […] ziet, maar ook wat de gebruiker tegenkomt tijdens het gebruik, een soort use cases. Wel jammer dat b.Tween niet aan bod is gekomen, maar dit is waarschijnlijk ook logisch aangezien het een event van Adobe […]

  17. Nice post.


    March 17, 2009 at 4:44 pm

  18. […] in July the bTween framework will be released. For people who don’t know this framework of Barefoot, it was used to port […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: