2014-10-31 38 views
0

我參考了Android SDK上的WifiDirectExample。它可以通過WiFi-Direct掃描並連接到其他設備。如何在Android的WifiDirect中成爲羣組所有者?

的情況對我來說是兩器調用設備-A設備-B設備-A始終主動邀請並連接到設備-B

我想要設備-A總是成爲集團所有者。但有時設備-A尚未成爲組所有者

有人可以教我如何在Android的WifiDirect中成爲羣組所有者嗎?

我不知道...在此先感謝。

回答

0

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是你需要的。

0

如果你使用

wifiP2pManager.createGroup(Channel c, ActionListener listener)

,你會得到一個自治組所有者和其他設備可以加入。

但是,如果你想創建一個組(有時也稱爲標準),可以使用:

config.groupOwnerIntent = 15;

強制設備連接爲一個組所有者和

config.groupOwnerIntent = 0;

強制設備作爲客戶端進行連接。

注意,「config.groupOwnerIntent」不能確保設備將成爲集團所有者或客戶,但基於我的經驗,這個概率很高。

取決於所需的組類型。

相關問題