public void Join() { // If initialization was successfull, showing the buttons if (_initResult) { // If there is no current Bluetooth connectivity if (BluetoothMultiplayerAndroid.CurrentMode() == BluetoothMultiplayerMode.None) { // If Bluetooth is enabled, then we can do something right on if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); // Just to be sure BluetoothMultiplayerAndroid.ShowDeviceList(); // Open device picker dialog BluetoothManager.Instance._desiredMode = BluetoothMultiplayerMode.Client; } // Otherwise we have to enable Bluetooth first and wait for callback else { BluetoothManager.Instance._desiredMode = BluetoothMultiplayerMode.Client; BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } } UniversalOnline.Instance.Progress = 10; UniversalOnline.Instance.State = UniversalOnline.States.BTJoin; } else { UniversalOnline.Instance.Progress = 10; UniversalOnline.Instance.State = UniversalOnline.States.FailedConnect; } }
private void onBluetoothDevicePicked(BluetoothDevice device) { Debug.Log("onBluetoothDevicePicked(): " + device.name + " [" + device.address + "]"); // Trying to connect to a device user had picked BluetoothMultiplayerAndroid.Connect(device.address, Port); }
void OnDisconnectedFromServer() { BluetoothMultiplayerAndroid.Disconnect(); isDisConnectServer = true; MyDebug.instance.Log("server disconnected."); }
public void Create() { if (_initResult) { // If there is no current Bluetooth connectivity if (BluetoothMultiplayerAndroid.CurrentMode() == BluetoothMultiplayerMode.None) { // If Bluetooth is enabled, then we can do something right on if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); // Just to be sure BluetoothMultiplayerAndroid.InitializeServer(BluetoothManager.Port); BluetoothManager.Instance._desiredMode = BluetoothMultiplayerMode.Server; } // Otherwise we have to enable Bluetooth first and wait for callback else { BluetoothManager.Instance._desiredMode = BluetoothMultiplayerMode.Server; BluetoothMultiplayerAndroid.RequestDiscoverable(60); } } UniversalOnline.Instance.Progress = 10; UniversalOnline.Instance.State = UniversalOnline.States.BTCreate; } else { UniversalOnline.Instance.Progress = 10; UniversalOnline.Instance.State = UniversalOnline.States.FailedConnect; } }
private void onBluetoothListeningCanceled() { // For demo simplicity, stop server if listening was canceled BluetoothMultiplayerAndroid.Disconnect(); UniversalOnline.Instance.State = UniversalOnline.States.Aborted; }
void OnDisconnectedFromServer() { UniversalOnline.Instance.State = UniversalOnline.States.Aborted; // Stopping all Bluetooth connectivity on Unity networking disconnect event BluetoothMultiplayerAndroid.Disconnect(); }
/// <summary> /// 在服务器上连接断开 在客户端调用这个函数 /// </summary> void OnDisconnectedFromServer() { BluetoothMultiplayerAndroid.Disconnect(); isDisConnectServer = true; MyLog.Instance.Log("与服务器断开连接,请重新连接到服务器"); }
private void onBluetoothListeningCanceled() { Debug.Log("onBluetoothListeningCanceled()"); // For demo simplicity, stop server if listening was canceled BluetoothMultiplayerAndroid.Disconnect(); }
void Awake() { if (FindObjectsOfType(typeof(BluetoothManager)).Length > 1) { Destroy(this.gameObject); return; } _instance = this; DontDestroyOnLoad(this.gameObject); initResult = BluetoothMultiplayerAndroid.Init("8ce255c0-200a-11e0-ac64-0800200c9a66"); BluetoothMultiplayerAndroid.SetVerboseLog(true); // Registering the event delegates BluetoothMultiplayerAndroidManager.onBluetoothListeningStartedEvent += onBluetoothListeningStarted; BluetoothMultiplayerAndroidManager.onBluetoothListeningCanceledEvent += onBluetoothListeningCanceled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnabledEvent += onBluetoothAdapterEnabled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnableFailedEvent += onBluetoothAdapterEnableFailed; BluetoothMultiplayerAndroidManager.onBluetoothAdapterDisabledEvent += onBluetoothAdapterDisabled; BluetoothMultiplayerAndroidManager.onBluetoothConnectedToServerEvent += onBluetoothConnectedToServer; BluetoothMultiplayerAndroidManager.onBluetoothConnectToServerFailedEvent += onBluetoothConnectToServerFailed; BluetoothMultiplayerAndroidManager.onBluetoothDisconnectedFromServerEvent += onBluetoothDisconnectedFromServer; BluetoothMultiplayerAndroidManager.onBluetoothClientConnectedEvent += onBluetoothClientConnected; BluetoothMultiplayerAndroidManager.onBluetoothClientDisconnectedEvent += onBluetoothClientDisconnected; BluetoothMultiplayerAndroidManager.onBluetoothDevicePickedEvent += onBluetoothDevicePicked; }
/// <summary> /// 某个原因连接失败 在客服端调用这个函数 /// </summary> /// <param name="error"></param> void OnFailedToConnect(NetworkConnectionError error) { BluetoothMultiplayerAndroid.Disconnect(); GameUIManager.Instance.OpenMain(); GameManager.Instance.DestroyAllQizhi(); MyLog.Instance.Log("服务器连接失败" + error.ToString()); }
private void onBluetoothDevicePicked(BluetoothDevice device) { // Trying to connect to a device user had picked BluetoothMultiplayerAndroid.Connect(device.address, Port); UniversalOnline.Instance.Progress = 40; UniversalOnline.Instance.State = UniversalOnline.States.DevicePicked; }
void Start() { initGameObject(); root = GameObject.FindGameObjectWithTag("Root"); foreach (Transform child in mockRoutine.transform) { child.GetComponent <UIAnchor>().enabled = true; } getMocks(); if (PlayerInfo.Instance.userInfo.new_player == 0) { LevelPanel.Instance.WelcomeGift.SetActive(true); } else { if (SceneState.Instance.State == ESceneState.ADVENTURE) { if (PlayerInfo.Instance.userInfo.checkTutorialLevel == 0) { initTutorial(); // da hien thi trong lan choi nay PlayerInfo.Instance.userInfo.checkTutorialLevel = 1; PlayerInfo.Instance.userInfo.Save(); } } else if (SceneState.Instance.State == ESceneState.BLUETOOTH) { if (BluetoothManager.Instance.desiredMode == BluetoothMultiplayerMode.Server) { } else if (BluetoothManager.Instance.desiredMode == BluetoothMultiplayerMode.Client) { GameObject wait_server = Instantiate(Resources.Load <GameObject>("Prefab/Bluetooth/Wait Bluetooth")) as GameObject; wait_server.GetComponent <UIStretch>().container = mockRoutine.transform.parent.gameObject; wait_server.GetComponent <UIAnchor>().container = mockRoutine.transform.parent.gameObject; wait_server.transform.parent = mockRoutine.transform.root; wait_server.transform.localScale = Vector3.one; wait_server.transform.localPosition = Vector3.zero; } else { DeviceService.Instance.openToast("Connect unsuccess!"); BluetoothManager.Instance.disconnectNetWork(); BluetoothManager.Instance.desiredMode = BluetoothMultiplayerMode.None; BluetoothMultiplayerAndroid.Disconnect(); Application.LoadLevel("Menu"); } } } }
void Update() { if (Input.GetKeyDown(KeyCode.Escape)) { // Gracefully closing all Bluetooth connectivity and loading the menu try { BluetoothMultiplayerAndroid.StopDiscovery(); BluetoothMultiplayerAndroid.Disconnect(); } catch { // } Application.LoadLevel("BluetoothMultiplayerAndroidDemoMenu"); } }
void Awake() { Log("This demo shows some available methods and how to discover nearby Bluetooth devices.\r\n"); // Setting the UUID. Must be unique for every application _initResult = BluetoothMultiplayerAndroid.Init("8ce255c0-200a-11e0-ac64-0800200c9a66"); // Enabling verbose logging. See logcat! BluetoothMultiplayerAndroid.SetVerboseLog(true); // Registering the event delegates BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnabledEvent += onBluetoothAdapterEnabled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnableFailedEvent += onBluetoothAdapterEnableFailed; BluetoothMultiplayerAndroidManager.onBluetoothAdapterDisabledEvent += onBluetoothAdapterDisabled; BluetoothMultiplayerAndroidManager.onBluetoothDiscoveryStartedEvent += onBluetoothDiscoveryStarted; BluetoothMultiplayerAndroidManager.onBluetoothDiscoveryFinishedEvent += onBluetoothDiscoveryFinished; BluetoothMultiplayerAndroidManager.onBluetoothDiscoveryDeviceFoundEvent += onBluetoothDiscoveryDeviceFound; }
void onBluetoothAdapterEnabled() { switch (desiredMode) { case BluetoothMultiplayerMode.Server: Network.Disconnect(); BluetoothMultiplayerAndroid.InitializeServer((ushort)Common.Port); break; case BluetoothMultiplayerMode.Client: Network.Disconnect(); BluetoothMultiplayerAndroid.ShowDeviceList(); break; } desiredMode = BluetoothMultiplayerMode.None; }
private void onBluetoothAdapterEnabled() { // Resuming desired action after enabling the adapter switch (_desiredMode) { case BluetoothMultiplayerMode.Server: Network.Disconnect(); BluetoothMultiplayerAndroid.InitializeServer(Port); break; case BluetoothMultiplayerMode.Client: Network.Disconnect(); BluetoothMultiplayerAndroid.ShowDeviceList(); break; } }
void OnDisconnectedFromServer() { Debug.Log("Disconnected from server"); // Stopping all Bluetooth connectivity on Unity networking disconnect event BluetoothMultiplayerAndroid.Disconnect(); TestActor[] objects = FindObjectsOfType(typeof(TestActor)) as TestActor[]; if (objects != null) { foreach (TestActor obj in objects) { Destroy(obj.gameObject); } } }
void OnEnable() { initResult = BluetoothMultiplayerAndroid.Init("1185bc83-37d6-4b43-9e29-5d608fa1197c"); BluetoothMultiplayerAndroid.SetVerboseLog(true); BluetoothMultiplayerAndroidManager.onBluetoothListeningStartedEvent += onBluetoothListeningStarted; BluetoothMultiplayerAndroidManager.onBluetoothListeningCanceledEvent += onBluetoothListeningCanceled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnabledEvent += onBluetoothAdapterEnabled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnableFailedEvent += onBluetoothAdapterEnableFailed; BluetoothMultiplayerAndroidManager.onBluetoothAdapterDisabledEvent += onBluetoothAdapterDisabled; BluetoothMultiplayerAndroidManager.onBluetoothConnectedToServerEvent += onBluetoothConnectedToServer; BluetoothMultiplayerAndroidManager.onBluetoothConnectToServerFailedEvent += onBluetoothConnectToServerFailed; BluetoothMultiplayerAndroidManager.onBluetoothDisconnectedFromServerEvent += onBluetoothDisconnectedFromServer; BluetoothMultiplayerAndroidManager.onBluetoothClientConnectedEvent += onBluetoothClientConnected; BluetoothMultiplayerAndroidManager.onBluetoothClientDisconnectedEvent += onBluetoothClientDisconnected; BluetoothMultiplayerAndroidManager.onBluetoothDevicePickedEvent += onBluetoothDevicePicked; }
//连接到服务器 public void ConnectToServer() { if (initResult) { if (BluetoothMultiplayerAndroid.CurrentMode() == BluetoothMultiplayerMode.None) { if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); BluetoothMultiplayerAndroid.ShowDeviceList(); } else { desiredMode = BluetoothMultiplayerMode.Client; BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } } } }
//创建服务器 public void CreateServer() { if (initResult) { if (BluetoothMultiplayerAndroid.CurrentMode() == BluetoothMultiplayerMode.None) { if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); BluetoothMultiplayerAndroid.InitializeServer((ushort)Common.Port); } else { desiredMode = BluetoothMultiplayerMode.Server; BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } } } }
void Awake() { // Setting the UUID. Must be unique for every application _initResult = BluetoothMultiplayerAndroid.Init("8ce255c0-200a-11e0-ac64-0800200c9a66"); // Enabling verbose logging. See log cat! BluetoothMultiplayerAndroid.SetVerboseLog(true); // Registering the event delegates BluetoothMultiplayerAndroidManager.onBluetoothListeningStartedEvent += onBluetoothListeningStarted; BluetoothMultiplayerAndroidManager.onBluetoothListeningCanceledEvent += onBluetoothListeningCanceled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnabledEvent += onBluetoothAdapterEnabled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnableFailedEvent += onBluetoothAdapterEnableFailed; BluetoothMultiplayerAndroidManager.onBluetoothAdapterDisabledEvent += onBluetoothAdapterDisabled; BluetoothMultiplayerAndroidManager.onBluetoothConnectedToServerEvent += onBluetoothConnectedToServer; BluetoothMultiplayerAndroidManager.onBluetoothConnectToServerFailedEvent += onBluetoothConnectToServerFailed; BluetoothMultiplayerAndroidManager.onBluetoothDisconnectedFromServerEvent += onBluetoothDisconnectedFromServer; BluetoothMultiplayerAndroidManager.onBluetoothClientConnectedEvent += onBluetoothClientConnected; BluetoothMultiplayerAndroidManager.onBluetoothClientDisconnectedEvent += onBluetoothClientDisconnected; BluetoothMultiplayerAndroidManager.onBluetoothDevicePickedEvent += onBluetoothDevicePicked; }
// Don't forget to unregister the event delegates! public void Destroy() { _desiredMode = BluetoothMultiplayerMode.None; BluetoothMultiplayerAndroidManager.onBluetoothListeningStartedEvent -= onBluetoothListeningStarted; BluetoothMultiplayerAndroidManager.onBluetoothListeningCanceledEvent -= onBluetoothListeningCanceled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnabledEvent -= onBluetoothAdapterEnabled; BluetoothMultiplayerAndroidManager.onBluetoothAdapterEnableFailedEvent -= onBluetoothAdapterEnableFailed; BluetoothMultiplayerAndroidManager.onBluetoothAdapterDisabledEvent -= onBluetoothAdapterDisabled; BluetoothMultiplayerAndroidManager.onBluetoothConnectedToServerEvent -= onBluetoothConnectedToServer; BluetoothMultiplayerAndroidManager.onBluetoothConnectToServerFailedEvent -= onBluetoothConnectToServerFailed; BluetoothMultiplayerAndroidManager.onBluetoothDisconnectedFromServerEvent -= onBluetoothDisconnectedFromServer; BluetoothMultiplayerAndroidManager.onBluetoothClientConnectedEvent -= onBluetoothClientConnected; BluetoothMultiplayerAndroidManager.onBluetoothClientDisconnectedEvent -= onBluetoothClientDisconnected; BluetoothMultiplayerAndroidManager.onBluetoothDevicePickedEvent -= onBluetoothDevicePicked; // Gracefully closing all Bluetooth connectivity and loading the menu try { BluetoothMultiplayerAndroid.StopDiscovery(); BluetoothMultiplayerAndroid.Disconnect(); } catch { // } }
void onBluetoothDevicePickedEvent(BluetoothDevice device) { BluetoothMultiplayerAndroid.Connect(device.address, (ushort)GlobleData.Port); }
void onBluetoothDevicePicked(BluetoothDevice device) { BluetoothMultiplayerAndroid.Connect(device.address, (ushort)Common.Port); }
void OnGUI() { // If initialization was successfull, showing the buttons if (_initResult) { // If there is no current Bluetooth connectivity if (BluetoothMultiplayerAndroid.CurrentMode() == BluetoothMultiplayerMode.None) { if (GUI.Button(new Rect(10, 10, 150, 50), "Create server")) { // If Bluetooth is enabled, then we can do something right on if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); // Just to be sure BluetoothMultiplayerAndroid.InitializeServer(Port); } // Otherwise we have to enable Bluetooth first and wait for callback else { _desiredMode = BluetoothMultiplayerMode.Server; BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } } if (GUI.Button(new Rect(170, 10, 150, 50), "Connect to server")) { // If Bluetooth is enabled, then we can do something right on if (BluetoothMultiplayerAndroid.IsBluetoothEnabled()) { Network.Disconnect(); // Just to be sure BluetoothMultiplayerAndroid.ShowDeviceList(); // Open device picker dialog } // Otherwise we have to enable Bluetooth first and wait for callback else { _desiredMode = BluetoothMultiplayerMode.Client; BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } } } else { // Stop all networking if (GUI.Button(new Rect(10, 10, 150, 50), "Disconnect")) { if (Network.peerType != NetworkPeerType.Disconnected) { Network.Disconnect(); } } } // Showing message if initialization failed for some reason } else { GUI.Label(new Rect(10, 10, Screen.width, 100), "Bluetooth not available. Are you running this on Bluetooth-capable Android device and AndroidManifest.xml is set up correctly?"); } if (GUI.Button(new Rect(Screen.width - 100f - 15f, Screen.height - 40f - 15f, 100f, 40f), "Back")) { // Gracefully closing all Bluetooth connectivity and loading the menu try { BluetoothMultiplayerAndroid.StopDiscovery(); BluetoothMultiplayerAndroid.Disconnect(); } catch { // } Application.LoadLevel("BluetoothMultiplayerAndroidDemoMenu"); } }
void onBluetoothListeningCanceled() { BluetoothMultiplayerAndroid.Disconnect(); }
void OnFailedToConnect(NetworkConnectionError error) { UniversalOnline.Instance.State = UniversalOnline.States.FailedConnect; BluetoothMultiplayerAndroid.Disconnect(); }
void OnFailedToConnect(NetworkConnectionError error) { Debug.Log("Can't connect to the networking server"); BluetoothMultiplayerAndroid.Disconnect(); }
void OnGUI() { // If initialization was successfull, showing the buttons if (_initResult) { // simple text log view GUILayout.Space(190f); _logScrollPosition = GUILayout.BeginScrollView(_logScrollPosition, GUILayout.MaxHeight(Screen.height - 190f), GUILayout.MinWidth(Screen.width - 10f), GUILayout.ExpandHeight(false)); GUILayout.Label(_log, GUILayout.ExpandHeight(true)); GUILayout.EndScrollView(); // Generic GUI for calling the methods if (GUI.Button(new Rect(10, 10, 140, 50), "Request enable\nBluetooth")) { BluetoothMultiplayerAndroid.RequestBluetoothEnable(); } if (GUI.Button(new Rect(160, 10, 140, 50), "Disable Bluetooth")) { BluetoothMultiplayerAndroid.BluetoothDisable(); } if (GUI.Button(new Rect(310, 10, 150, 50), "Request discoverability")) { BluetoothMultiplayerAndroid.RequestDiscoverable(120); } if (GUI.Button(new Rect(10, 70, 140, 50), "Start discovery")) { BluetoothMultiplayerAndroid.StartDiscovery(); } if (GUI.Button(new Rect(160, 70, 140, 50), "Stop discovery")) { BluetoothMultiplayerAndroid.StopDiscovery(); } if (GUI.Button(new Rect(310, 70, 150, 50), "Get current\ndevice")) { Log("Current device:"); BluetoothDevice device = BluetoothMultiplayerAndroid.GetCurrentDevice(); if (device != null) // result can be null on error or if Bluetooth is not available { Log("Device: " + device.name + " [" + device.address + "]"); } else { Log("Error while retrieving current device"); } } // Just get the device lists and prints them if (GUI.Button(new Rect(10, 130, 140, 50), "Show bonded\ndevice list")) { Log("Listing known bonded (paired) devices"); BluetoothDevice[] list = BluetoothMultiplayerAndroid.GetBondedDevices(); if (list != null) // result can be null on error or if Bluetooth is not available { foreach (BluetoothDevice device in list) { Log("Device: " + device.name + " [" + device.address + "]"); } } else { Log("Error while retrieving GetBondedDevices()"); } } if (GUI.Button(new Rect(160, 130, 140, 50), "Show new discovered\ndevice list")) { Log("Listing devices discovered during last discovery session..."); BluetoothDevice[] list = BluetoothMultiplayerAndroid.GetNewDiscoveredDevices(); if (list != null) // result can be null on error or if Bluetooth is not available { foreach (BluetoothDevice device in list) { Log("Device: " + device.name + " [" + device.address + "]"); } } else { Log("Error while retrieving GetNewDiscoveredDevices()"); } } if (GUI.Button(new Rect(310, 130, 150, 50), "Show full\ndevice list")) { Log("Listing all known or discovered devices..."); BluetoothDevice[] list = BluetoothMultiplayerAndroid.GetDiscoveredDevices(); if (list != null) // result can be null on error or if Bluetooth is not available { foreach (BluetoothDevice device in list) { Log("Device: " + device.name + " [" + device.address + "]"); } } else { Log("Error while retrieving GetDiscoveredDevices()"); } } // Showing message if initialization failed for some reason } else { GUI.Label(new Rect(10, 10, Screen.width, 50), "Bluetooth not available. Are you running this on Bluetooth-capable Android device and AndroidManifest.xml is set up correctly?"); } if (GUI.Button(new Rect(Screen.width - 100f - 15f, Screen.height - 40f - 15f, 100f, 40f), "Back")) { try { BluetoothMultiplayerAndroid.StopDiscovery(); BluetoothMultiplayerAndroid.Disconnect(); } catch { // } Application.LoadLevel("BluetoothMultiplayerAndroidDemoMenu"); } }
void OnFailedToConnect(NetworkConnectionError error) { BluetoothMultiplayerAndroid.Disconnect(); MyDebug.instance.Log("connect server failed:" + error.ToString()); }