Is there a way to Connect with a Wi-Fi Modem via my iOS app without using Settings Page? - ios

I want to connect with a Wi-Fi Modem via my iOS app. I don't want the user to go to Settings page and Activate Wi-Fi. Is it possible to achieve a Single Button - Pressed & Wi-Fi Connection Activated?
Thanks for your reply!!!

This is not possible unless you use Apple80211 private API, which will be rejected from the App Store.
Here's more information on how it's not possible, and here's a framework for jailbroken phones to use private API and seek/connect to a network.

Related

Is it possible to create an app that "picks up" a particular wifi signal as a cue to turn on the app or blue tooth?

You know how when you go into your wifi signal page
you see a list of all the wifi your phone is currently picking up?
If a person were to download this special app where he or she consent to it
is it possible for this app to recognize one of the signals as a cue to turn on bluetooth or launch an app?
No this isn't possible without jailbreaking since it requires a private library (Apple80211). You can only get the SSID of the network your device is currently connected to.

How to let user open Wi-Fi when the Wi-Fi is not enable

When user open my app, I want the Wi-Fi is enabled, it can have no connection ,but the Wi-Fi must be enabled. The query should return true when WiFi is enabled and device is not connected to any network.
Well there is no official support by Apple for this. There however is some trick to get the required result but there are changes of your app being rejected.
Have a look at this unofficial trick:
http://www.enigmaticape.com/blog/determine-wifi-enabled-ios-one-weird-trick
To answer your second question i.e. If wifi is enabled, you can find out if internet is accessible of not using this: iOS Detect 3G or WiFi

Connect to wifi using nfc

I am looking for a way to connect a NFC phone to my wifi (just using the built-in feature of NFC).
My current plan would be to push my wifi setting to the phone so that non-NFC phones can still connect to my wifi using a password.
My alternative plan was to use a NFC reader to get informations like mac address of a phone then add it to my list of approved mac addresses in my router.
What plan have the most chance of succeeding and how to go about it?
The first plan sounds promising with the use of an app you can read the wifi credentials off the nfc http://lifehacker.com/six-sweet-things-you-can-do-with-nfc-1323120090
as answered here Share Wifi credentials via NFC tag without special apps its not supported to currently do this with out a nfc reading/dedicated nfc wifi app

how to turn on vpn in ios app ? ( public api )

there are many kind of app in appstore that use vpn on demand.
some application like hotspotshield when you open the app, it can turn vpn on even if vpn on demand is off.
is there any public api for turning vpn on in app, like hotspotshield ?
even astrill is an app available for ios (iPhone VPN connect app).. it provides a toggle to switch vpn on and off from the app directly... so my guess is it used some third party api..
right now.. there is no public api available to toggle vpn from an app..
urlscheme could have been used to atleast open vpn setting from ur app .. but even that was deprecated.. so no chance for now
Now it's possible, but only with IPSec and IKEv2 protocols. See this great example https://github.com/lexrus/VPNOn

Connecting to a special wi-fi network via iPhone App

I have to build an App that connects to a special Wi-Fi network and the opens an Ip address that is only available withing the network.
Is it possible to connect to a special wi-fi network (say "Network XYZ") via iPhone App. If so, please let know, so that I have an idea how to solve this.
Sadly no. Not from within the app.
All you can do is instruct user to go to settings and connect to that network.
If iPhone was not registered to any WiFi network before entering your app and your app has usesWiFi key set to YES then user will get a list of available networks to choose from.
One more big problem is: there are no AdHoc networks on this list - only infrastructure networks. AdHoc networks are available only trough settings.
What you could do is to instruct your user to set the auto-join feature on for desired network.
I'm afraid the only way to change the network is via the Settings application. Otherwise, rogue apps might be able to move users to their own proxies without the user's knowing.
It may be possible on jailbroken devices, however, as you would no longer be confined to working within the usual app restrictions on accessing system-level settings.
You can have your app launch once the user connects to the SSID you specify using the CaptiveNetwork API.

Resources