// Start is called before the first frame update void Start() { Instance = this; MonoJavaCallback.InitMonoJavaCallback(); ConnectEngine.Instance.OnConnect += OnConnectUI; ConnectEngine.Instance.ConnectionChanged += ConnectionStatusChanged; ipField.onEndEdit.AddListener(SubmitIP); portField.onEndEdit.AddListener(SubmitPort); currentParameters = new ConnectionParams { name = "TestTCPConnection" }; connectButton.onClick.AddListener(TestTCPConnect); disconnectButton.onClick.AddListener(TestTCPDisconnect); if (currentParameters.HasSavedData()) { currentParameters = Newtonsoft.Json.JsonConvert.DeserializeObject <ConnectionParams>(currentParameters.GetStringParametersFromPlayerPrefs()); ipField.text = currentParameters.ip; portField.text = currentParameters.port.ToString(); keepAliveToggle.isOn = currentParameters.keepAlive; } }
private void Start() { //Subscribe for all needed actions OnConnect += OnConnectResult; OnDisconnect += OnDisconnectResult; OnReconnect += OnReconnectResult; JsonInitialized += OnJsonInitialized; ConnectionChanged += ConnectionStatusChanged; //This used for json initialization, first serialization takes long time #if !UNITY_EDITOR #if UNITY_ANDROID new AndroidJavaClass(InfoContainer.Instance.unityBridgeClass).CallStatic("doMethodWithCallbackWithParameters", "InitJson", Newtonsoft.Json.JsonConvert.SerializeObject(new TestClass()), MonoJavaCallback.ActionToJavaObject(JsonInitialized)); #elif UNITY_IOS throw new NotImplementedException(); #else throw new NotImplementedException(); #endif #else Debug.Log("Connect in editor"); #endif }
public override void Connect(ConnectionParams parameters) { CurrentConnectionStatus = ConnectionStatus.Connecting; #if !UNITY_EDITOR #if UNITY_ANDROID new AndroidJavaClass(InfoContainer.Instance.unityBridgeClass).CallStatic("doMethodWithCallbackWithParameters", "Connect", Newtonsoft.Json.JsonConvert.SerializeObject(parameters), MonoJavaCallback.ActionToJavaObject(OnConnect)); #elif UNITY_IOS throw new NotImplementedException(); #else throw new NotImplementedException(); #endif #else Debug.Log("Connect in editor"); #endif parameters.SaveParametersToPlayerPrefs(); }
public override void Disconnect() { CurrentConnectionStatus = ConnectionStatus.Disconnecting; #if !UNITY_EDITOR #if UNITY_ANDROID new AndroidJavaClass(InfoContainer.Instance.unityBridgeClass).CallStatic("doMethodWithCallback", "Disconnect", MonoJavaCallback.ActionToJavaObject(OnDisconnect)); #elif UNITY_IOS throw new NotImplementedException(); #else throw new NotImplementedException(); #endif #else Debug.Log("Disconnect in editor"); #endif }