public void SendConnectionRequest(string name, string remoteEndpointId, byte[] payload,
                                          Action <ConnectionResponse> responseCallback, IMessageListener listener)
        {
            Misc.CheckNotNull(listener, "listener");
            var listenerOnGameThread = new OnGameThreadMessageListener(listener);
            DiscoveringConnectionLifecycleCallback cb =
                new DiscoveringConnectionLifecycleCallback(responseCallback, listenerOnGameThread, mClient);

            using (var connectionLifecycleCallback =
                       new AndroidJavaObject("com.google.games.bridge.ConnectionLifecycleCallbackProxy", cb))
                using (mClient.Call <AndroidJavaObject>("requestConnection", name, remoteEndpointId,
                                                        connectionLifecycleCallback))
                    ;
        }
        private static NativeMessageListenerHelper ToMessageListener(IMessageListener listener)
        {
            listener = new OnGameThreadMessageListener(listener);

            var helper = new NativeMessageListenerHelper();

            helper.SetOnMessageReceivedCallback(
                (localClientId, endpointId, data, isReliable) => listener.OnMessageReceived(
                    endpointId, data, isReliable));
            helper.SetOnDisconnectedCallback((localClientId, endpointId) =>
                                             listener.OnRemoteEndpointDisconnected(endpointId));

            return(helper);
        }
Exemple #3
0
        private static NativeMessageListenerHelper ToMessageListener(IMessageListener listener)
        {
            listener = new OnGameThreadMessageListener(listener);
            NativeMessageListenerHelper nativeMessageListenerHelper = new NativeMessageListenerHelper();

            nativeMessageListenerHelper.SetOnMessageReceivedCallback(delegate(long localClientId, string endpointId, byte[] data, bool isReliable)
            {
                listener.OnMessageReceived(endpointId, data, isReliable);
            });
            nativeMessageListenerHelper.SetOnDisconnectedCallback(delegate(long localClientId, string endpointId)
            {
                listener.OnRemoteEndpointDisconnected(endpointId);
            });
            return(nativeMessageListenerHelper);
        }
        private static NativeMessageListenerHelper ToMessageListener(IMessageListener listener)
        {
            listener = new OnGameThreadMessageListener(listener);

            var helper = new NativeMessageListenerHelper();
            helper.SetOnMessageReceivedCallback(
                (localClientId, endpointId, data, isReliable) => listener.OnMessageReceived(
                    endpointId, data, isReliable));
            helper.SetOnDisconnectedCallback((localClientId, endpointId) =>
            listener.OnRemoteEndpointDisconnected(endpointId));

            return helper;
        }