Hey there! I have developed an application version 1.0. I would like to allow the app to auto update itself if a new release is available. I've done this in windows phone using a .dll. How can I do the same for symbian s60 3rd edition FP2?
Hey there! I have developed an application version 1.0. I would like to allow the app to auto update itself if a new release is available. I've done this in windows phone using a .dll. How can I do the same for symbian s60 3rd edition FP2?
Basically you should update the installation file into the store, and let the user update the application with the store.
If you don't like the idea, then what would be the good reason why you wouldn't want to do it this way ?
Implement some kind of a "versiocheck" API (simple HTTP request is probably best) where your app uses the API and your server tells the app whether an update is available or not, and if one is, allows the user to initiate a (HTTP) download and launch the installation of the updated version from your server.
You can decide what kind of an upgrade package it is. Check the Symbian SDK docs for .pkg format issues and about upgrading apps in general.
Note that possible signing issues (i.e., if you have Nokia sign your v1.0 for distribution through Nokia/Ovi Store, then you'd need the upgrades to be signed and distributed through Nokia Store, too). I.e., sign it yourself (or have it signed via Symbian Signed).
Also, is it a Qt app or pure/regular Symbian C++ (if the latter, you're on the wrong forum).
It is a Qt Symbian application. Yes the idea would be to have a web server with the latest version ( a .pkg file then?) and download it. But how can the installation of this new version be done automatically within the old app?
You just create a new .sisx package (whether it is a full package or an upgrade package) and then let the system handle it: http://www.developer.nokia.com/Commu...r_Launcher_API
I have version 1.0 and If there is a new version 1.1 I want 1.0 to update itself. It will download the .sis file from the web server and installs it. What about the version 1.0? How can I remove it as soon as version 1.1 is installed. Or even better how does the 1.1 .sis replaces the 1.0 .sis file because in http://www.developer.nokia.com/Commu...r_Launcher_API there is a note that states that:
"NOTE: If you try to install new version of the application itself, the installer will kill the application that has called it and after that the installer will freeze. "
Applications can not update themselves directly, that is what the remark is about. A possible workaround is having a separate updater executable in its own .sis file. When the application wants to install the update, it installs the updater instead, launches it, and the updater will be able to install the new version of the main application. It may be a good idea to uninstall the updater application after use (on the first start of the updated application).
The updater application can be packaged with the main application (as a regular data file), or just downloaded with the new version.
And read also up in the SDK docs about .pkg files (as mentioned), esp. about the upgrade package types:
http://library.developer.nokia.com/i...96F1DF5CF.html