Пример #1
0
 // 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;
     }
 }
Пример #2
0
    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
    }
Пример #3
0
    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();
    }
Пример #4
0
    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
    }