是否有可能使用WiFi API編寫Android應用程序,該API將充當熱點(因此授予對WiFi客戶端的網絡訪問權),同時仍允許本地WiFi設備連接到另一個WiFi網絡?Android中的多路複用熱點
我測試過的一個是禁用本地Wifi連接,以創建一個熱點。
是否有可能使用WiFi API編寫Android應用程序,該API將充當熱點(因此授予對WiFi客戶端的網絡訪問權),同時仍允許本地WiFi設備連接到另一個WiFi網絡?Android中的多路複用熱點
我測試過的一個是禁用本地Wifi連接,以創建一個熱點。
我在這裏發佈了幾個月後,所以想要在Android設備上實現此功能的人可能會受到幫助。 (AP)功能的
有一種方法具有一個無線芯片在混合模式中工作時,與兩個站模式(STA)和接入點模式。
爲此,我用multi-role
無線驅動程序替換了我的芯片的無線驅動程序。幸運的是,我的芯片支持這種模式,然而每種無線芯片都不是這種情況。我的芯片是基於TI的芯片(wl1271),支持多個角色,儘管它在以前的驅動程序中不可用。
一旦我得到這個新的驅動程序,我纔能有無線驅動程序和相關mac80211
和cfg80211
模塊(通過提供新的驅動程序所需的API)來產生的.ko
與我的內核重新編譯它一起。最後一步是使用TI提供的自定義補丁版本升級wpa_supplicant
和hostapd
。
再次,對於感興趣的wl1271
只有這裏的人都在相應的驅動程序/我用的工具和報告工作的Android 4.0.4 ICS:
https://github.com/TI-OpenLink/hostap/tree/ol_R5.SP3.01
https://github.com/TI-OpenLink/iw/tree/ol_R5.SP3.01
https://github.com/TI-OpenLink/ti-utils/tree/ol_R5.SP3.01
https://github.com/TI-OpenLink/wl12xx_target_scripts/tree/ol_R5.SP3.01/sta
https://github.com/TI-OpenLink/compat/tree/ol_R5.SP3.01/
https://github.com/TI-OpenLink/compat-wireless/tree/ol_R5.SP3.01/
如果你的無線芯片多角色的驅動程序,它可能是值得的,找出的wpa_supplicant,你應當使用hostapd的是什麼版本或補丁,並編譯/嘗試它們。
在過程結束時,我可以訪問兩個網絡接口(wlan0和wlan1),並可以在wlan1上啓動wlan0和hostapd上的wpa_supplicant。
您所描述的內容叫做WDS (Wireless Distribution System)。我認爲這個功能沒有在Android wifi API中實現。它用於無線接入點以實現上行無線鏈路。
它確實指向我想要的。不過,WDS似乎包裝了很多概念和協議。我只是想提供一些簡單的建議,告訴我們如何做到沒有整個AP共享系統。有人建議如何用Android API(似乎沒有實現)或電子方式(可能使用第二個WiFi設備) - >以及如何在Android中改變內核:)。 –
@HQarroum我的理解是(我不是這方面的專家),你需要至少一個支持WDS的AP和兼容的Android WDS實現。我認爲這目前不是在Android中實現的,因此需要一些相當低級的編碼... – jhonkola
非常感謝!我會更深入地調查此:) –