网络判断

本文介绍了一种在Android应用中检查网络状态的方法,包括区分WIFI和移动数据连接,并提供了一个简单的工具类实现网络可用性的判断。通过使用ConnectivityManager和NetworkInfo,可以有效地在应用程序中实施网络状态监测。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.判断wifi、数据



public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (getNetype(this)== -1){
            //初始化数据
            Toast.makeText(this,"网络未连接,请连接网络",Toast.LENGTH_SHORT).show();
        }else {
            if (getNetype(this)==1){
                Toast.makeText(this,"连接WIFI网络",Toast.LENGTH_SHORT).show();
            }else {
                Toast.makeText(this,"连接移动网络",Toast.LENGTH_SHORT).show();
            }

        }
    }

    /**
          * 返回值 -1:没有网络  1:WIFI网络   3:net网络
          */
    public static int getNetype(Context context) {
        int netType = -1;
        ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
        if (networkInfo == null) {
            return netType;
        }
        int nType = networkInfo.getType();
        if (nType == ConnectivityManager.TYPE_MOBILE) {
            netType = 2;
        } else if (nType == ConnectivityManager.TYPE_WIFI) {
            netType = 1;
        }
        return netType;
    }
}

2.简单判断 

1.工具类

 //判断网络
   public static boolean newwork(Context context)
    {
        ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo activeNetworkInfo = manager.getActiveNetworkInfo();
        return activeNetworkInfo!=null && activeNetworkInfo.isAvailable();

    }

2.主页面

 //首页
            if(!network.newwork(MainActivity.this))
            {
                Toast.makeText(this, "无网络", Toast.LENGTH_SHORT).show();
                ss.setVisibility(View.VISIBLE);
                //动画
                objectAnimator = ObjectAnimator.ofFloat(ss, "rotation", 360f);
                objectAnimator.setDuration(1000);
                objectAnimator.start();
            }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值