Esempio n. 1
0
        private static AppServiceResponseListener GetAppServiceResponseListener()
        {
            tcsResponseListener = new TaskCompletionSource <AppServiceClientResponse>();
            var responseListener = new AppServiceResponseListener();

            responseListener.Response += (r) =>
            {
                tcsResponseListener.TrySetResult(r);
            };

            return(responseListener);
        }
Esempio n. 2
0
        public Task <AppServiceResponse> SendMessageAsync(Android.OS.Bundle message)
        {
            TaskCompletionSource <AppServiceResponse> tcsResponseListener = new TaskCompletionSource <AppServiceResponse>();

            AppServiceResponseListener.OnResponseReceived onResponseReceived = (r) =>
            {
                tcsResponseListener.TrySetResult(r);
            };

            var responseListener = new AppServiceResponseListener(onResponseReceived);

            try
            {
                appServiceConnection.SendMessageAsynchronous(message, responseListener);
            }
            catch (Exception e)
            {
                tcsResponseListener.TrySetException(e);
            }

            return(tcsResponseListener.Task);
        }