Can I see the different WiFi SSID and their channels with iOS? - ios

I would like to know the way for how to get the SSID of all WiFi hotspot around me and their channels.
I have been researching in the forum and I think I can't if I want upload my App to AppStore because I had to use a private library.
Is it right or not? :(

At the moment you can only see current connected SSID details using the CaptiveNetwork framework here unless you use some private library as you said but this will get rejected. From my research Apple have been restricting access to WIFI services all developers apart from a few like the Boingo, Vodafone or BT app. See this comment from Apple support engineer here about this topic, most of which state to submit a DTS request...

Related

Enable personal hotspot programatically in iOS using Swift or Objective-C

I am looking for a way to enable personal Hotspot programatically in iOS using Swift or Objective-C but did not see any API or way to achieve that.
My question is that even possible to do that?
Does Apple allow that?
Also as per Apple Developer Documentation HotSpot Helper what are the controls we can achieve that ??
Hotspot Communication
Hotspot helpers can use these APIs to communicate with the hotspot even when Wi-Fi is not the default route.
func bind(to: NEHotspotHelperCommand)
Binds a URL request to the network interface associated with the hotspot helper command instance.
In-Provider Networking
Network APIs for use by all types of NetworkExtension providers and by hotspot helpers.
This is not possible. From Apple's Forums:
There’s no way to do this programmatically. You can get the iOS device’s current Wi-Fi network SSID using
CNCopyCurrentNetworkInfo
, but there’s no way to get the corresponding credentials.
If iOS did allow this, this would be a privacy and security risk. There is no private API to do this either. As Pushkraj Lanjekar said,
You can just open device Settings view from app.
There is no way to programatically control personal hotspot on an iOS device.
This Apple Forums link may be helpful, however; https://developer.apple.com/forums/thread/113933.
Apple don't provide any API to Turn On/Off Personal Hotspot. Rather, you can't change any user setting via code. You can just open device Settings view from app.
Apple's privacy policies will not allow you to do this.

Redirecting Data flow to either wifi or Cellular in ios

I want ot redirect my iPhone data to either wifi or Cellular. Based on some criteria. Is it possible to redirect whole of the iPhone data to a particular interface like to either wifi or cellular. ?
I heard that this can be done using VPN but no idea how it can be done.
Any help on this?
By default, iOS help you with redirection when you have weak/good WiFi and switch on in Setting - WLAN Assist
MultiPath is a technology switching automatically by OS
Just read this Apple Doc for more help.
You can't manipulate it easily with high level API.
After all, changing device data flow is kind of low level thing. Just like NetworkExtension is Apple provided. As far as I know, Apple does not mention it in public.

How to get the device name and type of device while scan local network?

I am scanning my local network and i am getting their ip and their mac address, but i want also the device name like "Hassan's Iphone" and type of device, so help me how can i get this.
thanks in advance
I think you need to have a look at something like in the following link:
Stumbler
We deal with anything wireless on the iPhone: 802.11, GSM, and Bluetooth.
Stumbler lets you view the wireless networks in your area. While right now Stumbler only handles 802.11 networks, soon you should see Bluetooth and GSM capabilities as well. Stumbler is still in a early Alpha stage, but it is fully functional, and pretty stable
However they also thoroughly mention that:
Stumbler can not be distributed through the app store, as it uses private APIs!
Following is the link to the blog post where I found the above Stumbler Google Code Project!
So I'm not sure even if what you require is possible to do, it won't be able to publish through the Apple App Store.
You better read the following StackOverflow answers too:
Programmatically finding IP address of another computer on LAN
gethostbyname xcode issues
https://stackoverflow.com/a/27099363/1752988
How Scan devices in a LAN network
Another blog post which mentioned about Stumbler tool
iOS. get other device/computer name by IP in the same local network
iOS - How to get device make and model?
LAN-Scan Git Hub Project
I think it's better next time before you put a StackOverflow Question please research on the web using Google and StackOverflow both together!

Paring iOS app to Samsung TV as remote controller

I have been using Upnpx library to discover the TV using Upnp protocol.
What I have to do now is to pare my iOS app with the TV as a remote controller.
The first objectives are to take control of the sound volume, move the mouse cursor, browse through web-browsers, etc.
I have tried to google for urn:samsung.com:device:RemoteControlReceiver1 specification but I had a hard time to find useful informations.
Has someone already done this before and could give me directions or the technical specification to control the TV from a remote app ?
Regards,
You could try to use Charles. That way you will be able to sniff your network. Then try to duplicate the functionality in your app.
Just for the people who will face the same issues.
I paired my iOS app to the samsung TV through TCP socket (I used GCDAsyncSocket to handle this) and using the great informations I found here :
http://sc0ty.pl/2012/02/samsung-tv-network-remote-control-protocol/

Can i get details of wifi networks near my iPhone? Scan all wifi networks near my iPhone

I want to get the list of wifi network near my iPhone. Get the details such as signal strength,SSID , MAC Address from the wifi network, without using any 3rd party library (i do not want my app to be stuck off in any review process). please help me , i need to get this going soon.
Simple answer… You can't by using public library. You sure can using private ones, but you don't want apple to reject your app.

Resources