wifi强度数据采集器(android)

来源:毕业设计

关键词:wifi数据的采集 SQLite数据库的使用

需求

采集实验室内各坐标处各wifi信号的强度

UI

因为是辅助工具,所以UI写的很简单,如下图

Wifi相关操作

   //获取WifiManager实例
   mWifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
   
   //打开Wifi
   if(!mWifiManager.isWifiEnabled()) {
        mWifiManager.setWifiEnabled(true);
   }

   //ScanResult : 扫描到的wifi热点的数据集实体类. 
   List<ScanResult> scanResults = mWifiManager.getScanResults();

实体类

需要采集的数据分别是wifi的mac地址(BSSID),强度(level),名称(SSID),故实体类实现如下:

public class APData {

    private String macAddr;
    private int level;
    private String name;

    public APData(String macAddr, int level, String name) {
        this.macAddr = macAddr;
        this.level = level;
        this.name = name;
    }

    public String getMacAddr() {
        return macAddr;
    }

    public void setMacAddr(String macAddr) {
        this.macAddr = macAddr;
    }

    public int getLevel() {
        return level;
    }

    public void setLevel(int level) {
        this.level = level;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

数据库

因为很久没有使用SQLite数据库了,所以在这里也记录一下...

public class MyDatabaseHelper extends SQLiteOpenHelper{
    
    //建表语句
    public static final String CREATE_TABLE = "create table apdata(" +
            "id integer primary key autoincrement, " +
            "ap_x integer, " +
            "ap_y integer, " +
            "ap_macaddr text, " +
            "ap_level1 integer," +
            "ap_level2 integer," +
            "ap_level3 integer," +
            "ap_name text)";
    private Context mContext;
    public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        mContext = context;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(CREATE_TABLE);
        Toast.makeText(mContext, "Create table succeeded", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }
}

github地址: https://github.com/zhangbz/APDataCollector

原文地址:https://www.cnblogs.com/happyhacking/p/5264162.html