Android WiFi管理(WIFI_SERVICE)

Android WiFi管理(WIFI_SERVICE)

分类: Android2011-11-24 10:52 2000人阅读 评论(1) 收藏 举报

androidservicebuttonlayoutencodingmobile

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.entel.research"
  4. android:versionCode="1"
  5. android:versionName="1.0" >
  6. <uses-sdk android:minSdkVersion="7" />
  7. <application
  8. android:icon="@drawable/ic_launcher"
  9. android:label="@string/app_name" android:debuggable="true">
  10. <activity
  11. android:label="@string/app_name"
  12. android:name=".WifiManagerActivity" >
  13. <intent-filter >
  14. <action android:name="android.intent.action.MAIN" />
  15. <category android:name="android.intent.category.LAUNCHER" />
  16. </intent-filter>
  17. </activity>
  18. </application>
  19. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
  20. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
  21. <uses-permission android:name="android.permission.WAKE_LOCK" />
  22. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  23. </manifest>

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="fill_parent"
  5. android:orientation="vertical" >
  6. <TextView
  7. android:layout_width="fill_parent"
  8. android:layout_height="wrap_content"
  9. android:text="@string/hello" />
  10. <Button
  11. android:id="@+id/wifiManager_open"
  12. android:layout_width="fill_parent"
  13. android:layout_height="wrap_content"
  14. android:text="打开WiFi" />
  15. <Button
  16. android:id="@+id/wifiManager_close"
  17. android:layout_width="fill_parent"
  18. android:layout_height="wrap_content"
  19. android:text="关闭WiFi" />
  20. <Button
  21. android:id="@+id/wifiManager_check"
  22. android:layout_width="fill_parent"
  23. android:layout_height="wrap_content"
  24. android:text="显示WiFi状态" />
  25. <Button
  26. android:id="@+id/wifiManager_WIFI_SETTINGS"
  27. android:layout_width="fill_parent"
  28. android:layout_height="wrap_content"
  29. android:text="WiFi网络设置" />
  30. <Button
  31. android:id="@+id/threeGManager_State"
  32. android:layout_width="fill_parent"
  33. android:layout_height="wrap_content"
  34. android:text="显示3G边境状态" />
  35. <Button
  36. android:id="@+id/wifiManager_WIRELESS_SETTINGS"
  37. android:layout_width="fill_parent"
  38. android:layout_height="wrap_content"
  39. android:text="无线网络配置" />
  40. </LinearLayout>

[java] view plaincopy

  1. package com.entel.research;
  2. import android.app.Activity;
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import android.net.ConnectivityManager;
  6. import android.net.NetworkInfo.State;
  7. import android.net.wifi.WifiManager;
  8. import android.os.Bundle;
  9. import android.provider.Settings;
  10. import android.view.View;
  11. import android.view.View.OnClickListener;
  12. import android.widget.Button;
  13. import android.widget.Toast;
  14. public class WifiManagerActivity extends Activity
  15. {
  16. @Override
  17. public void onCreate(Bundle savedInstanceState)
  18. {
  19. super.onCreate(savedInstanceState);
  20. setContentView(R.layout.main);
  21. Button wifiManager_open = (Button) findViewById(R.id.wifiManager_open);
  22. Button wifiManager_close = (Button) findViewById(R.id.wifiManager_close);
  23. Button wifiManager_check = (Button) findViewById(R.id.wifiManager_check);
  24. Button wifiManager_WIFI_SETTINGS = (Button) findViewById(R.id.wifiManager_WIFI_SETTINGS);
  25. Button wifiManager_WIRELESS_SETTINGS = (Button) findViewById(R.id.wifiManager_WIRELESS_SETTINGS);
  26. Button threeGManager_State = (Button) findViewById(R.id.threeGManager_State);
  27. final WifiManager wifiManager = (WifiManager) WifiManagerActivity.this
  28. .getSystemService(Context.WIFI_SERVICE);
  29. final ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
  30. wifiManager_open.setOnClickListener(new OnClickListener()
  31. {
  32. public void onClick(View v)
  33. {
  34. wifiManager.setWifiEnabled(true);
  35. Toast.makeText(WifiManagerActivity.this, "Wifi开启",
  36. Toast.LENGTH_SHORT).show();
  37. }
  38. });
  39. wifiManager_close.setOnClickListener(new OnClickListener()
  40. {
  41. public void onClick(View v)
  42. {
  43. if (wifiManager.isWifiEnabled())
  44. {
  45. wifiManager.setWifiEnabled(false);
  46. Toast.makeText(WifiManagerActivity.this, "Wifi关闭",
  47. Toast.LENGTH_SHORT).show();
  48. }
  49. Toast.makeText(WifiManagerActivity.this, "Wifi关闭",
  50. Toast.LENGTH_SHORT).show();
  51. }
  52. });
  53. wifiManager_check.setOnClickListener(new OnClickListener()
  54. {
  55. public void onClick(View v)
  56. {
  57. String result = null;
  58. switch (wifiManager.getWifiState())
  59. {
  60. case WifiManager.WIFI_STATE_DISABLED:
  61. result = "WIFI已关闭";
  62. break;
  63. case WifiManager.WIFI_STATE_DISABLING:
  64. result = "WIFI正在关闭中";
  65. break;
  66. case WifiManager.WIFI_STATE_ENABLED:
  67. result = "WIFI已启用";
  68. break;
  69. case WifiManager.WIFI_STATE_ENABLING:
  70. result = "WIFI正在启动中";
  71. break;
  72. case WifiManager.WIFI_STATE_UNKNOWN:
  73. result = "未知WIFI状态";
  74. break;
  75. }
  76. Toast.makeText(WifiManagerActivity.this, result, Toast.LENGTH_SHORT)
  77. .show();
  78. }
  79. });
  80. wifiManager_WIFI_SETTINGS.setOnClickListener(new OnClickListener()
  81. {
  82. public void onClick(View v)
  83. {
  84. startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));
  85. }
  86. });
  87. threeGManager_State.setOnClickListener(new OnClickListener()
  88. {
  89. public void onClick(View v)
  90. {
  91. State mobile = conMan.getNetworkInfo(
  92. ConnectivityManager.TYPE_MOBILE).getState();
  93. Toast.makeText(WifiManagerActivity.this, mobile.toString(),
  94. Toast.LENGTH_SHORT).show();
  95. }
  96. });
  97. wifiManager_WIRELESS_SETTINGS.setOnClickListener(new OnClickListener()
  98. {
  99. public void onClick(View v)
  100. {
  101. startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));
  102. }
  103. });
  104. }
  105. }

版权声明:本文为博主原创文章,未经博主允许不得转载。

http://blog.csdn.net/sbvfhp/article/details/7007090
http://www.2cto.com/kf/201111/112219.html
时间: 2024-10-12 04:30:41

Android WiFi管理(WIFI_SERVICE)的相关文章

Android下自写类似系统wifi管理功能的实现

经常有人问到关于Android下WIFI管理的问题,询问个中归于wifi的操作,下面我就写写如何在Android下实现类似Android系统自带wifi管理功能的步骤,通过这个的学习,相信关于android下wifi的操作,我们基本都能掌握了: 第一.说说界面布局 界面很简单: 顶部一个刷新按钮和一个WIFI开关 下部一个listview,每一行就是一个扫描到的wifi信息,显示它的SSID.加密类型,信号强度,是否已经连接 第二.关于列表的获取 如何获取wifi扫描列表呢?wifiManage

Android WiFi开发教程(一)——WiFi热点的创建与关闭

相对于BlueTooth,WiFi是当今使用最广的一种无线网络传输技术, 几乎所有智能手机.平板电脑和笔记本电脑都支持Wi-Fi上网.因此,掌握基本的WiFI开发技术是非常必要的.本教程将围绕一个小Demo初步与大家一同探讨WiFi开发. 先上效果图   Demo功能比较简单,四个按钮.两个文本和一个列表.功能主要有创建WiFi热点,关闭WiFi热点,搜索WiFi,连接WiFi,数据通讯.源码会在教程结尾提供. 本章节主要介绍WiFi热点的创建和关闭 需要用到的权限 <uses-permissi

Android WIFI 简单用法

随着Wifi的普及,在开发App的时候对wifi的考虑越来越多了.例如程序的升级在wifi下可以省很多流量,在通信软件中的视频通话.可以实现高画质的传输等等,Android提供了WifiManager类来帮助开发者们管理Wifi.下面就简单来说一下WifiManager的简单用法把. 权限: 为了使用WfiManager 我们需要在Androidmanifest.xml 加入权限: //本例中使用了前两个.具体请按照需要添加权限. <uses-permission android:name=&quo

android wifi 信息

在androi中WIFI信息的获取可以通过系统提供的WIFI Service获取 WifiManager wifi_service = (WifiManager)getSystemService(WIFI_SERVICE); WifiInfo    wifiInfo     = wifi_service.getConnectionInfo();   获取正在连接着的wifi的WifiInfo 其中WifiInfo 中比较常用的信息有:   info.getBSSID():      获取BSSI

Android WiFi模块学习

转自:http://www.th7.cn/Program/Android/201303/130087.shtml wifi模块简介 android本身已经提供了包来处理Android环境下对Wifi的操作,位置是android.net.wifi下面.调用wifi操作需要在mainfest中添加对应权限. 主要功能类 官方提供的大致可以分为四个主要的类:WifiManager,ScanResult,WifiConfiguration,WifiInfo,此外还有WifiLock,MulticastL

Android wifi属性简介 及 wifi信息获取(wifi列表、配置信息、热点信息)

Android wifi对象属性及简易Demo 本章介绍Android开发中WiFi热点和WiFi属性的获取,介绍WiFi的名称.状态等属性以及获取周围WiFi热点的方法. 一.怎样获取wifi对象并进行操作 要操作 WIFI 设备,需要先获取 Context.getSystemService(Context.WIFI_SERVICE)获取WifiManager对象,并通过这个对象来管理WIFI设备. addNetwork(WifiConfiguration config) 添加一个config

Android Wi-Fi基本操作

从用户角度看,Android Wi-Fi模块自下向上可以看为5层:硬件驱动程序,wpa_suppplicant,JNI,WiFi API,WifiSettings应用程序. 1.wpa_supplicant是一个开源库,是android实现Wi-Fi功能的基础,它从上层接到命令后,通过Socket与硬件驱动进行通讯,操作硬件完成需要的操作. 2.JNI(Java Native Interface)实现了java代码与其他代码的交互,使得在java虚拟机中运行的java代码能够与其他语言编写的应用

android -------- WIFI 详解

今天简单的来聊一下安卓开发中的Wifi,一些常用的基础,主要分为两部分: 1:WiFi的信息 2:WiFi的搜索和连接 现在app大多都需要从网络上获得数据.所以访问网络是在所难免.但是在访问网络之前,我们应该先做一下网络的状态判断.其实在访问网络之前我们要做一些状态判断,对应一些状态判断来做处理,并不是直接使用Http访问网络即可. 很多人在开发就经常把网络这块直接跳过,直接访问网络,一旦断网,各种体验效果不好,不是说app没法用,只是体验效果差.还有,就是我们可能为用户考虑,因为现在一般连网

Android Wi-Fi Display(Miracast)介绍

Android Wi-Fi Display(Miracast)介绍 2012年11月中旬,Google发布了Android 4.2.虽然它和Android 4.1同属Jelly Bean系列,但却添加了很多新的功能.其中,在显示部分,Android 4.2在Project Butter基础上再接再厉,新增了对Wi-Fi Display功能的支持.由此也导致整个显示架构发生了较大的变化. 本文首先介绍Wi-Fi Display的背景知识,然后再结合代码对Android 4.2中Wi-Fi Disp