iOS wifi連線外設

@oneButterfly發表於2017-05-15

wifi通訊開發

1.1-wifi通訊簡介

1.wifi通訊原理介紹

wifi通訊的本質上是網路傳輸,只不過wifi通訊使用的並不是我們傳統的HTTP協議,而是UDP協議
想要了解UDP協議,則必須要了解Socket套接字
關於Socket和UDP協議將會在後期部落格介紹
2.wifi通訊使用場景

無人機
行車記錄儀(不帶螢幕的行車記錄儀)
智慧家居
3.wifi通訊的特點

傳輸資料比較穩定
能夠傳輸大量資料
藍芽4.0無法做到大量資料傳輸,藍芽2.0可以
沒有外設的數量限制
本人曾經接觸過一個專案,使用wifi控制足球場幾千個氛圍燈,但是最終因為價格問題沒談攏
1.2-wifi通訊與藍芽通訊利弊介紹

1.wifi通訊對網路有要求,而藍芽通訊不需要聯網

wifi通訊既可以使用區域網,也可以使用網際網路
如果使用網際網路則需要配套硬體也能訪問網際網路,這樣的硬體一般價格都非常高
2.wifi通訊連線硬體的數量取決於路由器,一般家用路由器幾十個沒問題,大型路由器可以同時支援連線上萬個

藍芽連線硬體超過八個就極其不穩定,甚至無法連線
3.wifi通訊的成本要比藍芽通訊成本高

1.3-wifi通訊流程介紹

1.移動裝置(手機)檢測wifi網路

2.移動裝置連線與硬體同一wifi網路

3.硬體監聽移動裝置加入

socket服務端監聽客戶端
4.硬體充當伺服器,使用UDP協議傳送資料

UDP協議:一對多傳輸,而且是長連線(http短連線)
5.在藍芽通訊中一般由藍芽中心擔任主角,但是在wifi通訊中,由誰擔任伺服器是不確定的,因為Socket通訊中萬物皆Socket(UDP通訊屬於Socket通訊)

主要根據實際需求,看一對多的關係,由一的那一個Socket擔任伺服器,既可以是路由器,也可以硬體,少數情況下也可以是手機
1.4-關於wifi通訊的使用

1.wifi熱點獲取和ip地址獲取可以參考這篇部落格:wifi熱點獲取

*或者參考github上這一個第三方庫:樂鑫第三方
2.關於UDP通訊,可以參考這篇部落格:UDP通訊

*或者參考github上Socket第三方:AsynSocket
3.由於時間問題,關於wifi通訊的程式碼演示,將會在後期給出,或者到時候我寫成一篇部落格,供大家學習

wifi通訊程式碼需要寫兩套,一套伺服器,一套客戶端
在實際開發中,我們一般不需要寫伺服器的那一套邏輯,只要寫客戶端的邏輯,遵循產品的wifi資料傳輸協議即可

相關文章