Updating managed iOS apps with auto update off

St0rMl0rD
Contributor III

Is anyone else having serious issues with pushing out updates to managed apps (device based VPP)?

For us, this doesn't work at all. The apps only update if we turn the auto update feature on, which we don't want to, because we still have 9.2 devices in use. So, for a managed app that's scoped to devices using device based VPP, we push the "Force Update" button, but nothing happens on the iPads that don't have the latest version of the app installed. We're using JSS 9.91.

Anyone?

13 REPLIES 13

cbrewer
Valued Contributor II

I've heard that "Force Update" only works if Auto App Store updates is turned on. I don't think there is a middle ground here. I'd recommend making a big push to get devices on 9.3 and then turning auto updates on. Another option is start deploying your apps as unmanaged and let users handle their own updates.

St0rMl0rD
Contributor III

That doesn't make any sense. We want to control when the apps are updated and which ones. We are currently as unmanaged (VPP user assigned), but we want all the devices to have all the apps for sure, so we'll be going with device based app distribution.

Also, JSS had a bug where they said to leave the auto updates off. We don't want to put such a big pressure on our internet line to have the JSS constantly updating all of our almost 200 apps.

mmcallister
Contributor II

There is a feature request for this: https://jamfnation.jamfsoftware.com/featureRequest.html?id=4763

St0rMl0rD
Contributor III

I think this is more of a bug than a feature.

cdenesha
Valued Contributor III

@St0rMl0rD I agree but I'm always asked to submit FRs so many times I'll do that first then send the Support email referencing my post.

For now you could create another app entry in the Catalog (same app, different name, perhaps ending in FOR AUTO UPDATES) and scope it to the same scope as the first app, AND iPads with iOS 9.3 and above. That one you could turn auto updates on for, and do the forced updating. It'll show in Self Service but shouldn't be a big deal - perhaps put it in a Category alpha sorted to the bottom (i.e. zzzTech Use Only).

bentoms
Release Candidate Programs Tester

@St0rMl0rD 200 apps? No caching servers?

cdenesha
Valued Contributor III

I think the point is that they can force the update when they want - when students are offsite. :)

Also, I like to do them selectively as well to protect against inadvertent bugs.

St0rMl0rD
Contributor III

@bentoms we do use caching server, several instances in fact, it wouldn't work without it

bcampbell
Contributor

If you use the idea from @cdenesha of two app objects as a workaround and don't want both apps to show in Self Service, you can create a device smart group for the iOS 9.3 and above iPads then exclude them from the non-auto update object. I sometimes do that for apps that I want auto installed for some grades of students but want just in Self Service for on-demand install for others.

cdenesha
Valued Contributor III

Nice idea @bcampbell!

Also, I'm pretty sure my suggestion is working for me (although it might be on my test server)... but the release notes for JSS 9.92 seem to specifically call this out:

Multiple versions of the same app may now be scoped to a device and the JSS will deploy the most recent version of the app.

andrew_zhuravle
New Contributor II

We have the same situation: there are almost 300 iPads with apps. We want to check compatibility of new versions of several apps and then update them. That's why we cant use Autoupdate function. But the which idea i want to try is following: 1. Turn off Autoupdate in app properties. 2. Check new version if it appears. 3. Make new Smart group with selection of all iPads with app with "not latest" version. 4. Turn on Autoupdate in app properties. 5. Push "Update inventory" for all iPads in that group. 6. Turn off Autoupdate in app properties when all iPads left the group.

How do you think, will it work properly?

cdenesha
Valued Contributor III

@andrew_zhuravlev Based on my experience of the past month with the google apps..

At Step 4 when you turn on Autoupdate in app properties it will send the command to update the app for all devices in scope without the current version. The Update Inventory should not be necessary.

One app updated some users to the current version when I turned on Autoupdate, and the other users to the current version minus 1. I have no idea why.

I am unclear on how the JSS determines if there is an updated app. If I leave the version number alone, turn on Autoupdate for the app, and click Save, the version number does not update. It usually does after a day or two?

chris

CairoJXP
Contributor

We are on JSS 9.101 and I've figured out the solution to this issue with 2 different processes.

Process 1: this is fine assuming you'e not worried about data loss with the app
1. In Mobile Device Apps, make a new app profile for the app you want updated 2. Remove the scoped groups from the old profile and delete that app profile.
3. Once you can see (via update inventory on one of the devices in a scope) that the app has been uninstalled, add the groups to the scope of the new app profile you created and let it auto-install the app

Process 2:
1. In your current app profile, check off the "automatically update app" and set the time within a minute or two from the current time.
2. Let the app update at the scheduled time and refresh your browser to see that the version has actually changed in that app profile
3. Be sure you're in edit mode and click the "force update" button and it will then push out that new version to the devices it's scoped to

The force update isn't clear on how it works, but I was successful using both of these methods. Hope it helps!