zoukankan      html  css  js  c++  java
  • Android开发之WIFI网络操作

    1.WIFi网卡有五个状态,实际就是一些整形常量:

    WIFI_STATE_DISABLED:WIFI不能使用,其值是:1.

    WIFI_STATE_DISABLING:WIFI正在关闭中,由于WIFI关闭是需要一个过程,其值是:0

    WIFI_STATE_ENABLED:WIFI可以使用,其值是:3.

    WIFI_STATE_ENABLING:WIFI正在开启中, 其值是:2.

    WIFI_STATE_UNKNOWN:WIFI未知网卡状态,当手机或程序出现错误引起WIFi不可用,其值是:4.

    2.操作WIFi需要获取的权限:(主要操作权限有以下四个)

    CHANGE_NETWORK_STATE :允许修改网络状态的权限。

    CHANGE_WIFI_STATE:允许修改 WIFI状态的权限。

    ACCESS_NETWORK_STATE:允许访问网络状态的权限。

    ACCESS_WIFI_STATE:允许访问 WIFI状态的权限。

    声明操作WIFI的权限在AndroidManifest配置文件中进行。

    <!--得到WIFI访问网络所需要的权限 -->

    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE">

    </uses-permission>

    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE">

    </uses-permission>

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

    </uses-permission>

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE">

    </uses-permission>

     

    3.WIFI状态进行操作主要涉及到三个方面:

    A:得到wifiManager对象,这个对象是操作WIFI网卡的根本,无论是改变,还是获取,都得通过这个对象。

    B:改变WIFI网卡的状态,涉及到一个wifiManager对象的setWifiEnabled(参数)方法,通过其中参数设置打开或关闭WIFIegtrue表示打开,false表示关闭。

    C:获取WIFI网卡的状态,涉及到一个wifiManager对象的getWifiState方法,通过此方法可以得到WIFI当前的状态,即前面所说的五种状态。

     

    Java示例代码:

    //得到WifiManager对象,这是操作Wifi网上的根本,无论是改变,获取其状态,都在通过此对象;

    wifiManager=(WifiManager)wifiActivity.this.getSystemService(

    Service.WIFI_SERVICE

    //,,Context.WIFI_SERVICE,,两种都可以,ServiceContext的一个子类,其中的WIFI_SERVICE是从Context中继承下来的;

    );

     

    //改变WIFI状态;

    wifiManager.setWifiEnabled(true);//true表示打开,false表示关闭;

     

    stateTextView.setText(

    wifiManager.getWifiState()//得到WIFI的当前状态;

    );

    ,,呵呵,补充一下,需要Android系统的手机进行测试......

  • 相关阅读:
    Django: 获取头信息
    好用工具:火狐浏览器的境内境外版本区分
    Django: request.GET.get()
    es6: 展开运算符
    Vue: 配置axios基准路径并使用
    js: 获取Blob的值
    ApiPost: Error:ESOCKETTIMEDOUT
    Vue错误:Cannot read properties of undefined (reading '$router')
    git报错:error: Your local changes to the following files would be overwritten by checkout:
    Django: request.query_params取值
  • 原文地址:https://www.cnblogs.com/leischen/p/2958046.html
Copyright © 2011-2022 走看看