How software upgrade is desiged in Intel AppUp Center

How software upgrade is desiged in Intel AppUp Center

Dear Sir, One of important of aspects of a software product is upgrading. My software originally had the ability to check the software updates from the product website and upgrade online if user chooses to. I don't know how a submitted software in Intel AppUp Center upgrade to a new version (a major upgrade or a minor upgrade). People buy a product through Intel AppUp Center should has the ability of receiving the software upgrade ( if no pay is needed for upgrading). I was told that for new software version (may be a minor upgrade), we need to create a new application and get a new GUID for it. So the question is how a user of the old version upgrade to the new version? I was thinking that my original updating program can still check the updates from my website and upgrade using the binary specifically compiled for IADP. I don't know whether this is considered and allowed in the design of Intel AppUp software distributing platform. Regards, Haifeng
14 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Haifeng,

Similar to replacing the authentication portion of your code with the ATOM SDK, you will need to leverage the ATOM SDK versioning functionality.

All applications (and updates) must be downloaded from the AppUp client. You will need to remove your automatic updating feature, and use the 'Version Number' feature in your Dashboard (http://appdeveloper.intel.com/en-us/dashboard/myapps).

For each version you release, you will need to create a new build, update the version number in your dashboard and upload the MSI. It will then be validated; once approved it will be made available in the AppUp client.

Haifeng: Just to add to Brian's note. Once you have uploaded your new version, people who bought your previous version will see it under "Available Updates" in the client under "My App". User can then decide if they want to upgrade or not.

Thanks for the answers.

Then what processe the AppUp Center takes on the user side when user chooses to upgrade.
First uninstall old version then install the new version, or simply execute the new version MSI which takes the responsibility of dectecting the upgrading?

I think this process should be considered in authoring the MSI of both the old version and the new version, or the upgrade functionality may not work.

Thanks again,

Haifeng

Haifeng,

You have a good point. One needs to plan if/where user data and configuration files will be stored so that they may be utilized in an upgrade scenario.

So if the user choose to upgrade from "Available Updates" in the client under "My App", the client will directly execute the new MSI and it is the new MSI's responsibility to upgrade the old version to the new version. Am I right?

Thanks,
Haifeng

I think it will uninstall the current version fitrst and then installs new.

I tested this, and Dmitry is correct. In this case you will need to ensure that any re-used data is stored in a safe location so that it is not removed when the old version is uninstalled.

I have a question about the upgrades. I understand the update will be listed as an upgrade and the customer can choose to install or not based on the authors upgrade notes. I still do not understand from the above posts if the customer has to pay for the app again to get the updated version. I personally don't like it when you pay for a program and then have to pay for all updates.

Thanks,
Carl

Hi Brian,
If the AppUp client first unintsall the old and then install the new, then there may be no elegant way to keep the re-used data (such as settings). As in the concept of uninstallation, it should fully clean up the settings and data that the software left on the computer. Also It seems that an Install and Uninstall requirements article for ADP mentioned similar words that the uninstallation should clean up the software including its data on the computer.

Alougth an uninstall and install approach is safe enough for reinstall a new version on the client, yet it may not call "upgrade", but "reintall" which means to the user that the original settings is not guaranted to be kept.

Thanks,
Haifeng

Haifeng,

This subject has been discussed on the forums in the past. When it comes to the Validation Guidelines, user files are permitted to remain on the netbook after uninstall. This would include files such as: Saved game files, users settings, other user generated files. The elegant part is deciding where to stored this data.

Carl,

To answer your question; No, the user does not have to pay for any new version you create as long as you are using the same GUID (Same application). Trey will simply be made aware of the new release and choose when/if to install it.

One additional feature that may surface in the future is an in place upgrade. This would be used more for trial/demo/light version to be easily upgraded to a more feature rich version for a price. The details on this are still being worked out.

I agree that the user files or data may (should) be kept even after uninstallation.

But when mentioning the settings, the decision may vary I think. For example, for an image viewing program, the settings include what file types the user chooses to make file associations. When uninstall the software, all the file associations should be removed and restored to origin. While for upgrading the software, the file associations should be kept.

Of course, the software can remove the file associations and backup these settings to a user setting file and when reinstall, restore the settings from that file. But I don't think this is the elegant way to do this work just because we mix the concept of "uninstall and install" with the concept of "upgrade".

MSI can be authored to be able to upgrade the existing product if old version found or intall a fresh copy if not found. So my suggest is when user chooses to upgrade in the AppUp client, the client can directly execute the MSI of the new version. Let's the MSI itself to handles the upgrade. When the developer submits a new version, Intel can check the validation of the new MSI's upgrading functionality. If considering allow MSI without upgrade functionality, AppUp client can use uninstall then install approach.

Thanks,
Haifeng

I understand what you are referring to. You are looking for the standard MSI behavior outlined here:

http://msdn.microsoft.com/en-us/library/aa370579%28VS.85%29.aspx

I agree, this would be ideal, however I am not sure which command line switches Intel would need to implement to allow this while preserving the silent install they have now in the AppUp client.

This is a great suggestion for the AppUp client team.

Leave a Comment

Please sign in to add a comment. Not a member? Join today