Android - 简单的无线网络分析APP

来源:互联网 发布:网络病毒营销企业 编辑:程序博客网 时间:2024/06/06 01:20

前言

整理网盘发现14年的毕设,在交毕设前勉强能“跑起来”,还是会崩,mark一下实现过程!

编码实现

无线网络扫描模块

通过使用WifiManager.getScanResults()方法返回一个ScanResult列表,其中列表包含以要用到的几个属性:

  • BSSID 无线MAC地址
  • SSID 无线接入点名称
  • Capabilities 描述认证、支持认证等
  • Frequency 无线信号的频率(MHz)
  • Level 无线信号强度,负整数,越小信号越弱

在AndroidManifest.xml文件中加入:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

AChartEngine图表引擎

AchartEngine绘图主要需要以下2个条件:

  1. 图表(包括线条)样式
  2. 数据点集合

全局变量

继承Android的Application来实现保存全局变量,用来处理和保存收集的WIFI信息

APP UI

菜单切换

记得那时Android还不流行动态缩放这个切换方式,^_^

这里写图片描述

原理图如上,效果图如下

这里写图片描述

频谱实时效果图

这里写图片描述

信号强度实时效果图

这里写图片描述

信号列表实时效果图

这里写图片描述

设置界面

参考

  • Android控件源码分析–AndroidResideMenu菜单 http://www.cnblogs.com/avenwu/p/3482199.html
  • AchartEngine开发文档: http://www.achartengine.org/content/javadoc/index.html
  • Adroid开发文档—WIFI模块:http://developer.android.com/reference/android/net/wifi/ScanResult.html
  • 信道与无线频率(MHz):http://zh.wikipedia.org/wiki/WLAN%E4%BF%A1%E9%81%93%E5%88%97%E8%A1%A8
0 0
原创粉丝点击