第8章-Android网络通信.ppt

第8章-Android网络通信资料

Android Wifi开发 WifiManager主要用于处理下面一些事务: 已经配置好的网络连接列表。这个列表可以被用户查看或者更新,而且可以通过它来修改个别接入点的属性; 如果当前有连接存在的话,可以得到当前正处于活动状态的wifi连接的控制权,可以通过它建立或者断开连接,并且可以查询该网络连接的动态信息; 通过对已经扫描到的接入点的足够信息来进行判断,得出一个最好的接入点进行连接。 定义了很多用于系统广播通知的常量,它们分别代表了WiFi状态的改变。 Android Wifi开发 补充:Android网络连接管理类——ConnectivityManager 该类用于管理抽象意义上的“网络连接” 监控网络连接(包括WiFi,GPRS,UMTS等等); 当网络连接发生改变时,向系统广播这一改变; 当失去了当前的网络连接时,尝试切换到另外一个连接; 提供了允许其他应用程序调用的API让应用程序可以方便地查询当前的网络状态。 它的主要作用是: Android Wifi权限获取 要在应用程序中对Android系统的WiFi设备进行相关操作,需要在项目中的AndroidManifest.xml中选择性地添加如下几句用于声明权限的语句: uses-permission android:name=android.permission.ACCESS_WIFI_STATE /uses-permission uses-permission android:name=android.permission.ACCESS_CHECKIN_PROPERTIES /uses-permission uses-permission android:name=android.permission.WAKE_LOCK/uses-permission uses-permission android:name=android.permission.CHANGE_WIFI_STATE /uses-permission Android Wifi开发——代码示例 //取得WifiManager对象 mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); //取得WifiInfo对象 mWifiInfo = mWifiManager.getConnectionInfo(); //打开WIFI public void openWifi() { if (!mWifiManager.isWifiEnabled()) { mWifiManager.setWifiEnabled(true); } } Android Wifi开发——代码示例 //关闭WIFI public void closeWifi() { if (!mWifiManager.isWifiEnabled()) { mWifiManager.setWifiEnabled(false); } } //得到WifiLock,以便应用程序保持wifi连接 public void acquireWifiLock() { mWifiLock.acquire(); } Android Wifi开发——代码示例 //解锁WifiLock public void releaseWifiLock() { if (mWifiLock.isHeld()) //判断是否被锁定 { mWifiLock.acquire(); } } //创建WifiLock public void creatWifiLock() { mWifiLock = WifiManager.createWifiLock(Lock); } Android Wifi开发——代码示例 //得到已经配置好的网络列表 public ListWifiConfiguration getConfiguration() { return mWifiConfiguration; } //选择一个已配置好的网络进行连接 public void connectConfiguration(int index) { //索引大于配置好的网络索引返回 if(index mWifiConfiguration.size()) { return; } //连接配置好的指定ID的网络 mWifiManager.enableNetwork(mWifiConfiguration.get(index) .networkId, true); } Android Wifi开发——代码示例 //扫描接入点 public void startS

文档评论(0)

1亿VIP精品文档

相关文档