簡體   English   中英

Java android 客戶端與 C# 服務器通信

[英]Java android client communication with C# server

我目前正在編寫一個具有客戶端服務器架構的應用程序。

客戶端是 Java android 應用服務器是 C# 應用。

客戶端將從服務器拉取數據,但在某些情況下也會將一些數據推送到 C# 服務器。

服務器需要轉發客戶端的數據是數據結構列表(可能是 XML 的形式?),有時是二進制數據,如文件。

客戶端和服務器通過無線網絡進行通信。

速度和可擴展性是我在系統設計中的首要任務,...

我必須自己編寫服務器和客戶端。 我將使用 sockets 進行通信。

我需要您建議我應該使用哪種協議在 Java 客戶端和 C# 服務器之間交換數據。

我應該在 java 和 C# 中編寫類似的數據結構(這似乎是多余的)並序列化它們嗎?

或者我應該交換 xml?

我還不確定最好的方法是什么。基本上會有來自客戶端的命令,服務器將響應數據

請就此主題向我提供建議,通過 wifi 傳輸的數據可能高達幾千兆,因此速度非常重要。

我相信WCF可能適用於此, WCF使用 soap,因此 Java 實現應該運行良好。 WCF也支持流媒體,所以可以傳輸大文件,不過我不確定Java是否支持流媒體協議。

至於性能,您可能會受到設備速度而非協議的限制。

看看來自 TechEd 2011 的 session:“我的客戶正在使用 iPhone/Android,但我是 Microsoft Guy。現在怎么辦?”

http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/DPR304

如果您想在客戶端和服務器之間共享代碼(如果序列化/反序列化有意義),可能值得研究一下MonoDroid

由於我不知道你在建造什么,我建議你在繼續之前閱讀 REST。 它應該為您提供寶貴的指導,說明如何創建一個可以被各種客戶輕松使用的漂亮的 API。

好吧,總是有 JSON。它應該在兩端得到很好的支持,並且很容易讓您的服務器生成和客戶端使用。 不確定它是否有助於解決您的帶寬問題...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM