Old way to determine connectivity no longer works

In Airplane Mode in iOS 16, the Get Current IP address action returns “Unknown Host” for External address, and a local IP for Local address. This makes determining whether there is an Internet connection impossible with this method. Is there a workaround for this?

Try this shortcut.

https://www.icloud.com/shortcuts/3d2d79ed51604b02aa6f0428bd4c2b5b

Unfortunately, this returns “Network” for cell networks, even in Airplane Mode (on iOS 15, anyway).

You started with iOS 16, but now you are referencing iOS 15, and you were trying to distinguish if there was network connectivity vs airplane mode, biut now you seem to be saying you don’t want cellular network connectivity to be identified as a network connection when airplane mode is enabled. I assume I must be misreading something in what you wrote as airplane mode only allows you to re-enable wifi alongside and not cellular as far as I am aware… and cellular is a network connection (though it may not be a data connection based on plans, availabiliry of data receiver, cell provider network errors, etc.)

I tested the shortcut on iOS 16. When I enable airplane mode, wifi and cellular are disabled, I get a “No network” result. When I disable airplane mode and have any combination of wifi and cellular enabled, I get a “Network” result. Same result with airplane mode on and wifi enabled, I get “Network”.

Note: during testing I had an wifi and cellular connectivity in the area. If no service were available for these, I would expect to have received a “No network” result.

Can you define precisely what you want in what circumstances?

Your testing is helpful. My phone is iOS 15, my wifi iPad 16. So I can’t test cellular on iOS 16. On iOS 15, your shortcut returns “network” for cellular connection even when there is no cellular connection. Shortcuts can access the Carrier Name even without an active cell connection.

It sounds like your way will work in iOS 16 but not 15. Just using the Get Current IP Address action works in iOS 15, but not 16. So perhaps I’ll have to detect system version and fork the response.

Would you mind checking this modified version out and seeing if it works for you? Shortcuts

That works for me on an iPhone running iOS 16.5.1 with airplane/wifi/mobile accordingly.

Out of interest, what happens on iOS 15 if you check for signal bars instead of mobile network name, and adjust the logic check accordibgly?

https://www.icloud.com/shortcuts/e5d282c0e98a4550900aae9987a4d410

I get this error on both iOS 15 and 16.

You have modified the shortcut I shared. I don’t see any count action, any text action, the variable has a different name.

Does the original shortcut I shared work?

If it does, then we can look at resolving the issue with your shortcut once you share a link to it so we can see the whole context for what you have used. I assume it is some revision of your previous shortcut, but the details are critical in order to analyse what is going on.

I have not modified it. This is your original “Network Check With Bars” shortcut.

There is a count action, and a text action (the bottom of which is in my screenshot), but the first action is “Get Cellular network’s Carrier Name” on my iPhone, and “Get Wi-Fi network’s Network Name” on the iPad.

My sincere apologies. I can see now that it is and that there was something that confused me on first look… which really shouldn’t have, and is entirely my fault :confounded:

I’d checked this on my iPhone previously (noted above). I guess, like you, I have a wifi only iPad. I see the same shift in logic (mobile → wifi network details) as you. That’s a bit frustrating to have the app rewrite that code on the fly.

Subsequently the bars will be a name, and so the calculation is nonsense.

You could work around this maybe, but at that point you are getting into a similar setup as you had earlier, so I don’t see much point in doing so.


If you are willing to install a third party app, then there may yet be a much simpler option.

Toolbox Pro has a Get Connection Status action that could potentially condense all of the logic down to a single check.

Hope that helps.

No, sorry, this is for my public UpdateKit API Template shortcut.

So this is all working—sort of. But now, when it checks for updates, it offers to send my network names to updatekit.mikebeas.com! Why in the world is it doing that? Here’s the shortcut: Version 1.1-b.2