- 浏览: 67472 次
- 性别:
- 来自: Mercury
最新评论
一、什么是WIFI
WIFI就是一种无线联网的技术,以前通过网线连接电脑,而现在则是通过无线电波来联网。常见的就是一个无线路由器,在这个无线路由器的电波覆盖的有效范围都可以采用WIFI连接方式进行联网,如果无线路由器连接了一个ADSL线路或者别的上网线路,则又被称作“热点”。
二、获取WIFI网卡的状态
WIFI网卡的状态是由一系列的整型常量来表示的,通常是在WIFIManager类中。
1.WIFI_STATE_DISABLED:WIFI网卡不可用
2.WIFI_STATE_DISABLING:WIFI正在关闭
3.WIFI_STATE_ENABLED:WIFI网卡可用
4.WIFI_STATE_ENABLING:WIFI网卡正在打开
5.WIFI_STATE_UNKNOWN:未知网卡状态
三、操作WIFI所需要的权限
关于操作权限,可以在帮助文档Manifest.Permission中找到完整的列表。部分常用如下:
四、改变WIFI网卡的状态
对WIFI网卡进行操作需要通过WifiManager对象进行,获取该对象的方法如下:
wifiManager = (WifiManager)WifiActivity.this.getSystemService(Context.WIFI_SERVICE);
打开WIFI网卡:
wifiManager.setWifiEnabled(true);
关闭WIFI网卡:
wifiManager.setWifiEnabled(false);
获取网卡当前的状态:
wifiManager.getWifiState()
例子程序:
WifiActivity.java
package com.android.activity; 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 startButton = null; private Button stopButton = null; private Button checkButton = null; private WifiManager wifiManager = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); startButton = (Button)findViewById(R.id.startWifi); stopButton = (Button)findViewById(R.id.stopWifi); checkButton = (Button)findViewById(R.id.checkWifi); startButton.setOnClickListener(new StartWifiListener()); stopButton.setOnClickListener(new StopWifiListener()); checkButton.setOnClickListener(new CheckWifiListener()); } class StartWifiListener implements OnClickListener{ public void onClick(View v) { wifiManager = (WifiManager)WifiActivity.this .getSystemService(Context.WIFI_SERVICE); wifiManager.setWifiEnabled(true); System.out.println("wifi state --->" + wifiManager.getWifiState()); Toast.makeText(WifiActivity.this, "当前Wifi网卡状态为" + wifiManager.getWifiState(), Toast.LENGTH_SHORT).show(); } } class StopWifiListener implements OnClickListener{ public void onClick(View arg0) { wifiManager = (WifiManager)WifiActivity.this .getSystemService(Context.WIFI_SERVICE); wifiManager.setWifiEnabled(false); System.out.println("wifi state --->" + wifiManager.getWifiState()); Toast.makeText(WifiActivity.this, "当前Wifi网卡状态为" + wifiManager.getWifiState(), Toast.LENGTH_SHORT).show(); } } class CheckWifiListener implements OnClickListener{ public void onClick(View v) { wifiManager = (WifiManager)WifiActivity.this .getSystemService(Context.WIFI_SERVICE); System.out.println("wifi state --->" + wifiManager.getWifiState()); Toast.makeText(WifiActivity.this, "当前Wifi网卡状态为" + wifiManager.getWifiState(), Toast.LENGTH_SHORT).show(); } } }
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.activity" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".WifiActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="10" /> <!-- 以下是使用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> </manifest>
发表评论
文章已被作者锁定,不允许评论。
-
Android40_Dialog
2011-11-14 00:11 2994Dialog是Android常用的对话框控件。AlertDia ... -
Android39_Clock和TimePicker
2011-11-14 00:08 2356一、AnalogClock和DigitalClock ... -
Android38_ImageView和Gallery
2011-11-14 00:07 3609一、ImageView使用方法 ImageVi ... -
Android37_JSON数据解析
2011-11-08 00:14 2344一、JSON介绍 JSON(JavaSc ... -
Android36_Animations使用(四)
2011-11-08 00:14 3415一、LayoutAnimationsContrlller ... -
Android35_Animations使用(三)
2011-11-08 00:13 2648一、AnimationSet的具体使用方法 ... -
Android34_Animations使用(二)
2011-11-08 00:12 1953在代码中使用Animations可以很方便的调试、运行 ... -
Android33_Animations使用(一)
2011-11-08 00:12 2281一、Animations介绍 Anima ... -
Android31_AppWidget使用(二)
2011-11-05 00:09 2504一、PendingIntent介绍 PendingIn ... -
Android30_AppWidget使用(一)
2011-11-05 00:08 2260一、App Widget定义 App ... -
Android32_Notification用法
2011-11-05 00:09 1884Android系统的状态栏(Status Bar)中有一 ... -
Android29_SeekBar和RatingBar
2011-11-02 23:21 2116一、使用SeekBar步骤: SeekB ... -
Android28_ExpandableListActivity
2011-11-02 23:21 1483ExpandableListActivity就是可扩展的 ... -
Android27_AutoCompleteTextView
2011-11-02 23:21 1086一、创建AutoCompleteTextView ... -
Android26_DatePicker
2011-11-02 23:20 1777一、DatePicker和DatePickerDialo ... -
Android25_Spinner使用方法
2011-11-02 23:20 2813一、创建Spinner的步骤 1.在布局 ... -
Android24_Service初步
2011-10-18 22:27 1004一、Service概念 ... -
Android23_Socket编程
2011-10-18 22:19 1505一、什么是Socket Socket是基 ... -
Android21_广播机制(二)
2011-10-18 22:00 1002一、注册BroadcastReceiver的方法 ... -
Android20_广播机制(一)
2011-10-18 21:48 1075一、Android广播机制介绍 Android:操作系统 ...
相关推荐
在给定的“Android-wifi.zip”压缩包中,包含了一个Android Wi-Fi应用的APK文件以及其源码,这对于开发者来说是一个宝贵的资源,可以深入理解Wi-Fi功能的实现细节。 首先,我们要了解Android系统的Wi-Fi服务。...
描述中提到的"mtk7661_wifi_and_bt_905X3_android9.0环境下的驱动和补丁"进一步确认了这个压缩包的主要内容,即驱动程序和补丁,它们是为特定硬件环境(MTK7661,905X3平台)和操作系统版本(Android 9.0)定制的。...
3. **扫描WiFi网络**:通过`WifiManager`的`scanResults`属性,可以获取到所有可用的WiFi网络信息。调用`startScan()`方法发起扫描后,需要监听`ScanResults`回调以获取扫描结果。 4. **连接WiFi网络**:如果要手动...
在Android系统中,WiFi模块是实现无线网络连接的关键部分,对于开发者来说,理解和掌握如何进行Android WiFi开发至关重要。本文将深入探讨Android WiFi的模块程序、初始化过程、连接AP的步骤,以及WiFi SLAM...
1. **wpa_supplicant**:这是一个无线网络连接管理工具,用于处理WPA(Wi-Fi Protected Access)安全认证协议,帮助Android设备连接到受保护的WiFi网络。 2. **hostapd**:则是一个无线接入点(Access Point,AP)...
这个知识点涉及到Android应用程序开发,特别是那些需要处理网络连接质量或者优化Wi-Fi性能的场景。在"android_rssi.rar"压缩包中,我们很可能会找到关于如何在Android应用中获取和处理RSSI数据的代码示例或文档。 ...
本教程主要探讨Android系统如何利用GPS(全球定位系统)、WIFI和网络定位技术来获取位置信息。 首先,我们来理解GPS(Global Positioning System)定位。GPS是一种基于卫星导航的全球定位系统,能够提供地理位置和...
在Android系统中,WIFI模块是移动设备连接无线网络的核心组件。本文将深入解析Android WIFI模块的架构、核心模块、工作流程以及相关代码实现。 **WIFI模块框图** WIFI模块的架构从上到下可以分为应用层、框架层、...
这个“android_wifi_demo”项目显然旨在演示如何在Android设备上执行这些操作。通过该项目,我们可以学习到如何利用Android的Wi-Fi API进行一系列功能实现,如配置新网络、错误处理以及连接状态的管理。以下是一些...
《Realtek WiFi SDK for Android JB:为Android设备增强无线连接》 在当今信息化社会,无线网络已经成为日常生活和工作中的重要组成部分。Realtek公司作为全球知名的半导体制造商,为满足这一需求,推出了专门针对...
总结来说,“chariot6.70+endpoint7.30+pe_android_730_Wifi打流工具”是一个全面的WiFi性能测试解决方案,适用于测试和优化各种环境下的WiFi网络。通过对WiFi网络进行打流测试,我们可以深入理解网络的性能瓶颈,为...
这个名为"AndroidWiFi.rar"的压缩包包含了一份名为"AndroidWiFi.ppt"的PPT文件,它详细阐述了如何在Android平台上集成和管理Wi-Fi功能。让我们深入探讨这个话题,了解Android Wi-Fi API的使用、Wi-Fi热点的创建、...
这个标题"wifi_java_androidwifi_androidhotspot_"暗示了我们将探讨如何利用Java在Android上处理WiFi相关的任务。下面我们将深入讲解相关知识点。 1. **Android WiFi API**: Android SDK提供了`android.net.wifi`包...
android系统的wifi网络操作,并建立局域网socket通信。
【标题】"EZScreenshot-master_androidwifi_android_投屏_" 是一个关于Android设备通过WiFi实现屏幕投射的项目。这个项目的重点在于开发一个功能,使得用户能够在同一WiFi网络下的多个智能设备之间实现屏幕共享。 ...
标题中的“8723BS_wifi_bt_android 5.1_for_kernel_3.10”表明这是一款针对Realtek RTL8723BS芯片的Wi-Fi和蓝牙驱动程序,适用于运行Android 5.1操作系统的设备,且这些驱动是为内核版本3.10设计的。描述中提到的...
结合标签“wifi_java”和“java_wifi”,我们可以推断这个项目主要使用Java语言来处理Wi-Fi相关的编程任务,可能包括扫描可用的Wi-Fi网络、连接到特定的网络、发送和接收数据等操作。而“wifiactivity”标签进一步...
标题“8723bu_android_4.4_wifi_bt_for_kernel_3.0”和描述“8723BU ANDROID4.4/KERNEL3.0”指向的是一个专为基于Android 4.4(KitKat)操作系统和Linux内核3.0设计的8723BU无线Wi-Fi和蓝牙驱动程序包。8723BU是...
在Android开发中,WIFI网络操作是移动应用与外界通信的重要组成部分。本文将详细介绍如何在Android平台上实现WiFi的初始化、启用、查找接入点(AP)、配置参数以及连接操作。 首先,我们要理解WIFI的基本概念。WIFI...