iOS: Use WiFi and Mobile Data simultaneously - ios

Setup:
My project involves a WiFi Camera which creates a WiFi hotspot. In order to stream video preview/browse media on the Camera, the user needs to connect to Camera's hotspot.
Problem:
The user cannot use the cellular data over 3G/4G simultaneously, as the iOS device is already connected to the camera via WiFi.
What I have tried? / Investigations
Customizing WiFi hotspot by setting Static IP, Subnet Mask and leaving all other fields empty. This works as expected, iOS connects to the internet via Mobile Data showing the 3G connection, also connects to WiFi silently.
This solution needs to show details to the user how he needs to configure WiFi network connection, which is not user-friendly.
MultiPeer Connectivity
Possible only with Apple devices
What do I want?
Is there any way to do this programmatically?
(I want to submit to App Store - No private API)
Is there any alternative to this?
Any other direction to solve this problem?

Related

How to use cellular data when connected Wi-Fi network?

I'm looking forward to use cellular data when connected Wi-Fi.
Yi dash camera works like this.
Yi camera make Soft AP.
iOS or Android phone connect the Wi-Fi.
Between YI and Phone, internal network is made,
generally, phone cannot use the internet.
but, in Yi network, phone can use internet, sns, streaming, and etc.
How can i do it?
Thanks in advance.
One solution (not practical from an app user perspective) is to manually go to the iPhone Settings, Wi-Fisection and select the desired Wi-Fi hotspot i(info).
From there you can change Configure IP to be Manual instead of Automatic and set the IP Address to be the same one as in Automatic (same for Subnet Mask) and make sure that Router is left empty.
That way, iOS won't try to use the Wi-Fi to connect to internet but use cellular if available.

Internet access between WiFi-IoT in Access Point mode with mobile phone connected

I did a lot of brain-storming about this, and couldn't reach a solution.
I am posting this as i can get some ideas.
I have developed a WiFi-IoT based device with sensor, which shows up in AP mode. A mobile phone connects to this AP and then the device starts sending sensor data to the mobile phone. A mobile application plots and displays this data.
Now, i want to send this data from mobile to internet. Connecting my mobile to another AP with internet is not an option, as i don't want to break the continuous data transmission.
Using internet of data provider is one option, but that brings constraint of have mobile data.
What other options do i have to send my data from mobile to internet ??
Edit:-
I worked on the suggestions, and came to this point:-
1) WiFi-IoT device (in station mode) and mobile phone connect to same Internet-enabled WiFi access point. WiFi-IoT device has the IP address of the mobile phone for current network, and sends data to a TCP port (eg. 9801) of this IP address. The application in mobile phone reads the data from the port no. 9801 and stores it and hosts it on the internet.
This works fine.
2)WiFi-IoT device comes up in Access Point mode, and the mobile phone connects to this Access Point. Now there is one-to-one connection between WiFi-IoT device and mobile phone.
My question is, in the second scenario, without breaking this one-to-one connection, is there way to host data to internet:-
1) without using mobile internet provided by mobile data service provider ?
2) without using a second mobile phone ?
I may be wrong, but i am just asking this to make be sure whether my requirement can be achieved or not !!
I don't think you can connect to two APs at the same time.
Maybe use Bluetooth as device to phone link?
Or have the device connect directly to internet after some config done in AP mode and then send a copy of the data to your phone app (either via WAN or locally to the private IP your phone gets from the Internet gateway AP)?
--Edit--
Let me explain about the second one:
What I mean is basically have your IoT device directly connect to Internet and send data to a server (your phone has also to be connected to Internet). Then make the server send a data copy back to your phone. It's two step process: 1) while the IoT device is in AP mode, use your phone to login and configure which Internet-connected AP it should be connected to. This serves as UI for your IoT device. 2) start sending data.
Or a bit ugly, just let the IoT device talk to your phone in the same WiFi network via private IP.
I brought up this way because you mentioned anyway your device has to send data to Internet(I assume it's a server) and have phone talk to a known location server is more portable and scalable once you have more than one IoT device.
--Further Edit--
I don't think there is a way to do what you described. At least from my experience:
1) on the link layer, the wireless NIC has to be able to connect to two APs at the same time. This is not a feature currently available.
2) on the network layer, there has to be two IP address attached to the same NIC, which I don't think is available in current OS for wireless NICs. Though there is a way to do this for Ethernet card, I.e. via Aliasing.

Data Transfer between iOS and PC over WiFi

I Need to create an iOS application and a PC application, the two need to be able to exchange data over Wi-Fi (either direct or via a wifi router).
The iOS app will act as a remote control for some of the features of the PC app, for instance, if a video is playing on the pc application then the iOS app will have buttons to control playback on the PC such as play, pause, stop etc, when one of these buttons is pressed then I need to send some bytes to the pc over wifi.
My questions are:
how should I go about sending data - Wifi direct or via wifi network that both devices are connected to?
can anyone help with example code to connect or send data to a specific device over wifi for either methods?
to be clear, I don't need help with creating the applications themselves - only the wireless transfer of data between the devices using the Wi-Fi radio whether it be direct or via a router.
The main question: is it possible to initiate a connection/send bytes under iOS over wi-fi to a pc on the same network or via wifi direct?
Help with the method to do this or example code would be helpful.

Communicate an iOS device with a non iOS device via WIFI

I am working on a project in which I should connect an iPhone to an accessory via WIFI.
Some blogs spoke about ExternalAccessory.framework but this one is used for establishing connection via Bluetooth.
What library should I use to achieve this ? Could any one please point me to the right direction ? Thanks.
(Assuming that you don't know the ip address of the device you want to connect to)
From an iOS standpoint you want to use NSNetService to discover devices on the network which you can connect to.
This requires that your other device can use mdnsresponder to publish its details onto the network such that it can be found and connected to.
If you do know the ip address (or, once you do know it) then you can use NSURLConnection / NSStream to connect to the device (depending on what capabilities it offers).

how to connect WiFi Direct Mobile phone to WiFi phone?

I was exploring regarding Wi-Fi Direct and came accross with conclusion that WiFi -certified devices can connect one-to-one or one-to-many and not all connected products need to be Wi-Fi Direct-certified. One Wi-Fi Direct enabled device can connect to legacy Wi-Fi certified devices.So by this we can conclude like if one device is having WiFi direct and other device is having Wifi one can easily connect to it.
I have following queries please help me to resolve.
1.This Wifi Direct is there in Android ICS onwards.So i am trying to connect WiFi Direct of my Samsung Note 2 having Jelly Bean with another Samsung Mobile Galaxy Y duos having Ginger Bread that only has WiFi but i am unable to detect? Can anyone help me in finding reason for this?
2.Another thing i studied is Wifi Direct device will become as access point means it will create an Ad-hoc network ? So why another Wifi devices are not detecting it?
To find a wifi direct device in access point list of a normal wifi u need to create a wifi direct group. For this you need to first connect two wifi direct devices out of which one will act as a group owner and other as client. Once a group is created group owner act as a normal access point for legacy devices(Wifi devices).
Thus you need to create a Wifi Direct group first

Resources