Android中监听系统网络连接打开或者关闭的实现代码


很简单,所以直接看代码

复制代码 代码如下:

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" />


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3