You can manage multiple versions of a single native application. A new version of the app is stored whenever you upload a new app file. With iOS and Android hybrid apps, Apperian stores a new version whenever it builds the hybrid app (which it does when the hybrid app is first added or any time you edit the app and specify the Rebuild option). Apperian can store up to 10 versions of an application's binary.
Typically, you will want your App Catalog users to have access to the "latest and greatest" version of an application—but there are times when you may want to assign a previous version, or assign different versions to different users. For example, if you have a new beta version of an app, you can get it into the hands of your Test group only while continuing to provide all other users with the previous "production-ready" version. For more on this and other typical use cases, see Use Cases for Multiple Application Versions.
If you want to always assign the latest version of an application to your users, this is the default behavior in Apperian and there are no additional steps to take or options to select when you upload a new version or make group assignments. If you do want to assign a specific version of an app to a group and not default to the latest version, you must specify that relationship when adding or editing the group. For more information, see Assign Specific Versions to Groups.
Use Cases for Multiple Application Versions
The following table describes typical use cases for working with multiple versions of an application.
|Test a New Version|
The ability to assign different versions of the same app to different groups allows you to test a new version of an application before deploying it to a larger audience.
Version 2.2 of the Actions app is assigned to the Sales group. Your developers just finished version 3.0.1, which includes numerous bug fixes and usability enhancements. You can assign version 3.0.1 to a Testing group (with users that are also in the Sales group) so that members of that group see both versions 2.2 and 3.0.1 in the App Catalog, while members of the Sales group still see version 2.2 only.
|Rollback to a Previous Version|
Access to older versions of an app provides a way to "roll back" to a previous version if a serious issue is found.
Version 2.1 of the Sales Tracker app is assigned to members of the Sales group, but a couple days after the app is deployed, a major bug is discovered. You can immediately disable version 2.1 in the Admin Portal, and change the group assignment from 2.1 to 2.0 (the previous version of the app). Users in the Sales group who have 2.1 installed will see 2.0 listed on the Updates tab and be able to install that version to overwrite the version currently installed on their devices.
Provide Users with Multiple Versions
You cannot assign multiple versions of an app to the same group, but you can put a user in multiple groups. The user will then have access to the versions assigned to those groups. Consider members of the Testing group mentioned earlier: those users are in both the Sales group and the Testing group so they have access to both versions 2.2 and 3.0.1.
Typically, multiple versions of an application share a bundle ID (iOS) or package ID (Android, Windows). Users cannot install two applications with the same bundle/package ID on the same device, but they can install the version they want over an already installed version and then re-install to switch back at a later time if desired.
When you view an application's details, the page lists all versions of that app that were added to Apperian. To download the binary file for a particular version, click its Download link.
Apperian stores the application binary for up to 10 versions of an application; if there are more than 10 versions, the Download link appears for the 10 most recent versions only.
Versions Versus Install Files
A new version of an app is created only when you upload a new application file (or rebuild a hybrid app). When you re-sign a version of an application (for example, after you apply policies), Apperian stores a new install file for the application, but it does not create a new version. If the version was already deployed to any users, those users will receive a push notification for the update.
The Version History for an application lists all versions stored in Apperian; it does not list install files. When a user downloads a version of an application, Apperian always delivers the latest install file for that version.
Assigning "Latest Version" or a Specific Version
When you add an application to Apperian or edit an application, you can assign it to one or more groups. By default, Apperian assigns the "latest version," which means that members of the group will always have access to the latest version of the app stored in Apperian. When you are adding or editing an application, you cannot assign a specific version. If you want to assign a specific version to a group, you need to do then when you add or edit the group. For instructions, see Add a Group and Edit a Group.
While you cannot assign specific versions to groups while editing an application, the Edit Application page does indicate which versions are assigned. In this example, the "Latest version" of the Actions app is assigned to the Quality Assurance group, but version 2.2 is assigned to all other selected groups. Right now, version 3.0.1 is the latest version of the app, but if a new version is uploaded to Apperian, then members of the Quality Assurance group will have access to that version.
The following application metadata is stored at the version level rather than the application level. This means that when users view details about an application in the App Catalog, they see the unique data associated with the version they are accessing.
- Version Number and Notes
- Short and Long Description
- Form Factor
- Minimum OS Version
- Custom Metadata
The example to the right shows the details page in the App Catalog for two versions of the Benefits app: V2.0 and V2.2 (the latest). Each version has a different name, icon, version note, and short and long description.
Some data, such as screenshots and application reviews, is stored at the application level so that users see the data associated with the latest version of the application, regardless of which version they are viewing. In upcoming releases, Apperian stores additional data at the version level.
If you are managing different versions of an application, keep the following points in mind when you update the application:
- If you upload a new version of an application to Apperian, users in groups that are assigned the "Latest version" of the application will see that update listed on the Updates tab in the App Catalog. They will also receive a push notification for the update (unless you choose not to send one when you upload the new version). Groups assigned a specific version will not see the new version in the App Catalog unless you edit the group to assign that new version or to assign the "Latest version."
- If you change which version of the application is assigned to a group, any users who have the previously assigned version installed on their devices will see the newly assigned version on the Updates tab in the App Catalog. They can then install that version over the currently installed version.
- If the latest version of an application available to a user is different than the version the user has installed on his device, then the user will receive a push notification when the administrator changes the assignment, and the newly assigned version will be listed on the Updates tab in the App Catalog. For more information on changing assignments, see Edit a Group.
- When users are in multiple groups that have access to an application and the application is marked as Mandatory, users will be forced to install the latest version available to them. This may or may not be the latest version stored in Apperian.
- When users are in multiple groups that have access to an application, those users will see all available versions listed in the App Catalog. When they install one of the versions, the button for that version will change to OPEN while the button for the other version(s) will stay as INSTALL. If a user chooses to install one of the other versions, it will be installed over the previously installed version.
For instructions on updating an application, see Edit or Update an Application.