- Home /
Check Standalone device network connection
I'm trying to make a cross-platform offline multiplayer game, but since the NetworkDiscovery works how it works I need to check whether there is any connection at all or not before initializing it, because if the device is not connected to anything and you initialize the Network Discovery and start to run StartAsServer then you"ll get the following error:
By some reason host doesn't have broadcast adddreses NetworkDiscovery StartBroadcast failed err:8
So I need to check if the device is connected to any network at all. So currently this is the best I could come up with is this:
public bool isConnectedToAnyNetwork()
{
if (Network.player.ipAddress == "0.0.0.0" ||
Network.player.ipAddress == "0:0:0:0:0:0" ||
Application.internetReachability == NetworkReachability.NotReachable)
{
Debug.LogError("Returning False, there is No connection");
return false;
}
else
{
Debug.LogError("Returning True, there is connection, my ipAddress is: " + Network.player.ipAddress);
return true;
}
}
The problem is that if you plug in a LAN cable into your PC and then pull it out, then it will reserve the address, and I guess my Unity app will think that it is connected to something, because in Debug I get this:
Returning True, there is connection, my ipAddress is: 192.168.1.102
However the LAN cable is not plugged in and I have no Wifi connection, So on Widnwos in the settings it says disconnected but still has an ipAddress:
So is there any way to check if the app is connected to any network? Or maybe to run NetworkDiscovery without errors? Any advice or help would be much appreciated
Your answer
Follow this Question
Related Questions
PUN - Choose random Hero for player 0 Answers
UNET Networking: Changing Players texture 0 Answers
Looking for a solution to multiplayer 2 Answers
Multiplayer - non player object synchronisation 0 Answers
How to display IPv4 Address in game 0 Answers