无法更改群组所有者(群组所有者意图)

时间:2013-04-30 05:38:08

标签: android android-wifi wifi-direct

我只需在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.

2 个答案:

答案 0 :(得分:1)

我刚遇到同样的问题。

在我的情况下,发生这种情况是因为设备记住Wi-Fi Direct组。

在Galaxy Nexus中,我可以通过更改

中的设置来忘记它

Setting - > Wi-Fi - > Wi-Fi Direct - >选择记住的组 - > Forget

然后,我可以在配置时更改群组所有者。

答案 1 :(得分:0)

我犯的另一个常见错误: 按下所有者/客户端按钮的设备(更改配置组合命令值)必须通过按连接按钮和而不是其他设备来启动连接。