判断网络状态是什么

来源:互联网 发布:长春 食品 盘古网络 编辑:程序博客网 时间:2024/05/01 14:41
在清单文件中配置一个读取网络的权限    
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>


写一个工具类

package com.lbp.demo2.util;import android.content.Context;import android.net.ConnectivityManager;import android.net.NetworkInfo;/** * author:Created by WangZhiQiang on 17/11/2. */public class NetStateUtil {    public static int getNetType(Context ctx){        int mState=-1;        ConnectivityManager service = (ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE);        NetworkInfo activeNetworkInfo = service.getActiveNetworkInfo();        if (activeNetworkInfo==null){            return mState;        }        int type = activeNetworkInfo.getType();        if(type==service.TYPE_WIFI){            mState=1;        }else if (type==service.TYPE_MOBILE){            mState=0;        }        return mState;    }}在主线程中判断
package com.lbp.demo2;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.Toast;import com.lbp.demo2.util.NetStateUtil;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        int i = NetStateUtil.getNetType(MainActivity.this);        if(i!=-1){           initdata();        }else{            Toast.makeText(this,"没有网了**********",Toast.LENGTH_SHORT).show();        }    }    private void initdata() {        Toast.makeText(this,"我有网了",Toast.LENGTH_SHORT).show();    }}

 

原创粉丝点击