1、增加权限:

  由于此应用需要获取手机的网络信息,wifi信息,因此需要在AndroidManifest.xml文件中添加相关权限,否则会报permission deny错误:

1  <uses-permission android:name="android.permission.INTERNET"/>
2 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
3 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
4 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

2、获取WifiManager对象:

1 WifiManager wm = (WifiManager)getSystemService(WIFI_SERVICE);  //获取wifi服务

  注意:android的后台运行在很多service,它们在系统启动时被SystemServer开启,支持系统的正常工作,getSystemService是Android很重要的一个API,根据传入的NAME来取得对应的Object,然后转换成相应的服务对象,getSystemService是抽象类的Context一个方法。

3、启动扫描:

1 wm.startScan();  //启动扫描。

  注意:这个方法是立即返回的,应该是新启动一个线程进行AP的扫描,所以最好等一段时间(很短时间就可以了)再获取结果。

4、获取扫描结果:

1 List<ScanResult> scanList = wManager.getScanResults();
2 for(ScanResult scanResult : scanList){
3   //对扫描结果的操作
4   String mac = scanResult.BSSID; //获取AP的mac地址
5   String ssid = scanResult.SSID; //获取服务集标识(路由器名字)
6   int rssi = scanResult.level; //wifi信号强度,单位是dbm
7 }

android获取周围AP信息(上)的更多相关文章

  1. android获取周围AP信息(下)

    疑问: 在上一篇中,还有一个问题未解决:WifiManager的startscan() 方法是立即返回的,也就是说这个方法会调用一个扫描wifi信号的线程,那么这个扫描什么时候结束呢?我们又该什么时候 ...

  2. android 获取系统硬件信息

    一,首先设置权限访问: <uses-permission android:name="android.permission.READ_PHONE_STATE" />  ...

  3. Android 获取图片exif信息

    使用android api读取图片的exif信息 布局代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...

  4. android获取设备全部信息

    private static final String FILE_MEMORY = "/proc/meminfo"; private static final String FIL ...

  5. [android] android 获取网络连接信息

    效果图:  工具类 /** * 获取网络连接信息 * * 根据NetworkInfo可以知道有很多的连接方式和信息 * * ① 当没有任何可用网络的时候,networkinfo为null 判断netw ...

  6. Android 获取手机联系人信息

    //获取联系人 Uri rawContacts = Uri.parse("content://com.android.contacts/raw_contacts"); Conten ...

  7. Android 获取运营商信息(完整版)-解决高通,MTK等双卡问题

    由于国内的运营商问题,双卡手机获取IMSI号问题要根据厂商API 来实现. 下面我们就来做一套完整的分析运营商获取IMSI号逻辑. 1,首先我们要判断手机的平台. 1.1,判断手机是否MTK平台 1 ...

  8. android -------- 获取手机设备信息

    最近在开发中,需要用到一些系统信息,总结了一下 /** * Created by zhangqie on 2019/2/26 * Describe: 系统工具类 */ public class Equ ...

  9. Android获取系统cpu信息,内存,版本,电量等信息

    本文转自:http://www.cnblogs.com/brainy/archive/2012/05/30/2526752.html 1.CPU频率,CPU信息:/proc/cpuinfo和/proc ...

随机推荐

  1. Codeforces Round #285 (Div. 1) B - Misha and Permutations Summation 康拓展开+平衡树

    思路:很裸的康拓展开.. 我的平衡树居然跑的比树状数组+二分还慢.. #include<bits/stdc++.h> #define LL long long #define fi fir ...

  2. CodeForces 785C Anton and Fairy Tale

    二分. 如果$n≤m$,显然只能$n$天. 如果$n>m$,至少可以$m$天,剩余还可以支撑多少天,可以二分计算得到,也可以推公式.二分计算的话可能爆$long$ $long$,上了个$Java ...

  3. Spring 常用的注解

    目录 Spring 常用的注解 前言 SpringMVC配置 web配置 @ComponentScan @PropertySource @PropertySources @Value @Control ...

  4. JavaSE1

    <The Pragmatic Programmer><The Mythical Man-month><Clean Code><The Clean Coder& ...

  5. 【SQL】175. Combine Two Tables

    Table: Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId ...

  6. Xcode真机调试初体验

    1. 开发者证书(Certificates) 分为开发(iOS Development)和发布(iOS Distribution)两种,无论是真机调试,还是上传到App Store都需要该证书,是一个 ...

  7. java8新特性——Stream API

    Java8中有两大最为重要得改变,其一时Lambda表达式,另外就是 Stream API了.在前面几篇中简单学习了Lambda表达式得语法,以及函数式接口.本文就来简单学习一下Stream API( ...

  8. Linux下对拍脚本

    使用说明:        1. 被测代码.正确代码.生成器代码均使用文件输入输出: 2. 对拍前会清屏,请注意:        3. 输出文件的文件名请和代码文件名保持一致:        4. 若无 ...

  9. Angular Material Starter App

      介绍 Material Design反映了Google基于Android 5.0 Lollipop操作系统的原生应用UI开发理念,而AngularJS还发起了一个Angular Material ...

  10. HDU 2157 How many ways?? (邻接矩阵快速幂)

    http://acm.hdu.edu.cn/showproblem.php?pid=2157 题意 : 给定一个有向图,问从A点恰好走k步(允许重复经过边)到达B点的方案数mod p的值   从这道题 ...