我只需在Google提供的 WiFiDirectDemo 上添加两个按钮。其中一个按钮称为“所有者”,另一个按钮称为“客户端”。
如果他们想成为拥有者,我选择哪两个设备。
一开始,我认为如果我更改 0到15 之间的数字会有效:
config.groupOwnerIntent = 0;
但它不起作用。
其中一个设备保持充当群组所有者。即使我更改了“groupOwnerIntent”。
这是我的代码(DeviceDetailFragment.java):
mContentView.findViewById(R.id.btn_owner).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
intentNumber = 15;
Toast.makeText(v.getContext(),String.valueOf(intentNumber),
Toast.LENGTH_LONG).show();
}
});
mContentView.findViewById(R.id.btn_client).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
intentNumber = 0;
Toast.makeText(v.getContext(), String.valueOf(intentNumber),
Toast.LENGTH_LONG).show();
}
});
//********************************************************************
mContentView.findViewById(R.id.btn_connect)
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//WifiP2pConfig config = chooseOwner(ownerIntentNumber);
WifiP2pConfig config = new WifiP2pConfig();
config.deviceAddress = device.deviceAddress;
config.wps.setup = WpsInfo.PBC;
config.groupOwnerIntent = intentNumber;
Toast.makeText(v.getContext(), String.valueOf(intentNumber),
Toast.LENGTH_LONG).show();
}
});
请给我一些建议。非常感谢你。
我的设备是两个Nexus 7.
答案 0 :(得分:1)
我刚遇到同样的问题。
在我的情况下,发生这种情况是因为设备记住Wi-Fi Direct
组。
在Galaxy Nexus中,我可以通过更改
中的设置来忘记它 Setting
- > Wi-Fi
- > Wi-Fi Direct
- >选择记住的组 - > Forget
然后,我可以在配置时更改群组所有者。
答案 1 :(得分:0)
我犯的另一个常见错误: 按下所有者/客户端按钮的设备(更改配置组合命令值)必须通过按连接按钮和而不是其他设备来启动连接。