Sunday, February 24, 2008

Nifty Air Functions

So after reading through the AIR Ajax Tutorial, I decided to play around a bit with AIR and its asynchronis abilities. I created a small application that simply tells the user the status of the network connection by checking an RSS feed from macromedia's site. Below are two screen shots of the small application (note the highlighted sections):
And when the network connection is disabled....


I've also started to play with SQLite and AIR. After some struggle to determine how to execute queries from AIR, and looking at this tutorial, I ended up looking elsewhere for a simple way to manipulate data in the SQLite database. I found an Air-based SQLite Admin Application and have been familiarizing myself with SQLite syntax, which is not too different from any other SQL langauge. I plan on writing my next small application to modify and update data in a local SQLite database. Thus far I have a small table created called 'Contacts,' and I plan on using this table for my test application.

Until then, I will continue poking around different AIR tutorials and web blogs to see what other things are possible.

Thursday, February 21, 2008

On my Way

I've begun the tutorial Introducing Adobe AIR for Ajax developers to look into how to incorporate AJAX and dynamic content into Adobe Air.

I've also begun poking through the code of the Credit Union Management Game and looked into the logic. The code is a little archaic, very much unlike traditional languages I am used to, but I think that I should be able to figure out some of the logic by simply poking around and looking up GWBasic syntax. Thankfully, the code is well commented, so that may make things a bit easier.

I hope to finish the AJAX tutorial this weekend and include some screen shots.

Wednesday, February 6, 2008

Development Begins

After reading the first chapter of the O'Reilly Adobe Integrated Runtime (AIR) for Javascript Developers, I have a greater understanding of the advantages of using AIR for application development, particularly as opposed to using a standard internet browser. While the book goes into detail the specific advantages over traditional browser-based web applications, the main advantages are outlined below:

  • AIR was specifically designed for applications, unlike browsers, originally designed to serve simple HTML pages
  • Better control flow of applications. (ie no Back Button that can cause state loss, or control flow exceptions)
  • Integration with the Desktop, including greater interaction between web applications and desktop applications
  • The ability to utilize the application when an internet connection is unavailable
  • No need for platform-specific code, particularly with Javascript, AJAX, and CSS
  • No need for application developers to have to learn new languages
I've set up my development environment as outlined in the text. I've created a simple test application, utilizing a basic HTML and xml document. The book's example experiences errors with the latest versions of the runtime and SDK versions of AIR. Below are some screen shots experienced, and the process used to troubleshoot the problem.

This appears to be a problem with the XML descriptor file. I changed the runtime version from "http://ns.adobe.com/air/application/1.0.M4" to "http://ns.adobe.com/air/application/1.0.M6".

This solved the first problem, but then the ADL began to complain about other tags in the XML file, which led me to believe that the XML notation must have changed with the newest version of Air. I found this tutorial, and began basing my XML descriptor file on the given example.

After correcting the XML, the ADL stopped generating errors. The application would run, but for some reason the GUI would not load, and the application would simply hang with the following prompt "init function called" is a return statement from the HTML file, so we know that the application is running, but for whatever reason, the AIR GUI is not loading.


Unfortunately, the AIR/AJAX tutorial does not go into detail in how to utilize the ADL and ADT binaries to test/build the application.

After some tweaking and trouble shooting, I realized why my GUI for my application was not coming up... it helps to set the visibility of the application to true in the XML descriptor file.
<visible>true </visible>
And Voila:

I have successfully created my first HTML AIR application, with only a few bumps and dents along the way!

Tuesday, January 22, 2008

Starting Development

I've begun researching how to get started with developing applications for AIR. It appears that almost all application development can be done with the Adobe CS3 suite, which I have already installed on my system. I am interested in pursuing Flex and how to incorporate it into AIR apps. An important download to get started with development in AIR is the Adobe AIR SDK.

I plan on following this tutorial on how to incorporate AJAX into Adobe AIR. The tutorial gives a good foundation on how to get started.

I have also been looking for Adobe AIR books on Amazon.com and plan on going to some local bookstores to see if I can pick up a good book to reference and give me some potential projects for my directed study.

Wednesday, January 16, 2008

Installing Air

Installing Air is relatively straight forward; all one must due is download the executable and run it; I did not have any dependency problems and the installation ran seamlessly. I then used the Adobe Air Showcase to download an application to test my installation. I had to sign up to become a member of the Adobe community (which was free) to download any of the showcase applications. I decided to try FinetuneDesktop as my first Air application, so I downloaded the .air file to my desktop and ran the application. The install ran successfully and placed an icon on my desktop.

The application is extremely light weight, accounting for no more than 8% of my processing power when idle, and taking only 66mb of memory usage. The primary framework of the application appears to be Adobe Flash, and Flex. I will continue to test additional applications utilizing different frameworks as backends.

Monday, January 14, 2008

First Post

Welcome to my MIST 5990 Directed Study Blog. From this blog, I will log over the course of the spring 2008 semester my work with rich internet applications, particularly with Adobe Air (Adobe Integrate Runtime). Adobe AIR is an cross operating system run time environment/framework built primarily to allow for Flash, Flex, Ajax, and HTML applications that can be deployed as desktop applications. It has great potential to allow for rich user-interaction, real-time data acquisition and manipulation, and lightweight powerful applications. Competing concepts include Microsoft Silverlight, JavaFX, and Mozilla's XUL. The official web site for Adobe Air can be found here. From the site, one can download Beta executable versions of the application as well as some showcase applications to demonstrate what Adobe Air can do for free.



I hope to post to this blog at least three days a week, keeping it up to date with my progress with Adobe Air. Check back soon for updates and summaries of what I am currently working on.