13 Nov 2007

SWFAddress 2.0 part 1 - The story so far

The time for a new release has come and this is the first of a series of posts in which I'm going to share with you what the project has achieved so far and what new it has to offer.

The initial SWFAddress 1.0RC release came out about an year ago and quickly got attention because of its simple message:

  • Built for Flash. Until then people were trying to achieve the same functionality using libraries with JavaScript roots.
  • Seamless integration with SWFObject. It was a nice addition for the de-facto Flash embedding standard.
  • Simple API for every ActionScript version. The combination of Flash, Flex and MTASC samples was good enough for everyone.

The next releases just made the project more mature and feature rich. Thanks to the growing interest in deep linking and browser history handling, little by little SWFAddress became just better and better. The statistics system on shows that the project has active forums and has been downloaded more than 20,000 times. Some people even used and deployed the SVN copy of the files, bringing the latest improvements and fixes to their clients.

Speaking of clients, I can say that we're pretty happy with our SWFAddress Services. We still cannot make our living completely out of them, but they appear to be good way of making some money with open source. Most of the time we are hired by designers or small interactive studios that don't have the time or resources to learn and implement deep linking. The big agencies have a lot of talent and usually they build SWFAddress powered content on their own, but the lack of extensive know-how in this area sometimes leads to bad practices.

Today we reveal the SWFAddress Showcase which clearly demonstrates that the deep linking is here to stay. We're glad that there are lots of high profile and award winning websites using SWFAddress and we will continue to work hard and bring you the best possible solution for your needs. It's also great and very important that many people are researching and sharing their work. SWFAddress wouldn't be the same if there weren't projects like Really Simple History, HistoryKeeper, StateManager and many others that deserve your attention and our respect.

Tomorrow I will give an overview of all the new Flash related features and samples. Stay tuned.

2 Nov 2007

SWFAddress 2.0 is coming

After numerous postponements the release date of SWFAddress 2.0 has been scheduled for November 16th. There are lots of new things coming and if you want to learn more just follow this thread.

25 Aug 2007

Moviestar - what happened to SWFAddress?

The latest Flash Player Beta release is great: H.264 support, hardware acceleration, immediate Linux availability. I thought that currently I don't have the time to test the new features, but a little bit later I was warned that SWFAddress does not work with this update. While this is something which can be expected from a Beta version I felt obliged to investigate what is the reason behind this failure.

The release notes of the Moviestar update say that the ExternalInterface has been improved and this sounded like a potential reason for my SWFAddress troubles. Yesterday I found some time for experimenting which led me to the following:

So it appeared that there is only a problem with AVM1 and ExternalInterface. After some more testing I came to the conclusion that:

Basically simple function work, but object methods no longer can be called. I suspect that this is not a desired behavior and I've created a test case which is available for download. The bug is now also submitted to Adobe and you should do the same if you find any other issues with your existing content.

Update: Everything is back to normal with the Flash Player 9.0.64 release. Thanks to everybody involved in this quick fix!

18 May 2007

SWFAddress bad practices

As the number of SWFAddress powered sites grows I often see problems caused by poor implementations or lack of information. Here is a list of the top 5 practices which should be avoided:

Usage of getURL() for user tracking, statistics and popups
While this is a standard Flash functionality used for years, the combination with ExternalInterface introduces a critical bug with Internet Explorer. The resolution is to use ExternalInterface for every JavaScript call. SWFAddress 2.0 will help you with some predefined methods for popups and blank window links.
Homepage address values like '#Home' or '#/root'
Such address values are not needed and should be replaced by SWFAddress.setValue('/'). The usage of creates an unneeded history entry when is opened.
Address values naming using camelCase or other forms of custom convention
SWFAddress samples clearly define the best naming convention for deep links. Web addresses are case insensitive and the standard is lower case. For readability and Google SEO compatibility reasons the convention 'my-deep-link' is more appropriate than 'myDeepLink' or 'My_deep_link'. The format is the only one fully compatible with the SWFAddress SEO rewriting.
Including SWFAddress before the TITLE tag
SWFAddress contains a fix for Internet Explorer and URLs which contain anchors. In order to benefit from it the title tag should be printed before the swfaddress.js include.
Duplication of navigation logic

Integration of SWFAddress into a legacy code may require the following implementation:

For brand new projects, the best way to organize your code looks like this:

Update: The post has been updated for SWFAddress 2.0.

1 Feb 2007

SWFAddress 1.1

SWFAddress 1.1 is the next step towards an optimal deep linking solution for Flash. It comes with various improvements and fixes, the most important of which are listed below:

  • Improved SEO rewriting rules and IE support.
  • Transparent page view tracking with Google Analytics.
  • New ActionScript getParameterNames() method.
  • Flex 2 sample changed to work with states.
  • Support for named EMBED tag in a typical OBJECT/EMBED combination.
  • Support for rollover statusbar display of deep links, an idea by Andrey Gorbatov.
  • Safari history is stored in document.location.
  • Example for rewriting of content placed in the domain root.
  • Fixed preloader for the MTASC sample.
  • Fix for degradation in unsupported browsers.
  • Fix for working with the top window location.

SWFAddress was recently featured in the open source section of WDDJ. Some very nice websites are already using it and if you do so then you should definitely consider upgrading to the latest version.

« Previous Entries | Next Entries »



Blog Search

Blog Categories

Blog posts

Recommended sites