Thank you Chris for your answer.
Sorry but have you a link with some documentation or exemple to update a native installer ?
Unfortunately I don't know of any examples, but it should be as simple as opening the downloaded installer with File.openWithDefaultApplication(). Please let me know if this does not work for you.
I have a similar problem too. I have an application which was developed in AIR 1.5. I was able to update it using the ApplicationUpdaterUI Class. I have already deployed the AIR application's version 1.0 on user's machine. Now I have migrated from AIR 1.5 to AIR 2.0 since I found the concept of Native Installers very interesting and wanted to take advantage of the new features available in AIR 2.0. I packaged my AIR application and created a exe to deploy on the user machines. But the problem is with updation. Now the scenario is that the user already has application running on his machine and i want to update it to this new exe created using AIR 2.0 so that the user's application is not affected in any way. It should only be updated. Is there any way i can do that ? Can you provide us with a example or a sample application, if possible ?
Also once this update succeeds the user will now be having a exe file on his machine. So the next time if any update is enforced, the exe on the user's machine should be updated. Please provide your valuable suggestions.
Thanks in advance
I am also facing same problems with the installer. I was able to update my .Air file but When I convert my .air file to native application (.exe). I am unable to provide updates for the application.
In fact an installation with a .AIR file can be update with an other .AIR file, but an installation with a .EXE file (or other) can't !!!!
It's really incredible, because AIR 2.0 is the third real AIR version and lot of people had deployed their app since 1.0 version and today it's impossible for them (us) to use the new capacity of 2.0 (native installer).
Of course Adobe had no documentation or exemples for solve this situation ?
Maybe a 2.1 version to correct this mistake Mr Adobe ?
I'm working on getting some documentation/tutorials created to cover the native installer update scenario. We understand this is a popular request and I'll definitely report back on the forums once our documentation is complete. If anyone has feedback, examples, or links to posts/blogs detailing this scenario please don't hesitate to let everyone know.
From my understanding, updating a native installer-based app to a newer native installer-based app should be straight forward. Once you've downloaded the app, you should be able to call File.openWithDefaultApplication() on the native installer which should execute it properly.
Unfortunately, there is no clean path to upgrade an .air-file based app to a native installer-based app. There are no internal API's that would allow you to launch the exe (or dmg, etc) from your AIR app so you'll need to have the user manually launch the installer.
I did following to get all my existing users upgraded to native installer based app.
a) develop a version of the existing air app (new version say 1.05 , same app name, same pub id), which will be installed on 1.0 version using the existing version upgrade f/w which 1.0 version of your app is already configured to do.
b) this version on installation and launch would download the exe based setup (new version say 1.1 ), on prompt the user to save and run the exe, by opening it in a default browser (using navigate_to_url )
c) when user runs the exe (new setup) it asks for replacement of existing application, i.e upgrade to new version.
d) this new version then takes care of the any further upgrades by downloading the latest exe from server (write code for it), and then runs the exe, either by using openWithDefault() or as a native process.
Once you call open with default or call it as a native process, invoke close on the existing app, so that it closes before the version upgrade begins, there by allowing installation.
This process is kind of not that good looking, but it seamless from user experience point of view. Just that it prompts for version upgrade twice. But is still an auto process, and I think the best you can do it with all your existing installations without asking the user to do any manual un-install and re-install of new version.
Let me know if this helps.
Ok finaly it appears that is the only solution, but if this method is possible (It's really possible to execute a exe file directly from an AIR app ? no restriction ?), it's really not a friendly method. This mistake makes unusable the native installers for a lot of us. Pending a correction of the update I continu to use the AIR files (but not by choice). Please Mr Adobe an update to correct this error very quickly.
I think even if you invoke the exe using native process.. system restrictions will still apply... so if the exe is downloaded from web
and is marked blocked (say on Vista), it will throw an error.