App updates when using NEPacketTunnelProvider

When using HockeyApp or other custom over-the-air app distribution methods, we are experiencing that the download and installation does not finish when running an active packet tunnel. Only after disabling the VPN and pausing/resuming the download on the home screen, the upgrade succeeds.


Could a similar scenario also happen when upgrading live apps from the app store, given that they are running a packet tunnel? Or are these fundamentally different processes?

I've run into this exact same problem and have the same concern for when our app goes live on the App Store.

There’s a known bug that prevents iOS updating VPN apps (r. 24542371). It should be fixed in the current iOS 10 beta. Please try it there.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

I'm running iOS10 beta 8 and I'm still experiencing this issue. To follow up on Sandrideunion's question, is this likely to affect app store updates too?


Find some logs below:


Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Requesting termination for -1637380592250634413 / <private> (5)
Sep  2 17:03:01 iPhone-666 appstored[183] <Error>: [<private>]: Failed to acquire termination assertion for -1637380592250634413 / <private> error: <private>
Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Giving up on termination for -1637380592250634413 / <private>
Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Failing job -1637380592250634413
Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Releasing assertion for -1637380592250634413 / <private>
Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Showing error dialog for job -1637380592250634413 / <private>
Sep  2 17:03:01 iPhone-666 appstored[183] <Info>: [<private>]: Failed Placeholder for -8339753061652788274/<private>
Sep  2 17:03:01 iPhone-666 appstored(MobileInstallation)[183] <Notice>: <private>:InstallProgress:1:Success:<private>
Sep  2 17:03:01 iPhone-666 appstored(MobileCoreServices)[183] <Notice>: installPhaseFinishedForProgress: <private> - <private> called, removing progress from cache
Sep  2 17:03:03 iPhone-666 SpringBoard[57] <Notice>: Presenting a CFUserNotification on behalf of: appstored.183
Sep  2 17:03:03 iPhone-666 SpringBoard[57] <Notice>: Received request to activate alertItem: <SBUserNotificationAlert: 0x111432470; title: Unable to Download App; source: appstored; pid: 183>
Sep  2 17:03:03 iPhone-666 SpringBoard[57] <Notice>: Activation - Presenting <SBUserNotificationAlert: 0x111432470; title: Unable to Download App; source: appstored; pid: 183> with presenter: <SBUnlockedAlertItemPresenter: 0x17401a240>
Sep  2 17:05:35 iPhone-666 SpringBoard[57] <Notice>: Deactivated alertItem: <SBUserNotificationAlert: 0x111432470; title: Unable to Download App; source: appstored; pid: 183>
Sep  2 17:05:35 iPhone-666 SpringBoard[57] <Notice>: Activation - Pending activation of <SBUserNotificationAlert: 0x111432470; title: Unable to Download App; source: appstored; pid: 183> due to reason: (
    "Restricted because there's no presenter that can handle this alert item at this time."
)

I'm running iOS10 beta 8 and I'm still experiencing this issue.

If you’re still experiencing problems on the latest iOS 10 beta then you need to file a bug report about that. Please post your bug number, just for the record.

To follow up on Sandrideunion's question, is this likely to affect app store updates too?

My understand is that, yes, it will. OTOH, my understanding is that this bug was fixed, so a grain of salt is clearly required here (-:

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

I can confirm that this is still happening on iOS 10.0.1. Here are some similar / relevant console logs (all times are in PDT):


Sep 21 13:22:59 Dev-iPhone appstored(MobileInstallation)[177] <Notice>: <private>:InstallProgress:0:Success:<private>
Sep 21 13:23:01 Dev-iPhone appstored[177] <Notice>: [<private>]: Download task did finish: 7 for download: -554084516038726615
Sep 21 13:23:01 Dev-iPhone appstored[177] <Info>: [<private>]: Requesting termination for -554084516038726615 / <private> (1)
Sep 21 13:23:01 Dev-iPhone appstored[177] <Error>: [<private>]: Failed to acquire termination assertion for -554084516038726615 / <private> error: <private>
Sep 21 13:23:01 Dev-iPhone appstored[177] <Info>: [<private>]: Scheduling another termination attempt for -554084516038726615 / <private>
Sep 21 13:23:05 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_connection_endpoint_report [23 rink.hockeyapp.net:443 ready proxy (satisfied)] reported event path:satisfied_change
Sep 21 13:23:28 Dev-iPhone appstored(CFNetwork)[177] <Notice>: TIC TCP Conn Cancel [17:0x1005dedd0]
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_endpoint_handler_cancel [23 rink.hockeyapp.net:443 ready proxy (satisfied)]
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_endpoint_handler_cancel [23.1 192.168.2.1:8888 ready socket-flow (satisfied)]
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Notice>: __nw_socket_service_writes_block_invoke sendmsg(fd 20, 31 bytes): socket has been closed
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_endpoint_flow_protocol_disconnected [23.1 192.168.2.1:8888 cancelled socket-flow (null)] Output protocol disconnected
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_endpoint_handler_cancel [25 dry-run rink.hockeyapp.net:443 ready proxy (satisfied)]
Sep 21 13:23:28 Dev-iPhone appstored(libsystem_network.dylib)[177] <Info>: nw_endpoint_handler_cancel [25.1 dry-run 192.168.2.1:8888 ready socket-flow (satisfied)]
Sep 21 13:23:28 Dev-iPhone appstored(CFNetwork)[177] <Notice>: TIC TCP Conn Destroyed [17:0x1005dedd0]
Sep 21 13:23:31 Dev-iPhone appstored[177] <Info>: [<private>]: Requesting termination for -554084516038726615 / <private> (2)
Sep 21 13:23:31 Dev-iPhone appstored[177] <Error>: [<private>]: Failed to acquire termination assertion for -554084516038726615 / <private> error: <private>
Sep 21 13:23:31 Dev-iPhone appstored[177] <Info>: [<private>]: Scheduling another termination attempt for -554084516038726615 / <private>
Sep 21 13:24:01 Dev-iPhone appstored[177] <Info>: [<private>]: Requesting termination for -554084516038726615 / <private> (3)
Sep 21 13:24:01 Dev-iPhone appstored[177] <Error>: [<private>]: Failed to acquire termination assertion for -554084516038726615 / <private> error: <private>
Sep 21 13:24:01 Dev-iPhone appstored[177] <Info>: [<private>]: Scheduling another termination attempt for -554084516038726615 / <private>
Sep 21 13:24:31 Dev-iPhone appstored[177] <Info>: [<private>]: Requesting termination for -554084516038726615 / <private> (4)
Sep 21 13:24:31 Dev-iPhone appstored[177] <Error>: [<private>]: Failed to acquire termination assertion for -554084516038726615 / <private> error: <private>
Sep 21 13:24:31 Dev-iPhone appstored[177] <Info>: [<private>]: Scheduling another termination attempt for -554084516038726615 / <private>
Sep 21 13:25:01 Dev-iPhone appstored[177] <Info>: [<private>]: Requesting termination for -554084516038726615 / <private> (5)
Sep 21 13:25:01 Dev-iPhone appstored[177] <Error>: [<private>]: Failed to acquire termination assertion for -554084516038726615 / <private> error: <private>
Sep 21 13:25:01 Dev-iPhone appstored[177] <Info>: [<private>]: Giving up on termination for -554084516038726615 / <private>
Sep 21 13:25:01 Dev-iPhone appstored[177] <Info>: [<private>]: Failing job -554084516038726615
Sep 21 13:25:01 Dev-iPhone appstored[177] <Info>: [<private>]: Releasing assertion for -554084516038726615 / <private>
Sep 21 13:25:01 Dev-iPhone appstored[177] <Info>: [<private>]: Showing error dialog for job -554084516038726615 / <private>

I have filed bug 28413137 to track this issue.

I can confirm that this is still happening on iOS 10.0.1.

Well, that’s disappointing.

I have filed bug 28413137 to track this issue.

Thanks!

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

I can confirm that this is still happening on iOS 10.0.1.

I had a chat with the VPN Engineering team about this issue and they are aware that this problem is not fixed in iOS 10. They’re hoping to fix it in a future software update but, as always, I can’t discuss The Future™.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"
They’re hoping to fix it in a future software update but, as always, I can’t discuss The Future™.


I can confirm that both in iOS 10.1 beta 1 and beta 2 this issue is still there.


I have a strong feeling this happens (at least in my case) due to the use of an NEOnDemandRuleConnect which kicks in the plugin also after the app is trying to update itself.

I can confirm that both in iOS 10.1 beta 1 and beta 2 this issue is still there.

Indeed. At this point it looks like the fix won’t catch the 10.1 bus.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Not sure if it's helping, but we are also developers affected by this issue. This is particularly troubling for us because our app installs OnDemand rules and its functionality is hindered by the VPN being disabled.

How can such a profound issue not be fixed yet? How can iOS 10 be released with so many glraing issues?

Can you confirm whether this might be picked up in 10.2? And would it make sense to create a second bug report? I can confirm that the 10.1 GM does not resolve this issue.

I can confirm that the 10.1 GM does not resolve this issue.

Indeed.

Can you confirm whether this might be picked up in 10.2?

I can’t even confirm the existence on 10.2 (-:

Seriously though, you should re-visit this issue once we start seeding a post-10.1 release. And, no, I can’t give any hints as when that will happen.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Thanks for your patience in responding to this issue, Eskimo.


On the iOS 10.2 Dev Beta 1, I am happy to report that I'm seeing updates work successfully, which is great!

I did not see this mentioned in the change logs. Can it be confirmed that this is intentionally working as promised now?

App updates when using NEPacketTunnelProvider
 
 
Q