不断检查Android中是否可用互联网连接的有效方法

不断检查Android中是否可用互联网连接的有效方法,第1张

不断检查Android中是否可用互联网连接的有效方法

用接收器来做。您可以收到有关网络状态更改的通知。例如,

private BroadcastReceiver networkReceiver = new BroadcastReceiver {    @Override    public void onReceive(Context context, Intent intent) {     super.onReceive(context, intent);     if(intent.getExtras()!=null) {        NetworkInfo ni=(NetworkInfo) intent.getExtras().get(ConnectivityManager.EXTRA_NETWORK_INFO);        if(ni!=null && ni.getState()==NetworkInfo.State.CONNECTED) { // we're connected        }     }     // we're not connected    }}

在您的网站上

onResume()
注册,然后在上注销
onPause()

@Overrideprotected void onPause() {    super.onPause();    unregisterReceiver(networkReceiver);}@Overrideprotected void onResume() {    super.onResume();    IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);    registerReceiver(networkReceiver, filter);}

此外,要在注册接收者之前获取初始状态,请在您的

onResume()
方法中调用此方法,

public boolean isNetworkConnected() {        ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);        NetworkInfo netInfo = cm.getActiveNetworkInfo();        if (netInfo != null && netInfo.isConnectedOrConnecting()) { return true;        }        return false;    }

确保您的应用请求此权限,

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5105824.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-17
下一篇2022-11-16

发表评论

登录后才能评论

评论列表(0条)

    保存