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

基于安卓5G信號參數獲取上報的APP設計與實現

2021-03-08 00:24:54俞衛國
計算機技術與發展 2021年2期
關鍵詞:指令界面信號

孫 紅,俞衛國

(1.上海理工大學,上海 200093;2.上海現代光學系統重點實驗室,上海 200093)

0 引 言

隨著計算機網絡技術與通信技術的快速發展,人類已經慢慢步入5G時代,移動設備和計算機網已經成為日常生活中必不可少的工具。在此過程中,出現過大量基于安卓平臺的APP的開發,為人類的便攜生活做出貢獻。5G通信屬于未來計算機通信和移動通信網絡發展的主要方向,具有十分廣闊的發展前景,目前已經受到國內外的高度重視。主要發展表現為萬物互聯,從4G時代發展開始,智能家居行業誕生,但是只停留于初級階段。因此4G技術與真正”萬物互聯”在技術上還存在較大的差距。但是5G到來以后,其極大的流量,符合萬物互聯的發展需求。在未來的發展中,會真正實現”萬物互聯”。5G通信網絡實際是在4G通信網絡基礎上發展而來的,是4G移動通信的進一步的發展與延伸[1]。

5G部署的時間是很漫長的,在部署的過程中,需要設計一款能夠獲取5G信號參數的安卓APP。流程如下:首先需要找一塊部署的場地,建立多個信號基站,信號基站用來發射5G信號[2],測試人員需要獲取這些無線參數并進行分析,從而分析信號的強弱,以及能否進行實際應用。測試人員會布置不同的點,將手機部署在這些點上,手機上安裝應用軟件,用來實際獲取信號參數。

上述說的應用軟件[3],所需要實現的功能如下:

(1)在無人值守的條件下,獲取基站的信號參數。

(2)在無人值守的條件下,每秒可以以數據的形式上報基站的信號參數。

(3)在無人值守的情況下,可以上報手機的狀態,例如:當手機電量不足時,可以上報信息給測試人員。

(4)服務器可以下達一些簡單的指令,比如重啟指令,手機可以進行重啟。

(5)軟件可以以圖表的樣式來顯示各個參數的數值,特別是表格滑動的實現,使測試人員能更加直觀地觀察參數,提高用戶體驗。

(6)需要實現自動登錄,由于布置的點(手機)比較多,電腦下達重啟命令之后,再次進入軟件,需要自動連接,可人性化設計。

1 相關理論與關鍵技術

1.1 獲取基站信號參數的原理

本系統獲取的參數是5G信號參數,手機內部有5G(SIM)卡,當信號傳達手機時,要獲取的參數有IMSI、IP、PCI、RSRP、SINR、CQI等[3],在實際應用中,這幾個參數在3G/4G的時代就可以獲取到,參考SDK里面的SingnalStrength類,查看源碼,發現SingnalStrength類里面有需要的參數,但是SingnalStrength類沒有需要的get方法。可以通過toString()方法將這些參數解析出來。

在實際開發中,使用反射的方式來獲取,核心代碼如下:

Method method2=signalStrength.getClass().getMethod("getLteLevel");

level=method2.invoke(signalStrength);

最終獲取到各個信號參數值。

1.2 信號參數上報原理

首先了解傳輸層兩種協議:TCP協議與UDP協議[4]。

TCP協議是一種可靠傳輸協議,在TCP傳輸數據之前,會用三次握手來建立連接,而且在數據傳遞時,有確認、窗口、重傳、擁塞控制機制,在數據傳輸完之后,會斷開連接來節約資源,缺點是比較慢,耗時,容易被攻擊。

UDP協議是一種不可靠傳輸協議。沒有TCP的握手、確認、窗口、重傳、擁塞控制等機制,UDP是一個無狀態的傳輸協議,所以它在傳遞數據時非常快。

在上報信號的過程中,選用的是UDP協議。因為上報只需要把收據上報過去就行了,程序不用關心服務器有沒有收到,要求數據傳輸快速。鏈路選擇的是內部傳輸網絡而不是5G移動傳輸網絡。也就是選擇WIFI鏈路傳輸。

1.3 Socket套接字編程

要想傳輸數據,假如使用藍牙協議傳輸,就要用到基于Bluetooth協議的Socket,這里使用的是基于TCP協議的Socket[5]。

Socket實際上是一種通信接口,基于不同的協議,有各種Socket,比如基于TCP和UDP協議的Socket,Android中使用是java的Socket模型。應用程序可以通過”套接字”向網絡發送請求或者應答網絡請求,這時把Socket分成了兩部分,一部分是服務器端Socket,這個Socket主要用來接收來自網絡的請求,它一直監聽在某一個端口上。一部分是客戶端Socket,這個Socket向網絡發送請求。

通信流程如下:應用程序通過套接字也就是Socket可以選擇這兩種協議中的一種,可以選擇UDP發送數據,也可以選擇TCP發送數據。數據發送出去通過“通信信道”也就是IP網絡的基礎網絡,來到服務器端(接收端),就可以接收到數據。發送數據的時候用UDP,接收數據的時候也要用UDP,發送數據的時候用TCP協議,接收的時候也要用TCP協議,在發送的時候指定接收端的IP地址和端口號就可以了,而數據包或者數據是如何發送的,框架已經幫我們封裝好了[6]。流程如圖1所示。

圖1 Socket通信流程

1.4 下達指令原理

下達指令首先也要選擇鏈路,這次需要做的是給某個手機下達一些指令,比如重啟,需要的是可靠傳輸鏈路,所以整個過程是建立在TCP鏈路。指令采用的是基于Linux指令,比如重啟:-rebot,因為安卓的底層是基于Linux的,將指令包裝在數據包里面,然后通過程序解析出指令,再通過Java語言進行執行[7]。

1.5 表格滑動原理

Android ViewPager適配器PageAdapter的使用。PageAdapter是一個抽象類,直接繼承于Object,導入包android.support.v4.view.PageAdapter即可使用。要使用PageAdapter首先要繼承PageAdapter類,至少要實現以下方法:getcount(),isViewFromObject(),destroyItem()。然后把設計好的表格進行封裝,放到一個list里面,再進行傳送。

2 系統軟件設計

2.1 界面設計

Android界面布局方式[8],包括框架布局、線性布局、表格布局、網格布局、相對布局和絕對布局。框架布局(FrameLayout)是最簡單的界面布局,是用來存放一個元素的空白空間,而且子元素的位置不能夠指定,只能放在空白空間的左上角,如果有多個子元素,后放置的子元素將遮擋前面放置的子元素,這種布局使用最少。線性布局(Linearyout)是一種重要的界面布局,也是經常使用到的一種界面布局,在現行布局中,所有的子元素都按照垂直或者水平的順序在界面上排列。相對布局(lativeLayout)是一種非常靈活的布局方式,能夠通過指定界面元素與其他元素的相對位置關系,確定界面的相對位置關系,確定界面中所有元素的布局位置。特點是最大程度上保證各種屏幕尺寸的手機正確顯示界面布局。剩下的布局參考文獻[9]。

該文設計的布局系統有個res資源文件,用來存放一些布局文件,布局文件都是以XML文件的形式存放在代碼中。各個組件有著嚴格的層次關系,最后利用Fragement元素來控制布局文件的加載。

2.2 系統程序框架

該文設計的Android無人值守信號參數上報軟件APP可以分為6個大模塊[10],如圖2所示。

圖2 系統模塊

各個模塊應用的場景[11]如下所述:

新用戶第一個安裝APP,打開APP后,會彈出一個詢問窗口是否選擇自動連接還是手動連接,一般都會選擇自動連接。自動連接會保存你上次輸入的IP以及端口,在無人的情況下會自動連接。

開啟后,APP就會通過5G移動鏈路獲取基站的參數信息,無線參數獲取模塊應用在此場景。在軟件實現的代碼中,會有一個定時器,每秒將獲取的參數以JSON格式上傳到數據庫,在執行一段時間后,當手機電量過低時,會上報手機低電量的信息給工作人員。無線參數上報模塊就應用在此。在整個運行過程中,會顯示程序運行狀態,當輸入的IP地址不對時,連不上服務器時,會在顯示框中輸出:”輸入的IP地址格式不對,請輸入正確的IP地址格式”,提醒輸入人員輸入正確的IP格式。程序運行狀態顯示模塊顯示應用在此。

當有需求需要手機重啟時,而每個手機點分布的地方不一樣,工作人員很難去尋找每個手機點,然后去重啟手機,此時指令模塊就可以應用在此情境中。通信鏈路選擇模塊,上傳信號參數鏈路和指令下達的鏈路是不同的鏈路,上傳鏈路選擇的是UDP鏈路[12],實行快速上傳,指令下達鏈路選擇的是TCP鏈路,需要用到點對點端到端安全鏈路。程序流程如圖3所示。

圖3 系統流程

3 系統軟件實現

3.1 信號參數上報模塊的實現

當用戶第一次安裝此軟件時,會出現彈窗,是否自動連接,當用戶選擇自動連接時,進入此頁面,然后輸入HostIp、HostPort、UE ID、ProjectID這四個參數,在XML布局文件中,這些是androidinput Type=“text”,根據屬性來設置輸入框的輸入限制。HostIp是服務器IP地址,port是端口號,這兩個參數需要封裝成UDP數據包,服務器端應用根據這兩個參數來獲取UDP數據包。IEID默認為1.1.1.1,用作以后預留的一個參數,ProjectID也是預留的參數,用作以后其他的項目預留的端口。這些參數都有自己的格式,用戶必須按照規定的格式進行輸入,如圖4所示。界面設置內容如上所述[13]。

圖4 上報模塊界面

數據參數上報后端設計,首先需要判斷網絡連接狀態,默認是移動5G網絡,也就是默認UDP傳輸方式,軟件被打開時就可以直接上報數據至服務器端。第一步:先編寫一個定時器,導入安卓定時器包new timer();設置定時器的時間,以及執行的UDP方法。這里的時間設計為1 s上報一次,上報的過程是單獨開啟一個線程,UDP線程專門用于UDP編程,UDP分為UDP服務器端(UdpClient)和UDP客戶端(UdpReceive),在服務器沒有發送指令時,UDP服務器端處于阻塞狀態,只有UDP客戶端上報指令的功能在運作,在java中,實現UDP編程就是套接字(Socket)編程[14]。核心代碼如下:

DatagramSocket ds=new

DatagramSocket();//拿到套接字對象

byte[] bytes=str.getBytes();//定義一個空間用于接受字符

DatagramPacket dp=new

DatagramPacket(bytes,bytes.length,address,6666);//將數據封裝成數據包,傳遞5個固定參數。

接下來就是解決可能拋出的異常,以及怎么協調好前端的控件顯示。

3.2 信號參數模塊的顯示實現

信號參數顯示模塊的實現是為了更人性化,為了工作人員能夠很方便地看出信號參數強弱。最上面的是RSRP、SINR、DownThrough這三個參數動態的顯示,以折線圖的形態顯示。引入jar包hellocharts.jar,一個開源的jar包庫,用作Android圖表的編程。然后根據jar的源碼,動態編寫折線圖,利用圖片滑動的原理,引入ViewAdapter容器。將編好的折線圖xml文件放入容器中,最終實現滑動效果。如圖5所示,頂部的折線圖顯示的是RSRP和SINR兩個參數的情況。

圖5 顯示模塊

接下來的IMSI、IP、PCI等顯示使用了布局文件中的相對布局,將布局先設置好,再利用SDK里面的SingnalStrength()來獲取相關參數,然后再來設置相應的數值到表格中,人性化地顯示再界面中,如圖5所示。

4 結束語

以搭建Android平臺為開發環境,使用了Android Studio為開發工具,運用計算機通信和計算機應用與技術,實現了5G信號參數獲取上報APP,完成了在無人監聽的情況下,手機端能自動獲取5G信號參數、信號參數自動上報到計算機服務器端、動態顯示參數的任務。后續可以根據使用情況來進行改進,擴展更多的功能,服務于5G通信的部署[15]。

猜你喜歡
指令界面信號
聽我指令:大催眠術
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
人機交互界面發展趨勢研究
基于LabVIEW的力加載信號采集與PID控制
主站蜘蛛池模板: 国产白浆一区二区三区视频在线| 久久一级电影| 亚洲伊人久久精品影院| 伊人久久大香线蕉影院| 欧美亚洲欧美| 欧美黑人欧美精品刺激| 国产成人精品一区二区| 亚洲第一视频网| 亚洲欧美不卡中文字幕| 欧美日韩第三页| 精品亚洲国产成人AV| 亚洲区欧美区| 人妻中文久热无码丝袜| 国产熟女一级毛片| 亚洲精品无码不卡在线播放| 麻豆国产精品| 亚洲美女AV免费一区| 亚洲色欲色欲www网| 国产男人天堂| 久久人搡人人玩人妻精品| 三区在线视频| 国产毛片基地| 国产AV无码专区亚洲精品网站| 在线播放91| 欧美午夜视频在线| 亚洲综合狠狠| 久久婷婷五月综合97色| 熟女成人国产精品视频| 亚洲欧美日韩色图| 日韩亚洲综合在线| 国产美女免费| 亚洲成人在线网| 伊人激情综合网| 日韩A∨精品日韩精品无码| 国产精品大尺度尺度视频| 亚洲不卡av中文在线| 精品無碼一區在線觀看 | 亚洲开心婷婷中文字幕| 国国产a国产片免费麻豆| 亚洲男人的天堂久久精品| 日本www色视频| 国内黄色精品| 午夜性刺激在线观看免费| 伊人无码视屏| 国产成人调教在线视频| 99re热精品视频国产免费| 日韩精品成人在线| 亚洲中文字幕av无码区| 99精品国产电影| 亚洲天堂视频网站| 国产精品短篇二区| 欧美国产在线看| 国产精品浪潮Av| 激情亚洲天堂| 亚洲精品麻豆| 欧美在线伊人| 精品久久777| 国产在线一二三区| 天天综合色网| 亚洲免费播放| 啪啪免费视频一区二区| 亚洲欧美自拍中文| 国产在线视频福利资源站| 欧美激情成人网| 激情综合婷婷丁香五月尤物| 黄色在线不卡| 亚洲无码不卡网| 婷五月综合| 亚洲区第一页| 久久国产精品嫖妓| 精品国产Av电影无码久久久| 中文字幕av无码不卡免费| 一级成人a毛片免费播放| 欧美在线天堂| 国产精品自在自线免费观看| 日韩亚洲综合在线| 国产成人亚洲无码淙合青草| 天天做天天爱天天爽综合区| 日韩天堂视频| 天堂网亚洲系列亚洲系列| 99色亚洲国产精品11p| 国产制服丝袜91在线|