Tal*_*lib 8 java ip android wifi-direct
我试图获取我的设备的IP地址,但都是徒劳的,没有成功.我试过了
public String getP2PIpAddr() {
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_P2P_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int ip = wifiInfo.getIpAddress();
String ipString = String.format(
"%d.%d.%d.%d",
(ip & 0xff),
(ip >> 8 & 0xff),
(ip >> 16 & 0xff),
(ip >> 24 & 0xff));
return ipString;
}
Run Code Online (Sandbox Code Playgroud)
但它给我0.0.0.0,没有其他方法也工作..帮助!!
Bud*_*ius 11
就像参考:我是WiFi-Shoot(通过WiFi Direct的直接文件传输应用程序)的开发者.
不幸的是,没有办法获得自己的IP地址,操作的一般原则略有不同:
initialize
获得频道,所有其他操作都需要此频道.discoverPeers
和connect
他们中的一个之后requestGroupInfo
告诉您该设备是否为组所有者以及组所有者IP地址是什么.因此,非所有者可以使用提供的地址连接到所有者,所有者将收听连接.requestPeers
可以给你一个所有连接对等体的列表.这包括MAC地址和名称.通话Context.getSystemService(Context.WIFI_P2P_SERVICE)
将为您提供WiFiP2PManager.
是的,你需要一堆WiFI许可,比如ACCESS_WIFI_STATE
,CHANGE_WIFI_STATE
等等.
向组所有者发送对等方的本地 IP 地址(以 192.168.xx 开头)。在这次“握手”之后,这并不需要时间,一切都很好。没有找到其他方法获取peer的ip地址,GroupListener/PeerListener/...提供的唯一信息就是mac地址。
归档时间: |
|
查看次数: |
9884 次 |
最近记录: |