其他分享
首页 > 其他分享> > WiFi Direct设备与其他Android设备的连接

WiFi Direct设备与其他Android设备的连接

作者:互联网

我可以将启用了WiFi Direct的设备连接到任何不具有WiFi Direct功能但支持WiFi热点连接的设备吗? WiFi是否直接使用专用硬件在两个设备上都存在?网络发现在这种情况下会起作用吗?

解决方法:

有可能的.代码摘自我在Droidcon UK 2013上的一次演讲.

您需要调用WifiP2pManager类的createGroup(WifiP2pManager.Channel c,WifiP2pManager.ActionListener侦听器)方法.这将创建一个支持旧版Wi-Fi连接的Wi-Fi Direct组.

通话之前,您需要注册类似于以下内容的广播接收器:

BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        if(intent.getAction().equals
            (WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION)){
            wifiP2pManager.requestGroupInfo(channel,
                new WifiP2pManager.GroupInfoListener() {
                @Override
                public void onGroupInfoAvailable(WifiP2pGroup group) {
                    if(group != null){
                        // clients require these
                        String ssid = group.getNetworkName(),
                        String passphrase = group.getPassphrase() 
                    }
                }
            });
        }
    }
};

一旦其他设备具有ssid和密码,其他设备便可以使用Wi-Fi连接到Wi-Fi Direct设备.

标签:wifi-direct,android,wifi,access-point,wifip2p
来源: https://codeday.me/bug/20191009/1880376.html