我參考了Android SDK上的WifiDirectExample
。它可以通過WiFi-Direct掃描並連接到其他設備。如何在Android的WifiDirect中成爲羣組所有者?
的情況對我來說是兩器調用設備-A和設備-B。 設備-A始終主動邀請並連接到設備-B。
我想要設備-A總是成爲集團所有者。但有時設備-A尚未成爲組所有者。
有人可以教我如何在Android的WifiDirect中成爲羣組所有者嗎?
我不知道...在此先感謝。
我參考了Android SDK上的WifiDirectExample
。它可以通過WiFi-Direct掃描並連接到其他設備。如何在Android的WifiDirect中成爲羣組所有者?
的情況對我來說是兩器調用設備-A和設備-B。 設備-A始終主動邀請並連接到設備-B。
我想要設備-A總是成爲集團所有者。但有時設備-A尚未成爲組所有者。
有人可以教我如何在Android的WifiDirect中成爲羣組所有者嗎?
我不知道...在此先感謝。
Device-A創建一個組。
wifiP2pManager.createGroup(wifiP2pChannel, null);
其他設備連接到這個組。在你的情況下,hostAddress是Device-A地址(WifiP2pDevice.deviceAddress)。
private void connect(WifiP2pDevice host){
WifiP2pConfig config = new WifiP2pConfig();
config.deviceAddress = host.hostAddress;
config.wps.setup = WpsInfo.PBC;
config.groupOwnerIntent = 0;
wifiP2pManager.connect(wifiP2pChannel, config, null);
}
config.groupOwnerIntent是你需要的。
如果你使用
wifiP2pManager.createGroup(Channel c, ActionListener listener)
,你會得到一個自治組所有者和其他設備可以加入。
但是,如果你想創建一個組(有時也稱爲標準),可以使用:
config.groupOwnerIntent = 15;
強制設備連接爲一個組所有者和
config.groupOwnerIntent = 0;
強制設備作爲客戶端進行連接。
注意,「config.groupOwnerIntent」不能確保設備將成爲集團所有者或客戶,但基於我的經驗,這個概率很高。
取決於所需的組類型。