我正在尝试创建支持同时使用多个设备进行自动化测试的工具,其中设备应对其他操作做出反应(动作和反应)。第一个将启动测试的应该是Master,而下一个将成为客户端。以下是我的问题:
我可以使用WifiP2pManager.createGroup()
方法让第一台设备成为Master,其他设备成为客户端吗?我的意思是这样的:
manager.createGroup(channel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
//becomes Master
}
@Override
public void onFailure(int reason) {
//fails because group already exists, becomes Client
}
});
客户端是否可以在没有先前discoverPeers和连接呼叫的情况下获取组信息?所以我可以这样做:
manager.requestGroupInfo(DriverWifiP2PManager.getInstance().getChannel(), new WifiP2pManager.GroupInfoListener() {
@Override
public void onGroupInfoAvailable(WifiP2pGroup group) {
//i could see group, and if i'm not an owner i could connect to group owner device
}
});
我是否需要在两侧调用connect才能加入p2p组?
感谢您的时间。
答案 0 :(得分:2)
是的,您基本上可以创建群组的设备成为群组所有者,其他人可以将其作为客户端连接。
如果我理解问题是正确的,那么在创建组后答案是否定的,组所有者还必须添加本地服务来宣传该组,然后客户端使用常规发现方法来查找组所有者,然后正常连接到该组。
您只需要从客户端调用connect。请注意你