I am currently working on some code that runs in Adobe AIR where I need to access the File URL file:/ of a file located in the AIR app’s install directory.
Normally, you could get the URI, by accessing the url property of the File object which will return a well formed, absolute file:/ URL. However, this doesn’t work for files located in the AIR app’s install directory.
var f:File = new File("app:/icon.png");
trace(f.url); //app:/icon.png
While the app:/ URI will work within your AIR application, it will not work if you need to pass that URI to a non AIR application.
I got a ton of feedback in response to my question about the continued use of ActionScript 1 and 2. One thing that consistently came up was that some felt that it was faster to develop within ActionScript 2 than 3. However, it wasn’t clear from the commenters if this was because they already knew ActionScript 2 and were not as comfortable with AS3, or if there were things that were just harder / more tedious in ActionScript 3.
I am working on updating the ActionScript RIA Reference Guide. As part of that, I have to figure add all of the new APIs added to Flash Player 10.
Below is a list of such APIs generated and parsed from the APIs docs. I figured I would post it here as a reference, and also a sanity check (if you see anything wrong or missing, please post in the comments).
Update : I just updated the list and added a bunch of missing APIs. Thanks for all of the input.
In conjunction with the CS4 release, the Adobe Developer Center has just post some new articles on Flash Player 10, and Flash Professional CS4.
We have just released the shipping version of Flash Player 10 (Mac, Windows and Linux). You can find more information on all of the new features on the Flash Player product page.
You can download the player for Mac, Windows and Linux players from here.
You can grab debug and standalone players from here.
You can grab the release notes from here.
While in Berlin this summer for the on AIR Tour, Lee Brimelow and I got the opportunity to visit their eBoy studio and chat with the guys about how they create their work. Lee has just posted a video of the visit on his blog.
I have always been a huge fan of eBoy’s work and art (best know for their pixel art). We worked with them to design the Adobe AIR launch t-shirt and poster (both of which have been very popular), and most recently, on a new AIR tshirt (which we gave out in Asia).
I have switched over to using TextMate for some of my experimentations with ActionScript. I like how lightweight it is, its extensibility, command completion functionality, and ease of setting up new projects. I find it is perfect for quickly testing new code and ideas.
I have put together a couple of bash scripts, which coupled with the ActionScript 3 and Flex TextMate bundles have made working in TextMate a little easier for me.
I have been reading through Colin Moock’s Essential ActionScript 3 book, taking my time on each chapter to make sure I get the most out of it. I have been using ActionScript 3 pretty consistently for a couple of years (about a year before it was public), but I have been pleasantly surprised with how much stuff I am learning from reading Moock’s book.
Anyways, I am currently reading Chapter 5 on Functions which among other things covers function scope and closures activation objects (although the book goes into more detail in Chapter 16). This is one of the things that frequently trips up new developers. When creating a function, the function has access to all of the variables within its scope, even if the function is passed to and called within another scope. However, one thing to watch out for is that when using function closures, this always points to the Global object, and not to the object / instance that the function is called within.
If you are in the San Francisco Bay area (or not too far away), then make sure to check out Flash Camp this weekend, being held in the Adobe San Francisco office by the Flash team.
This is an all weekend event that will go in depth over the new Flash Player 10 and Flash Authoring features. Its a great chance to get up to speed really quickly on all of the new APIs and features, as well as hang out and have a few beers with the Flash team.