美文网首页
Android 实时网络检测

Android 实时网络检测

作者: Android逍遥郎 | 来源:发表于2018-09-17 17:06 被阅读29次

    有个需求是 在android 项目中当网络不太好时 需要实时监测到网络状态给客户反馈网络情况  查看了好多资料最后决定用Facebook推出的这个jar解决问题 现将其使用方法记录如下:

    1.添加依赖:

    compile'com.facebook.network.connectionclass:connectionclass:1.0.1'

    2. 定义接口:

    private class ConnectionChangedListener implements

            ConnectionClassManager.ConnectionClassStateChangeListener {

    @Override

        public void onBandwidthStateChange(ConnectionQuality bandwidthState) {

    Log.e("onBandwidthStateChange", bandwidthState.toString());

        }

    }

    3.Activity中声明接口并注册和移除

    private ConnectionChangedListenerlistener =new ConnectionChangedListener();

    @Override

    protected void onResume() {

    super.onResume();

        ConnectionClassManager.getInstance().register(listener);

    }

    @Override

    protected void onPause() {

    super.onPause();

        ConnectionClassManager.getInstance().remove(listener);

    }

    4.使用:获取connectionQuality 

     ConnectionQuality connectionQuality = ConnectionClassManager.getInstance().getCurrentBandwidthQuality();

    String name = connectionQuality.name();

    if (name.equals("POOR")) {

    Toast.makeText(context, "当前网络差", Toast.LENGTH_SHORT).show();

    }

    当name.equals("POOR")时 网速为150K以下  当然可以根据自己的需求去选择不同的方法。

    简单记录一下

    相关文章

      网友评论

          本文标题:Android 实时网络检测

          本文链接:https://www.haomeiwen.com/subject/mcernftx.html