Android中监听系统网络连接打开或者关闭的实现代码
程序员文章站
2023-12-10 22:11:28
很简单,所以直接看代码复制代码 代码如下:package xxx; import android.content.broadcastreceiver; ...
很简单,所以直接看代码
复制代码 代码如下:
package xxx;
import android.content.broadcastreceiver;
import android.content.context;
import android.content.intent;
import android.net.connectivitymanager;
import android.net.networkinfo;
复制代码 代码如下:
public class netstatereceiver extends broadcastreceiver {
@override
public void onreceive(context context, intent intent) {
connectivitymanager manager = (connectivitymanager) context
.getsystemservice(context.connectivity_service);
networkinfo gprs = manager
.getnetworkinfo(connectivitymanager.type_mobile);
networkinfo wifi = manager
.getnetworkinfo(connectivitymanager.type_wifi);
if (!gprs.isconnected() && !wifi.isconnected()) {
// network closed
} else {
// network opend
}
}
}
代码自定义了一个broadcastreceiver,是想监听网络设置变化的事件。
manifest文件里注册监听。
复制代码 代码如下:
<receiver android:name="xxx.netstatereceiver">
<intent-filter>
<action android:name="android.net.conn.connectivity_change" />
</intent-filter>
</receiver>
还需要加入权限信息。
复制代码 代码如下:
<uses-permission android:name="android.permission.access_network_state" />
<uses-permission android:name="android.permission.access_wifi_state" />