I finally got around to watching the 360|Flex keynote with Mark Anders, Justin Everett-Church and more, and just like so many others have blogged, there is some really great information included on Flex 4 (Gumbo), Thermo, Flash Player 10 and more. While the video is over an hour long, it is worth the investment in time:
Archive for AIR (Apollo)
Adobe released beta 2 of Flash Player 10 this afternoon, and I was very excited to see in the release notes that they have added in a new method of the Loader class,
unloadAndStop(). From said release notes:
unloadAndStop â€” This new ActionScript 3.0 API adds unload functionality similar to the unload behavior in ActionScript 2.0. After calling unloadAndStop on loaded content it will be immediately removed stopping all audio, removing eventListeners, and becoming inaccessible through ActionScript.
In short, this should make it much simpler to free a loaded SWF for garbage collection, as opposed to having to resort to hacks like
SoundMixer.stopAll() and then praying that the content isn't just floating around somewhere waiting to be picked up.
Grant Skinner had written a post about Flash Player 9's inability to completely free loaded content from memory and force garbage collection. It became a very active post with almost 60 comments, including some from the Flash Player development team.
In the comments of Grant's post I read about an additional item that has found its way into FP10 beta 2: calling
System.gc() will now work in all Flash Players, not just the debug versions as stated in the AS3 documentation:
Language Version : ActionScript 3.0
Runtime Versions : AIR 1.0, Flash Player 18.104.22.168
Forces the garbage collection process.
For the Flash Player debugger version and AIR applications only. In an AIR application, the
System.gc()method is only enabled in content running in the AIR Debug Launcher (ADL) or, in an installed applcation, in content in the application security sandbox.
Once again, great job Adobe at listening to the requests of your developers!
In my search for ways to enable simple debugging when working in Eclipse with both FDT and FlexBuilder, I managed to find two viable options: Arthropod and LogWatcher.
Arthropod is an AIR application that enables enhanced logging for AIR, Flex and Flash applications. I am surprised there was not more fanfare made of this recently, as it was just released and got a mention on The Flash Blog. Arthropod allows you to use a simple bundled class to write trace statements to the running AIR application. This means, in theory, I could avoid having to switch back and forth to the Flash CS3 IDE to compile and debug with trace() statements. What I like most about Arthropod is how simple it is to use. Import one class, fire up the AIR application, and you are ready to go.
The second option I have come across is LogWatcher. I found this one on Josh Buhler's blog a while back, but never got around to installing it. LogWatcher is a bit more integrated into Eclipse/FDT, as it puts a panel in Eclipse that reads the continuous output of the debug Flash Player. You'll need to set the debug Flash Player to output all trace statements to a text file, but simple instructions can be found here.
Between the both of these options, it looks like I can finally stop having to switch to the Flash IDE to debug my projects.
As a part of the announcement, Adobe is publishing exactly how the SWF format works without restrictions, and removing all other barriers to getting Flash on the widest range of devices. Set top/cable boxes, all mobile phones, televisions, your appliances... anything technical, really. Even those devices without a screen and/or user interface. Bill Perry does a great job of going into more detail on the implications for devices on his blog.
Ryan Stewart has a great post explaining all the implications of this announcement, for devices and desktop computers alike. He goes into more detail on the several parts of the announcement, so it is worth the read.
As someone who makes their living from the Flash ecosystem, you should care greatly about this announcement. It may not seem like it to a non-developer, but this is huge for anyone who knows how to use Flash. The thought of having Flash everywhere is finally a reality for those who want to include it in their products as a user interface layer, or even to allow developers to control the product using ActionScript. And this means that your capabilities to design, develop, and then deploy your Flash experiences just became more marketable and useful.
Lastly, as a member of the Flash community, you should also be excited about the implications this has on open source projects such as SWX, AMFPHP, and the like. The more open the specifications surrounding the various parts of the Flash ecosystem, the easier it is for members of the community to create tools and open source projects which contribute to the growth and prominence of said ecosystem... and make all of our lives as participants in that ecosystem that much more interesting and fun.
I have just posted a small collection of AS2 and PHP classes I have written/modified while working on various projects over the years. I intend to continue to add code as I have the time, so the list should be ever-changing.
For the initial push I posted: SmoothImageLoader (AS2), RegExp (AS2), Tooltip (AS2), BadFilter (AS2), ConstantContact (PHP), and SubmitVerisignPayment (PHP). For more details on these classes, please visit:
I just watched a video on YouTube of the AIR iPhone application with Ribbit's VOIP Flex Component placing and receiving calls. Who needs a real iPhone when you can just fire up an AIR app and talk all you want?
Seriously though, there is some very cool stuff going on with AS3, Flex, and Flash these days. I can only imagine where this will go if Intel and Adobe do indeed get AIR running on mobile devices. It could have the potential to turn wireless carriers into data-only providers -- mobile broadband services.
I would highly suggest when the onAIR tour rolls through your town you check it out. I'll bet they may even have some more Ribbit info they could demo for you while it is in closed beta.
Powered by WordPress.