android - 通过 android studio 代码获取我的本地 IP 地址
问题描述
如何通过Android Studio的代码获取我的本地内部IP地址我尝试了类似问题中的所有代码但都失败了如果有帮助,我将不胜感激
解决方案
下面的代码为您提供了本地 IP 地址。
private String getIpAccess() {
WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);
int ipAddress = wifiManager.getConnectionInfo().getIpAddress();
final String formatedIpAddress = String.format("%d.%d.%d.%d", (ipAddress & 0xff), (ipAddress >> 8 & 0xff), (ipAddress >> 16 & 0xff), (ipAddress >> 24 & 0xff));
return formatedIpAddress; //192.168.31.2
}
试试这个代码的热点。它可能会起作用。
private String getIpAddress() {
String ip = "";
try {
Enumeration<NetworkInterface> enumNetworkInterfaces = NetworkInterface
.getNetworkInterfaces();
while (enumNetworkInterfaces.hasMoreElements()) {
NetworkInterface networkInterface = enumNetworkInterfaces
.nextElement();
Enumeration<InetAddress> enumInetAddress = networkInterface
.getInetAddresses();
while (enumInetAddress.hasMoreElements()) {
InetAddress inetAddress = enumInetAddress.nextElement();
if (inetAddress.isSiteLocalAddress()) {
ip += "SiteLocalAddress: "
+ inetAddress.getHostAddress() + "\n";
}
}
}
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
ip += "Something Wrong! " + e.toString() + "\n";
}
return ip;
}
推荐阅读
- python - 我的 python 气泵代码有什么问题?
- ios - 如何在 Swift 中向自定义 DateComponent 添加分钟
- python - 将列表中的唯一元素附加到新列表
- wordpress - AMP 上的 Google 表单是否需要 HTTPS?
- extreact - Sencha extJs/exreact 6/7 Tree 获取选中记录
- python - 排序算法不会产生正确的输出
- c++ - 我试图让它从文件中打印一些东西,它正在打印这些奇怪的东西
- python - Python - 如何替换列表列表中每个列表的第一个元素
- ruby - Ruby:使用适当的组合从两个二维数组编译散列
- reactjs - Enzyme Styledcomponents 浅渲染返回 `WithTheme(Component)`