999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MAC地址的校園簽到與定位軟件設計

2021-11-12 02:17:10宮雨欣蒿特祺
智能計算機與應用 2021年9期
關鍵詞:數據庫用戶功能

宮雨欣,戶 國,蒿特祺,王 易,應 悅

(上海工程技術大學 城市軌道交通學院,上海 201620)

0 引 言

國內大部分高校仍然使用教師課堂點名簽到的方式統計學生課堂出勤信息,該模式會占用正常的教學時間,影響正常的教學進度,存在諸多缺陷。

無線通信技術包括超寬頻(Ultra Wie Band, UBW)、ZigBee技術、射頻識別(Radio Frequency Identification, RFID)、無線寬帶(Wi-Fi)、4G通信技術等[1]。眾多分布于不同位置的路由器所發射出的無線信號是構成無線局域網的首要條件,每個無線信號所在的發射裝置都有一個獨立的設備編號(MAC地址),用戶可以使用自己的設備連接這些無線信號,從而登入互聯網。用戶登錄后,用戶的設備便可以通過JS獲取MAC地址,或通過后臺代碼獲取設備的MAC地址。基于此,只要讓手機根據本地IP獲取周邊路由器的MAC地址,在數據庫中搜索與該路由器相匹配的數據,即可實現定位功能。

隸屬于美國的SkyhookWireless公司首次提出了Wi-Fi定位以及相關技術,通過不斷改善,Wi-Fi定位技術日趨成熟,其原理為:根據Wi-Fi熱點具有的位置不變性的性質,不同的Wi-Fi熱點在通電的情況下,就會向周圍空間發射其所產生的信號,并且此信號具有全球唯一性,并將該信號命名為ID—MAC地址,通過偵控一定范圍內的AP(即Wi-Fi熱點)的MAC地址,將該地址傳送到服務器內,服務器可根據已經儲存在數據庫中的MAC地址,運用相關算法,獲得客戶端具體位置。

本文基于MAC地址探測的相關原理開發校園簽到與定位系統,通過獲取校園內不同地點的MAC地址,實現用戶在校園內的打卡與定位的功能。該軟件的前端開發集成工具是Android Studio 3.0版本,后端數據庫是MySQL數據庫,服務器使用的是阿里云,服務器容器使用的是Tomcat。手機應用程序可以高效的實現校園內的精確定位和打卡功能,具有易操作、易實現,實用性強的特點。

1 系統設計

1.1 系統架構

系統主要由4個模塊構成:數據通信模塊、Wi-Fi探測模塊、后端校驗模塊和返回數據模塊,軟件的整體架構如圖1所示。首先使用Wi-Fi探測模塊,利用終端設備探測周圍的MAC地址;數據通信模塊會借助網絡將探測到的MAC地址傳輸到后臺服務器,并通過Tomcat容器發送請求;后臺校驗模塊會將在MySQL數據庫中尋找到的相應站點的MAC地址與反饋的MAC地址相比對,校驗結果會通過系統的返回數據模塊,若反饋的結果與后臺數據庫中相應站點的MAC地址存在重疊,顯示打卡成功;若不存在重疊,系統則會顯示使用者打卡不成功。

圖1 基于MAC地址的校園簽到與定位軟件整體架構

1.2 系統開發平臺(含開源/第三方工具)

軟件開發可分為前端與后端兩個部分。前端的操作系統為Windows 10操作系統,編譯環境為Android Studio 3.0;搭建后端時,可兼容Windows 10系統與Linux系統,利用IntelliJ ideal(2017.03.05)在麥文(Marven)平臺上進行編譯,最大程度地優化了APP功能并提高其運行效率。本項目使用Tomcat作為儲存容器,租借阿里云服務器并使用Navicat Premium作為后端數據庫,通過xUtils網絡請求來完成前端與后端的數據傳輸。

2 系統主要功能模塊的設計與實現

2.1 數據庫設計

為保證軟件定位和簽到功能的正常運行,要創建數據庫存儲、統計學生的基本信息、校內服務器中相應地點的MAC地址等數據。由于校園范圍過大,軟件開發初期先以特定站點為中心,反復多次探測該范圍內的MAC地址,將所測數據傳入后臺數據庫中[2]。

Android系統開發中有File存儲數據、Shared Preferences存儲數據、Content Provider存儲數據和SQLite數據庫存儲數據4種常見的數據存儲方式。其中,SQLite是一款輕量級數據庫,占用資源低,較于其它數據庫處理速度快,具有獨立性、隔離性、安全性等多種特征,但其并不適用于大數據量的情況[3]。小型的手機應用程序,其定位和簽到功能簡單,僅局限于校園內,數據量較小,師生訪問量不高,且要求讀取速度快,故采用SQLite作為數據庫。關鍵數據結構包括:用戶注冊登錄信息表、用戶簽到信息表、打卡地點MAC地址信息表。其中,用戶注冊登錄信息包含序號、學院、密碼、學生學號、學生姓名,見表1;用戶簽到信息包含序號、創建時間、設備ID、打卡位置、MAC地址、學生學號,見表2;MAC地址信息包含序號、MAC地址、地址名稱、父輩代號、子輩代號,見表3。用Java API編寫數據庫應用程序。

表1 用戶注冊登錄信息表

表2 用戶簽到信息表

表3 打卡地點MAC地址信息表

2.2 MAC地址的確認方法

校園簽到定位系統需要采集校園內不同地點的MAC地址,為降低其它設備(如手機等)對采集的影響,需采用多次測量排異的方法,即在不同時段采集同一地點的數據,確認某一地點的MAC地址時,采取類似“投票表決”的機制,該機制的主要流程如圖2所示。將第一次探測得到的MAC地址匯總成列表A,往后的每一次探測,均先定義一張空列表B,并將探測得到的結果匯總到列表B中,從列表B中不重復地取出一個MAC地址,若該地址未在列表A中,則將該地址添加至列表A中;若該地址已經在列表A中,則該地址可能性加1。如此循環,最后取可能性最大的地址名稱為該地點的MAC地址,將其導入到服務器中。

圖2 “投票表決”機制的流程圖

2.3 定位功能的實現

定位功能使用手機自帶的GPS模塊獲取用戶的實時位置,確定用戶所處的校區并顯示。

Android系統對地理位置的操作進行了封裝,其中 LocationManager 提供了獲取地理位置信息的接口,LocationProvider可以提供各種定位技術,在其中進行指定和設置,讓 LocationManager 利用當前 LocationProvider 來獲得地理位置信息,再依據 Criteria 來設定精度標準。

確定用戶在校園內的準確位置則采取投票機制,依賴于MAC地址信息模塊,取可能性最大的MAC地址名稱上傳至服務器,與數據庫中已存儲的MAC地址進行比對,從而判斷用戶的實時位置,并將結果反饋給手機應用程序。

3 手機應用程序設計

3.1 手機應用程序的結構設計

為了更好的組織手機應用程序的各個模塊,采用分層結構設計,明確每一個層次系統的功能和作用形成一個良好的層次系統,層與層之間是松耦合關系,下層模塊為上層模塊提供服務。

手機應用程序的軟件結構從上到下主要由用戶界面層、用戶功能層、中間件層和操作系統層這4個部分組成,如圖3所示,其中中間件層又分為核心功能層與基礎功能層。

圖3 軟件層次結構圖

在此結構中,下層為上層提供服務接口以供上層調用,但層與層之間隱瞞內部實現,當某一層的實現產生變化時,只要接口不變,就不會影響其它層次的功能實現。層與層之間相互聯系,各層次內的模塊又相互獨立,不同模塊間通過接口調用,盡量滿足高內聚低耦合的原則[4]。

3.2 功能模塊介紹

在分層結構的基礎上,將上述各功能模塊獨立的安置在每一層中,如圖4所示。以Android操作系統為例,中間件層的基礎功能層提供網絡通信、數據儲存、第三方應用等基礎服務。核心功能層提供數據訪問、數據比對、MAC地址偵測、消息推送和定位服務。用戶功能層依賴核心功能層所提供的服務來實現用戶所需要的功能。

圖4 模塊功能

本文為手機應用程序設計了非常豐富的功能,不僅能精確完成日常定位打卡的操作,為日常教學增添了許多的便利之處。

4 結束語

本文設計了一款基于MAC地址的校園簽到與定位系統。采集并確認校園內不同地點的MAC地址數據,并將這些數據錄入到后臺數據庫中;使用時系統將先采集和確認用戶所在地點的MAC地址,并將這一地址傳輸到后臺數據庫進行比對,從而實現在校園內的精準定位。測試表明該系統操作便捷,準確度高、靈活度高、可延展性強,能實現學生在校園內的精準定位和打卡功能,并能幫助教師統計學生的出勤信息。

猜你喜歡
數據庫用戶功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關于非首都功能疏解的幾點思考
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 国产在线一区二区视频| 丝袜亚洲综合| 一区二区欧美日韩高清免费 | 中文字幕在线看视频一区二区三区| 亚洲国产欧洲精品路线久久| 色妞www精品视频一级下载| 呦视频在线一区二区三区| 国产91精选在线观看| 又爽又大又光又色的午夜视频| 国产欧美日韩在线一区| 亚洲第一极品精品无码| 日韩欧美国产精品| 国产一区二区三区日韩精品| 美女一区二区在线观看| 国产九九精品视频| 毛片久久网站小视频| 午夜a级毛片| 国产视频欧美| 精品成人免费自拍视频| 国产黄网永久免费| 亚洲日韩日本中文在线| 中文一区二区视频| 黄色免费在线网址| 国产亚洲精久久久久久无码AV | 国产素人在线| 人人91人人澡人人妻人人爽| 91久久青青草原精品国产| 国产欧美综合在线观看第七页| 色一情一乱一伦一区二区三区小说| a级毛片一区二区免费视频| 国产欧美网站| 亚洲国产日韩视频观看| 中国国产高清免费AV片| 成人在线观看不卡| 污网站在线观看视频| 久久亚洲中文字幕精品一区| 国产www网站| 国产白丝av| 女人爽到高潮免费视频大全| 日本精品中文字幕在线不卡| 免费无码又爽又黄又刺激网站| 99久久精品国产麻豆婷婷| 第一区免费在线观看| 一级毛片免费播放视频| 国产精品视频观看裸模| 免费看av在线网站网址| 99热这里只有精品免费| 免费一级无码在线网站| 国产人成网线在线播放va| 片在线无码观看| 国产剧情一区二区| 免费国产无遮挡又黄又爽| 激情综合婷婷丁香五月尤物| 中文无码精品A∨在线观看不卡| 亚洲精品国产成人7777| 国产无遮挡猛进猛出免费软件| 欧美亚洲一二三区| 欧美精品啪啪| 国产福利免费视频| 毛片免费观看视频| 毛片免费视频| 婷婷色中文网| 国产精品私拍99pans大尺度| 福利视频一区| 欧美日韩在线第一页| 中文国产成人久久精品小说| 欧美一级片在线| 亚洲AV无码乱码在线观看代蜜桃| 欧美三級片黃色三級片黃色1| 国产精品男人的天堂| 日韩福利在线视频| av午夜福利一片免费看| 欧美综合成人| 在线观看免费国产| 亚洲成a人片在线观看88| 永久免费AⅤ无码网站在线观看| 国产成人在线小视频| 国产欧美高清| 日韩精品亚洲精品第一页| 天天综合网色中文字幕| 在线精品视频成人网| 国产又爽又黄无遮挡免费观看 |