Since CommCare is an engine for running individual applications, there are two things that could be meant when referring to updating an existing application CommCare installation. We'll refer to them as
This page provides a guide on how to perform each of these processes, and some of the gotchas which could come up when doing so
CommCare is changed over time to add new features and fix bugs in previous code. You'll need to upgrade the binary in order to take advantage of those features, or get the bugfixes. Some features will be available simply by upgrading CommCare. Others may also require updating the application's resource files (See Updating Your Application Resources below).
Each CommCare application has three version numbers in the format A.B.C where each stands for the following types of changes
There are two ways to upgrade a J2ME app. The new version can be re-installed, or the new version can be installed "in place" on top of the old version. Since CommCare's resources are almost always included with the application files, upgrading CommCare often happens at the same time as the Application Resources are updated, and as such a full re-installation should be used to update both at the same time (see note below)
In-Place upgrades basically involve installing the applicaiton onto the phone without first removing the old version. This is possible using the OTA, Phone-to-Phone, and Memory Card installation techniques. It is never recommended unless you are using a completely offline deployment, or in specific future use cases where OTA installation is being used to manage remote upgrades.
The below are guidelines for the minimum that should be required when performing an upgrade. Keep in mind that the safest way to upgrade an app is to always follow the full re-installation instructions.
Major version bumps will first require the migration of your application's resources to the newest version using CommCare HQ. Once a build of the app is available on the newest version is available, you should follow the full re-installation instructions.
Minor version bumps shouldn't require any changes to your application resources (although they will often permit you to include new features in them), simply create a new build with the existing resources and perform a full re-installation.
Maintenance releases are generally designed to be safe for an in-place upgrade on top of the old app (generally in order to correct bugs with OTA upgrades, although this feature isn't widely usable yet). However, a full re-installation is still recommended.
New releases of CommCare ODK on Android will be provided by the Android Market, as long as the application was installed from there. The app can be configured to update automatically or upgrades can be chosen manually. Since Android phones will install CommCare through the market, only the latest of each supported major release will generally be available. Specific major and minor versions can always be downloaded manually from Dimagi's build server, but shouldn't be necessary.
The process for a major version upgrade is to install the new CommCare ODK application for the market and install the new application into it.
Minor version upgrades may require the application to re-fetch resources or user data from the remote server when run the first time after an upgrade. CommCare should be started immediately after an upgrade (while data is available) to handle any changes which might need connectivity.
No manual steps should be necessary.