首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我的眼镜通过蓝牙连接到我的手机时,我如何获取它的IP?

当我的眼镜通过蓝牙连接到我的手机时,我如何获取它的IP?
EN

Stack Overflow用户
提问于 2014-05-09 15:48:31
回答 1查看 470关注 0票数 1

我用蓝牙把眼镜和我的手机配对了。我的手机连接到了WiFi网络(而且我的眼镜没有连接到WiFi,它使用的是我手机的WiFi )。

我知道我可以使用以下代码获取IP本地ip地址:

代码语言:javascript
复制
        WifiManager wifiMgr = (WifiManager) getSystemService(WIFI_SERVICE);
    WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
    int ip = wifiInfo.getIpAddress();
    String ipAddress = Formatter.formatIpAddress(ip);

如果我在平板电脑或智能手机上运行这段代码就可以了,但如果我在我的眼镜上运行它,我得到的是ip 0.0.0.0 (请记住,我的眼镜是通过蓝牙连接到我的手机上的,这个手机是有网络连接的)。

那么,有什么建议吗?我需要这个,因为我的杯子里有一个插座,我需要IP地址。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-12-11 05:14:52

代码现在可以由任何活动调用

代码语言:javascript
复制
public String getIP(){
    WifiManager wifiMgr = (WifiManager) context.getSystemService(context.WIFI_SERVICE);
    WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
    int ip = wifiInfo.getIpAddress();
    String ipAddress = Formatter.formatIpAddress(ip);
}

给任何有兴趣的人。上面的代码在一个活动中对我来说是有效的。尝试:

代码语言:javascript
复制
Toast toast = Toast.makeText(this,
              "IP Address:\n\r"+getIP(this), Toast.LENGTH_LONG);
toast.show();

可能您的UI没有更新,或者将其打印到日志中。另一种可能是您需要在清单中添加以下内容:

代码语言:javascript
复制
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

不知道你是否需要两者,但我的应用程序需要这两个,因为我做了很多网络,听起来你也是。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23559244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档