Android - 如何关闭Wifi-direct

时间:2015-10-27 10:10:53

标签: android wifi-direct

我是Java,Android甚至是Stackoverflow的新手,如果我的问题写得不好,很抱歉。

我在线跟踪了许多指南,向我展示了如何使用Wifi-direct连接两台设备。 我设法做到这一点,现在我只需要关闭连接。

我有一个C ++"服务器"同行和Android"客户端"同行和客户端我正在使用Wifi-Direct演示(下面链接)

  • 我创建了一个Wifi-Direct组C ++端
  • 从Android我搜索服务器
  • 用户选择服务器
  • 套接字连接
  • 传送

现在我不再需要连接,所以我想关闭它并立即将两个设备重新连接到正常的Wifi。

如果我尝试启动demo的disconnect()函数,它会进入OnSuccess(),但Wifi-Direct图标根本不会消失; 奇怪的是,我找不到任何关于如何做到这一点的指南。

我的应用程序还有另一个问题...如果我已连接,并且我关闭应用程序,Wifi-direct图标仍然打开,我无法使用Wifi连接到Internet ...我认为套接字可能仍处于TIME_WAIT状态,但我不确定如何检查...

提前谢谢!

编辑:我觉得有用的一些答案,但没有说明如何关闭Wifi-Direct: http://processors.wiki.ti.com/index.php/OMAP_Wireless_Connectivity_NLCP_WiFi_Direct_Configuration_Scripts#p2p_group_add

https://android.googlesource.com/platform/development/+/master/samples/WiFiDirectDemo/

Wi-Fi Direct Android

https://stackoverflow.com/questions/7632135/how-to-create-the-server-client-connection-between-android-mobile-and-pc

2 个答案:

答案 0 :(得分:2)

使用WifiP2pManager.removeGroup(频道,ActionListener侦听器)离开该组,它将停止您设备上的Wifi Direct。

http://developer.android.com/reference/android/net/wifi/p2p/WifiP2pManager.html

答案 1 :(得分:0)

试试这个

在清单文件中添加权限

FLV

然后您可以在班级中使用以下代码         (关闭Wifi)

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>