Asual

Thursday,
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.

Wednesday,
22 Nov 2006

SWFAddress 1.0

As of today SWFAddress 1.0 is available for download. It took me about a month to prepare the first final release and it definitely exceeded my own expectations in terms of new features and improvements. Here is the full changelog:

  • Improved folder structure.
  • Build procedure based on Apache Ant.
  • Optimized version that utilizes the dojo compressor.
  • Support for GET style parameters with the corresponding getPath, getQueryString, getParameter methods.
  • SEO support via PHP/mod_rewrite for Apache HTTPD and JSP/UrlRewrite for Apache Tomcat. It uses values like '/portfolio/' instead of '/portfolio' or '/portfolio/?desc=true' instead of '/portfolio?desc=true'.
  • Detection of supported browsers.
  • Improved Safari support that relies on a cached form and cookies. The method is not bulletproof, but will work in the majority of cases.
  • SWFAddress.setValue() can be called from JavaScript.
  • Support for manual address changes in IE.
  • Fix for '#' title in IE.

Two weeks ago I moved SWFAddress to Sourceforge.net in order to reduce the traffic on our site and provide nice facilities like Subversion, mailing list, forums and more.

Learn more about SWFAddress or go straight to the download.

Tuesday,
21 Nov 2006

SEO for SWFAddress

I would like to introduce you to the most interesting feature of the upcoming SWFAddress 1.0. It enables generation of real links that expose the appropriate content to search engines. The magic happens with some interesting URL rewriting and some trivial serverside code. Here is an example how it works for a website located at http://www.domain.com that contains a portfolio section:

SWFAddress uses http://www.domain.com/#/portfolio/. The URL that can get indexed is http://www.domain.com/portfolio/ and therefore it should exist as a link in the HTML code of the page. When someone visits the indexed address the rewriting functionality makes a redirect to the URL that SWFAddress expects. Everything happens transparently for the end used and further navigation through the website correctly changes the Address bar value. The situation is different when the same link is followed by a search engine bot. In this case the address is just rewritten without any redirection to http://www.domain.com/?swfaddress=/portfolio/. The page that handles all this should use a serverside technology in order to generate the appropriate content depending on the "swfaddress" parameter value.

Requests containing GET parameters like http://www.domain.com/#/portfolio/?desc=true&year=2001 are handled similarly. The search engines will index http://www.domain.com/portfolio/?desc=true&year=2001 and the script will expect http://www.domain.com/?swfaddress=/portfolio/&desc=true&year=2001.

The result is a fully indexed Flash website with deep linking support. To see it in action you can try on of the following search queries:

While this approach improves the usability of Flash content over the web, it also requires an additional effort. This means some manual work for static websites and some smart code for dynamic ones. The best case will be a Flash CMS that automates the whole process.

I haven't seen something similar created for Ajax heavy websites although a part of it is documented in the Unique URLs pattern. It will be great for both Flash and Ajax if a technique like this gets adopted and improved over the time.

SWFAddress 1.0 ships tomorrow, stay tuned.

Monday,
23 Oct 2006

SWFAddress - Deep linking for Flash®

I'm glad to introduce you to our new project that aims to improve the way people use Flash websites and applications. It's been a long time since Kevin Lynch outlined the problem and provided some proof of concept code, but two years later there's still no a solid standard solution.

A few weeks ago we started working on a typical Flash website for a fellow photographer and I thought that it will be great if it supported deep linking. I had some JavaScript code that enables such behaviour for Ajax calls and it was fairly easy to connect it to the Flash movie using ExternalInterface. I also extended the SWFObject initialization in order to simplify the usage of the script as much as possible. This is how SWFAddress was born. As of yesterday it's available under the MIT license.

I'll be happy to hear your comments, suggestions and bug reports. My list for the final release include detection of unsupported browsers, improved Safari support and probably a sample that works with the default Flex 2 templates.

Future improvements may include support for query parameters and custom events for specific URLs.

Learn more and download at the SWFAddress homepage.

Next Entries »

Projects

Syndication

Blog Search

Blog Categories

Blog posts

Recommended sites