android udp通信(應用層與底層硬件的通信)


  背景:最近項目用到一塊工控板,板子硬件與上位機通過udp方式進行通信,但廠家只提供了c#的demo,並將相應的驅動命令封裝為dll動態庫。另一項目小組希望在android平台下也能驅動這塊工控板,我之前寫過一些底層的驅動,但都收通過串口來傳輸的,通過網絡進行數據通信的還是頭一次接觸。簡單地看了下硬件的通信協議,還好,不算很復雜,每條命令只有20個字節。於是開始了解在android下如何實現Udp通信,現積累如下。

  what?

  字面意思:UDP的全稱是 User Datagram Protocol,意思是用戶數據包協議。

  特點:1.是一種無連接的傳輸層協議。

       2.提供面向事務的無連接、不可靠數據傳輸服務。

       3.不提供數據包分組、組裝、排序。

  how?

 

  1.client:

  

  2.server:

  bug:發送數據包時,指定了發送端口,但服務端解析到的端口號卻不是客戶端所指定的。

  debug:創建socket對象時,將端口號作為參數傳遞:

  效果圖(服務端):

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM