• 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

  • 相关阅读:
    hdu 3335 Divisibility
    最小点覆盖,最小路径覆盖
    hdu 4109 Instrction Arrangement
    sjtu 1077 加分二叉树
    hdu 1542 Atlantis
    多线程中互斥体
    在子页面中,javascript让模板页中添加的用户控件中的控件选中focus
    模板页中用javascript判断是否为空
    控件包含代码块(即 <% ... %>),因此无法修改控件集合 asp.net
    lambda从指定集合中去除指定数据 asp.net
  • 原文地址:https://www.cnblogs.com/happyhacking/p/5264162.html
Copyright © 2020-2023  润新知