b-log – betriebsraum weblog

Software Development, Human-Computer Interaction, Projects…

Academic Flash and Paper of the Month

July 6, 2009

After almost a year of silence on this blog, I’m starting a new series of blog posts that cover serious topics that have both academic and practical relevance in terms of RIA development, user interface design or software design – basically topics that might be of interest for people involved in the design and development of interactive products.

If you’d like to know more about »the year of silence«, my motivations for these kinds of posts and what this is all about, then just read on. If you’re in hurry, jump to the end of the article where I’m telling you about an academic paper that you shouldn’t miss…

Issues with utility windows in Adobe AIR

July 15, 2008

In Adobe AIR there are three different window types available to create a new NativeWindow. One of the types is the NativeWindowType.UTILITY type:
The flash help says: »Utility windows use a slimmer version of the system chrome and do not appear on the Windows task bar and the Mac OS-X window menu.«

Some issues you should bear in mind when working with them are:

Two convenient ways to update your AIR applications

June 25, 2008

Our recent AIR application MiniTask has built-in support for application updates via the web. In the first version we used Claus Wahler’s AIR Remote Updater which is a really smart solution for update handling as it “grabs the version number directly from the remote .AIR file without having to download the entire file” (using FZip). It’s a “data only” class so you have to implement all UI logic yourself by listening for events and calling methods on the class.

MiniTask – free AIR application

June 24, 2008

After having developed one commercial and one internal Adobe AIR application MiniTask is our first free app. It has its own website at www.minitask.org with screenshots and further information. We developed it using the PureMVC framework for AS3 and it has turned out to work quite well! Give it a try…

Unloading AS3 content

April 8, 2008

Grant Skinner has posted a very informative article about the issues of unloading content in AS3.

Currently we’re facing the same problems (loading / unloading third-party content) in our main application. We handle unloading by providing some API events (“onRemove” etc.) and clearly stating in the API docs that it is the developer’s responsibility to clean up everything (basically that is the second option in his article under “Workarounds and strategies”).
Far from perfect – especially if content developers aren’t aware of those issues – but probably the best thing you can do for now.

Flash v3 component issues

December 6, 2007

After having worked on a project with Flash’s CS3 component set I guess one could say that they’re much better than their predecessor (after all they’re based on ActionScript 3 now). Some useful components are missing but that’s not too bad as you could create your own based on the v3 core, use Yahoo’s free additions to the v3 set (Astra) or consider using flex if you do a lot of component related work.

Nevertheless there are some problems I’ve encountered while working with some of the existing v3 components (please correct me if I’ve missed something):

stage.invalidate() and Event.RENDER for UI elements

November 3, 2007

We’ve been doing lots of ui stuff lately using ActionScript 3 and the new methods available for redrawing. Unfortunately there’s a Flash Player Bug with Event.RENDER which you should keep in mind when using that approach. Before talking about the bug, here’s a quick introduction to general redrawing techniques (just in case you’re not already familiar with that topic. If you’re interested in the AS3 stuff and the Bug, just skip the next paragraphs…):

Runtime font loading with AS3 / Flash CS3 (not Flex!)

June 22, 2007

If I never really got something in Flash it was font embedding and runtime font loading. The bad news is: We have ActionScript 3.0 now and Flash CS3 and I still haven’t completely understood it yet. The good news is: It works – somehow – if you keep in mind some things. After all articles about this topic I’ve read until now I have the feeling that nobody really understands what’s going on with fonts in different use cases. Trial and error…

As the headline suggests this article deals with font embedding in Flash CS3 and not in Flex. With Flex and mxmlc there’s the embed metatag where you can even define font character ranges which should be embedded. You don’t have this option if compile with the Flash IDE…

Tip for using SWFAddress and GoogleAnalytics together

March 4, 2007

Just a quick tip to save you a few minutes if you plan to use SWFAddress (as far as I know currently the best browser-back-button solution for flash) and GoogleAnalytics (for tracking) in a flash project:

Flash Video Tip 3: Stopping a FLV from downloading

March 3, 2007

When you set the contentPath property of the FLVPlayback component in Flash 8 it immediately starts (progressively) downloading the flv. Normally this is the desired behaviour but sometimes you don’t want the flv to take up bandwidth because there are currently other loading processes. Some time ago I read an article at Flashcomguru on how to generate a thumbnail preview of a video and stop the download process. While this should work if you manually create your NetConnection/NetStream object, the technique described there (trying to load a non-existent flv) doesn’t seem to work with the FLVPlayback component.

Here’s another approach (code is just on frame 1 for this demo, should be put into a class though):