zoukankan      html  css  js  c++  java
  • android获取周围AP信息(上)

    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 }
    复制代码
  • 相关阅读:
    wm_syscommand
    VC中的#pragma指令的用法
    C语言|博客作业03
    C语言|博客作业09
    C语言|博客作业07
    C语言|博客作业05
    C语言|博客作业02
    C语言|博客作业08
    C语言|博客作业06
    C语言|博客作业04
  • 原文地址:https://www.cnblogs.com/wanghuaijun/p/7776513.html
Copyright © 2011-2022 走看看