Adobe AIR for an offline application: is this the best option?
I'm looking to develop an offline version of an application that still needs to connect to the live site to retrieve the information and store results.
The application is for an online course system, that now needs to work when an internet connection is either unavailable or flaky. The system currently tracks each page viewed of the course (with flash and video content) and then also displays and tracks the taking of multiple choice exams. This all needs to be provided offline. I'm thinking that the program will connect through the users account at the start to download either a portion or all of the course, including exams and then at the end connect again to upload the results. (It'd be cool if it could do the process automatically when a connection is available.) The application needs to look similar to the online version and needs to be easy to use (easy install, little user input required for upload/download of results).
I have done a bit of research and it looks like Adobe AIR might be a good middle ground between the online version and an offline version.
My biggest issue is that I don't have experience developing desktop applications as I am a PHP developer, so I'm looking for something like AIR that bridges the gap. (The online version is a LAMP application.)
Has anyone used Adobe AIR for this type of offline application? How easy and secure was it?
Are there other solutions out there?
I think AIR is a great choice for this. I use AIR all the time now for in house utilities I write.
The built-in database and persistent store are great.
From your description, it sounds like Google Gears is a little closer to what you're looking for.
Adobe AIR is a great solution for this. We are building something similar. But we are facing problems in resuming downloads if the download process gets broken.
While you're at it, glance over the features in HTML5. Although it's still in its infancy, many browsers have already implemented quite a bit of these features, including those for offline web applications. Read about using html5 in your web apps now.