haven't been doing much Flash/SWF Studio lately but I just started a project where I think SWF Studio would come in real handy!
The new project is to create a web site widget with a desktop counterpart. Our customer wants to have a database-driven system that displays alerts in the web site widget any time a user visits the web site. But he also wants to offer his users the option of installing a desktop version of the widget on their computer. That way they get alerts whether they are on the web site or not.
So my question is this...should I create the widget from scratch using Flash for the web-side and Flash/SWF Studio for the desktop part? Or should I consider using a framework/service like Yahoo's Widgets?
Welcome back crusty :)
Derek will now mention something about AIR :)
What you are describing sounds a lot like what AIR was built to handle. It depends on what the client-side app needs to be able to do. AIR won't let you interact with the OS the way a SWF Studio app will. If you need real control then SWF Studio would be a better tool. AIR gives you some access to the user's harddrive, and it has built-in SQLite.
The user is required to install AIR (runtime), which can be installed through the Flash player, assuming the user already has the Flash player installed, then installing AIR is quick and painless. If not they need to download the installer. You can redistribute the AIR installer, but you would need to contact Adobe to get a custom license.
AIR apps can be SWFs or HTML, or a mix. A straight SWF will need to be AS3.
Thanks for the ideas guys. Ideally I'd like to create the basic widget and then deploy it both for the web and for the desktop. Of course there would be minor differences in the deployment area.
Adobe AIR looks interesting but unless it greatly simplifies things I guess I'd prefer to use SWF Studio since it gives more control and less dependency on a runtime being present.
Any thoughts on using an existing service like Yahoo Widgets or other widget platforms? These seem to be targetted to viral/mass distribution whereas my application would be not to target any mass-market distribution but instead to target only users of a particular web site. Is anyone using these systems for private development/deployment?
I guess I see the major building blocks as,
1) core functionality
2) web deployment
3) desktop deployment
#1 is just making the widget do what we want!
For #2 it is embedded into a web page and each time it is displayed it is fed by a database.
#3 is where it gets interesting. Issues here are,
- wrapper platform (SWF Studio Windows app, Adobe AIR Windows/Mac app, Yahoo widget, etc.)
- installation (largely determined by platform choice)
- connectivity to the web (ideally same database and web codebase for data feed)
The desktop version would have to deal with install/local issues including computer rights, getting through the local firewall, local data storage (probably just preferences), uninstallation and others I haven't thought of yet!
I think we can do an app in Flash that handles core functionality with only minor differences depending on web vs. desktop. That part seems clear to me. The desktop version with its connectivity and install issues is where I'm still pretty cloudy!
I just spent an hour or so on the Adobe AIR web site and hope to spend more time later today. But since you seem to be knowledgable about this...
- can I write an AIR desktop app that can request regular updates from a web server? sorta like the way Outlook regularly sends a request to the mail server?
- can I write a Flash app that can be deployed fairly easily both in AIR and on a web page?
- is there an advantage to doing an HTML/Ajax app vs a Flash app (knowing it needs to be deployed on both the web and the desktop)?
Thanks so much for your help with this.
Nevermind my questions above. I found a very cool resource at http://www.uiresourcecenter.com/ui-technologies/adobe-air/index.html?s=3_2 They have an AskTheExpert feature and were incredibly helpful. I'm starting the new project with AIR! I'll let you know how it goes.