当前位置:  编程技术>移动开发

android开发教程之wifi开发示例

    来源: 互联网  发布时间:2014-10-24

    本文导语:  1、 WIFI网卡的状态WIFI网卡的状态信息都以整型变量的形式存放在 android.net.wifi.WifiManager 类中,有以下状态:WIFI_STATE_DISABLEDWIFI网卡不可用WIFI_STATE_DISABLINGWIFI网卡正在关闭WIFI_STATE_ENABLEDWIFI网卡可用WIFI_STATE_ENABLINGWIFI网卡正在打开W...

1、 WIFI网卡的状态
WIFI网卡的状态信息都以整型变量的形式存放在 android.net.wifi.WifiManager 类中,有以下状态:
WIFI_STATE_DISABLED
WIFI网卡不可用
WIFI_STATE_DISABLING
WIFI网卡正在关闭
WIFI_STATE_ENABLED
WIFI网卡可用
WIFI_STATE_ENABLING
WIFI网卡正在打开
WIFI_STATE_UNKNOWN
WIFI网卡状态未知
2、 操作WIFI 网卡所需的权限
CHANGE_NETWORK_STATE
允许应用程序改变网络连接状态
CHANGE_WIFI_STATE
允许应用程序改变WIFI 连接状态
ACCESS_NETWORK_STATE
允许应用程序获取网络的状态信息
ACCESS_WIFI_STATE
允许应用程序获得WIFI 的状态信息

3、 改变WIFI 网卡的状态
对WIFI 网卡进行操作需要通过对 WifiManager 对象来进行,获取该对象的方法如下:

代码如下:

WifiManager wifiManager=(WifiManager) Context.getSystemService(Service.WIFI_SERVICE); 

打开WIFI 网卡:

代码如下:

wifiManager.setWifiEnabled(true); 

关闭WIFI 网卡

代码如下:

wifiManager.setWifiEnabled(false); 

获取网卡的当前状态:

代码如下:

wifiManager.getWifiState(); 

示例代码:由于Android模拟器不支持wifi操作,所以例子需要在实体手机上运行
AndroidManifest.xml

代码如下:

 
 
     
         
             
                 
                 
             
         
     
     
     
     
     
     
     

Activity

代码如下:

package me.bym; 
import android.app.Activity; 
import android.content.Context; 
import android.net.wifi.WifiManager; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.Toast; 
public class WifiActivity extends Activity { 
    private Button startWifiButton = null; 
    private Button shutdownWifiButton = null; 
    private Button checkStateButton = null; 
    private WifiManager wifiManager = null; 
    private String res = ""; // 用来存放操作结果信息的字符串 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        startWifiButton = (Button) findViewById(R.id.StartWifiButton); 
        shutdownWifiButton = (Button) findViewById(R.id.ShutdownWifiButton); 
        checkStateButton = (Button) findViewById(R.id.CheckStateButton); 
        startWifiButton.setOnClickListener(new StartWifiListener()); 
        shutdownWifiButton.setOnClickListener(new ShutdownWifiListener()); 
        checkStateButton.setOnClickListener(new CheckStateListener()); 
    } 
    class StartWifiListener implements OnClickListener { 
        @Override 
        public void onClick(View v) { 
            wifiManager = (WifiManager) WifiActivity.this 
                    .getSystemService(Context.WIFI_SERVICE); 
            if (wifiManager.setWifiEnabled(true)) { 
                res = "启动wifi服务成功"; 
            } else { 
                res = "启动wifi服务失败"; 
            } 
            Toast.makeText(WifiActivity.this, res, Toast.LENGTH_SHORT).show(); 
        } 
    } 
    class ShutdownWifiListener implements OnClickListener { 
        @Override 
        public void onClick(View v) { 
            wifiManager = (WifiManager) WifiActivity.this 
                    .getSystemService(Context.WIFI_SERVICE); 
            if (wifiManager.setWifiEnabled(false)) { 
                res = "关闭wifi服务成功"; 
            } else { 
                res = "关闭wifi服务失败"; 
            } 
            Toast.makeText(WifiActivity.this, res, Toast.LENGTH_SHORT).show(); 
        } 
    } 
    class CheckStateListener implements OnClickListener { 
        @Override 
        public void onClick(View v) { 
            wifiManager = (WifiManager) WifiActivity.this 
                    .getSystemService(Context.WIFI_SERVICE); 
            switch (wifiManager.getWifiState()) { 
            case WifiManager.WIFI_STATE_DISABLED: 
                res = "WIFI已关闭"; 
                break; 
            case WifiManager.WIFI_STATE_DISABLING: 
                res = "WIFI正在关闭中"; 
                break; 
            case WifiManager.WIFI_STATE_ENABLED: 
                res = "WIFI已启用"; 
                break; 
            case WifiManager.WIFI_STATE_ENABLING: 
                res = "WIFI正在启动中"; 
                break; 
            case WifiManager.WIFI_STATE_UNKNOWN: 
                res = "未知WIFI状态"; 
                break; 
            } 
            Toast.makeText(WifiActivity.this, res, Toast.LENGTH_SHORT).show(); 
        } 
    } 




    
 
 

您可能感兴趣的文章:

  • Android开发需要的几点注意事项总结
  • IDEA的Android开发插件 idea-android
  • Android及andriod无线网络Wifi开发的几点注意事项
  • 轻量级Android开发工具 Android Tools
  • Android 开发环境 Android Studio
  • android开发:“android:WindowTitle”没有对应项no resource
  • android开发教程之用命令启动android模拟器并设置其内存大小
  • Android的SVG开发包 svg-android
  • Android开发工具包 Android SDK
  • Android的开发框架 mobilelite
  • Android开发工具 MOTODEV Studio
  • Android开发:TextView加入滚动条示例
  • Android开发插件 Eclipse ADT
  • Android的ui开发类库 GreenDroid
  • 新手如何学习android开发
  • Android3D应用与游戏开发框架 JQGL
  • Android平板电脑开发
  • NetBeans开发Android的插件
  • android开发教程之间隔执行程序(android计时器)
  • android开发教程之textview内容超出屏幕宽度显示省略号
  • android上插件开发模块 WeiPlugin
  • android开发教程之switch控件使用示例
  • android开启免提切换功能示例
  • Android开发之注册登录方法示例
  • 手写android布局示例
  • Android示例程序 apps-for-android
  • android网络编程之android连接网络的简单示例代码
  • android获取当前手机号示例程序
  • android读取assets文件示例
  • android读取raw文件示例
  • android实现来电静音示例(监听来电)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • android教程之把自己的应用加入到系统分享中
  • android开发教程之实现toast工具类
  • android 使用虚拟机安装apk(图文教程)
  • android开发教程之获取使用当前api的应用程序名称
  • android开发教程之文本框加滚动条scrollview
  • android 开发教程之日历项目实践(一)
  • android开发教程之卸载sd卡对MediaServer的处理
  • android开发教程之时间对话框核心代码
  • android开发教程之使用looper处理消息队列
  • android开发教程之android的handler使用方法
  • android开发教程之清除android数据缓存示例(清除本地数据缓存)
  • android开发教程之判断是手机还是平板的方法
  • android开发教程之系统资源的使用方法 android资源文件
  • android开发教程之framework增加字符串资源和图片等resource资源
  • android教程之hockeyapp捕获异常示例
  • android开发基础教程—SharedPreferences读写
  • android基础教程之android的listview与edittext冲突解决方法
  • android教程之使用popupwindow创建菜单示例
  • android开发教程之handler异步更新ui
  • android教程之intent的action属性使用示例(intent发短信)
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android瀑布流实例 android_waterfall
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android系统自带样式 (android:theme)
  • Android访问与手机通讯相关类的介绍
  • Android网络共享软件 Android Wifi Tether
  • Android 2.3 下StrictMode介绍
  • Android 图标库 Android GraphView
  • Android手机事件提醒 Android Notifier
  • XBMC的Android客户端 android-xbmcremote
  • Android小游戏 Android Shapes


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3