IOS Wi-Fi network switching

My company is developing an accessory for the iPhone that requires a relatively high speed connection to the phone. Due to MFi limitations (USB 2 in HOST mode is only about 100 Kbps), we are considering placing an ad-hoc WiFi network on our accessory and connecting to this network with iPhone WiFi.

In many ways, this can go very well, except that we seem to be unable to find (Apple approved) a way to programmatically switch the iPhone's WiFi connection. Ideally, the application will automatically connect to the accessories network when it is visible, and then reconnect to the user's preferred network if it is not visible / necessary.

We know about the structure of MobileWiFi, which is in line with the technical bill, but will not go through the Apple approval process.

Can anyone suggest a way to achieve our goal? Perhaps there is a system representation of the model that can be invoked to allow the user to switch Wi-Fi networks without directly using private APIs?

Creative solutions are welcome!

+6
source share
2 answers

I hate to say this, there really is no way to do this. I can think of two simple workarounds.

1. Make it available to Cydia for jailbroken devices. AirServer just did it.

2. Less elegantly, UIAlertView with a switch to the Wi-Fi panel of the Settings application, which is displayed when a peripheral device is connected and disconnected. Very similar to the location settings tooltip.

3. Make an Android app!

Apple, you're a pain in the ass.

+7
source

Sorry to be the bearer of bad news, but the definite answer is no. The main problem with your approach will not even be the Apple approval process, but the inability to access the Internet when connected to your device. iPhone doesn't even try to use cellular data when connected to Wi-Fi, since Wi-Fi is connected to the Internet or not.

You can write a bug report requesting these features, and pray that Apple hears you, which is likely to never happen in this case.

I would suggest going bluetooth, but if usb is not fast enough for you, assume this is not an option either.

This pretty much brings you back to the square and goes over USB. Or distribute your application through Cydia.

+3
source

Source: https://habr.com/ru/post/894593/


All Articles