大家好,我们这一节讲一下,Android获取Ip的一些方法,在我们开发中,有判断手机是否联网,或者想获得当前手机的Ip地址,当然WIFI连接的和
我们3G卡的Ip地址当然是不一样的.
首先我尝试了如下方法:
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int ipAddress = wifiInfo.getIpAddress();
但是获得的居然是一个整数,我尝试了用些数学方法都没有成功!,所以这种方法不可取!
最后查了一些资料,发现如下方法是比较通用的,我尝试了WIFI和G3卡,都获取了争取的Ip地址:代码如下:
public String getLocalIpAddress() {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {
Log.e(LOG_TAG, ex.toString());
}
return null;
}
当我的手机处于飞行状态是,获得Ip地址为空,刚好符合要求!!!
分享到:
相关推荐
Android高手进阶教程之----Android 通用获取Ip的方法(判断手机是否联网的方法)!!!.doc Android高手进阶教程之----Android 在一个应用中如何启动另外一个已安装的应用!!!.doc Android高手进阶教程之----Android 中...
#### 十一、Android通用获取IP的方法(判断手机是否联网的方法) - **获取IP地址**: - 通过`ConnectivityManager`获取网络信息。 - 根据网络类型获取对应接口的IP地址。 - **判断手机是否联网**: - 使用`...
- **通用获取IP的方法**:提供一种判断设备是否联网的方法,并获取IP地址。 - **启动另一个已安装的应用**:介绍如何在一个应用中启动另一个已安装的应用。 - **数据库SQLiteDatabase的使用**:介绍如何使用SQLite...
7. **兼容性**:虽然补丁主要针对RK3568,但提到其他平台也可以参考,这意味着移植方法可能具有一定的通用性。开发者可能已经考虑了Rockchip其他平台的差异,确保了补丁的可移植性。 综上所述,"RK356X android11 ...
此外,由于Android在非手机系统上的应用,促进了OESF这样的非营利组织的成立,它们的目的是协同开发通用的架构或平台。这样的组织推动了Android在机顶盒等非手机领域的应用,并且帮助厂商应对从传统电视到智能电视的...
通过深入研究"Android_jingdiancode"中的源码,开发者不仅能学习到具体的游戏实现,还能掌握Android平台上的通用编程技巧和最佳实践。对于想要提升Android游戏开发技能的程序员来说,这是一个宝贵的资源。
它集成了完整的TCP/IP协议栈,支持Wi-Fi标准的802.11 b/g/n,可以轻松地嵌入到各种硬件项目中,实现物联网设备的联网功能。ESP8266具有丰富的GPIO接口,可与各种传感器和执行器连接,实现数据采集和设备控制。 **...
* 通用功能:支持基本的车联网服务,例如Vehicle-to-Everything(V2X)通信、数据采集和传输等。 * 增强功能:支持基于 LTE 技术的增强功能,例如高速数据传输、低延迟通信等。 * 管理功能:支持模组的远程管理和...
控制中心通过GPRS通信技术与外界的智能手机或平板电脑相连接,用户可以下载并安装Android应用程序来远程获取家庭信息,并发送控制指令。 智能家居控制系统的设计考虑到了用户体验和系统的稳定性,并且具有良好的...
该特性使得设备可以便捷地与其他设备(如智能手机、平板电脑等)连接,特别适合于Android设备的连接,与Ad-Hoc模式有明显区别。 2.10参数设置章节说明了用户可以通过串口或网络配置该模块,这与USR-WIFI232-a/b/c/d...
6. **网络编程**:许多嵌入式系统需要联网功能,因此掌握TCP/IP协议栈、套接字编程以及网络服务的实现是必要的。 7. **图形用户界面**:虽然许多嵌入式应用可能没有传统意义上的GUI,但一些设备如智能设备和工业...
5. **Android摄像头的VLC研究**:智能手机摄像头可以作为VLC的发射和接收端,扩展了VLC的应用场景。 6. **DVB-S2(数字视频广播-第二代卫星)**:这是一种卫星广播标准,用于提供高清电视服务和宽带互联网接入,...
嵌入式Linux应用程序开发在当前科技领域中占据着重要的地位,尤其在基于ARM架构的硬件平台上,其应用广泛,从物联网设备到智能手机,再到工业控制系统,都有它的身影。本资料详细探讨了如何在嵌入式环境中开发Linux...
此外,ESP8266还集成了Wi-Fi MAC/BB/RF/PA/LNA等功能,使得这款模块不仅能够作为一个独立的网络控制器使用,还可以为现有的设备增加联网功能。 **主要特点**: - 支持标准的IEEE 802.11 b/g/n协议,完整的TCP/IP...