【发布时间】:2011-12-23 04:38:47
【问题描述】:
出于多播目的,我正在寻找一种简单的方法来检测 Android 设备的 IP 何时发生变化。我该怎么做?
更具体地说,我希望检测:
- 当设备连接到新的 Wifi 网络并从 DHCP 获取 IP 时
- 当设备由于某种原因需要更新 IP 时
【问题讨论】:
出于多播目的,我正在寻找一种简单的方法来检测 Android 设备的 IP 何时发生变化。我该怎么做?
更具体地说,我希望检测:
【问题讨论】:
您可以使用ConnectivityManager:
您可以使用它来查询当前的连接状态:
ConnectivityManager connMananger = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = connMananger.getActiveNetworkInfo();
可以通过NetworkInterface.getNetworkInterfaces()获取网络接口的当前IP地址
并且您可以通过CONNECTIVITY_ACTION broadcast接收连接状态何时更改的自动通知
【讨论】: