王蕾
摘要:傳統(tǒng)的農(nóng)業(yè)信息化采集方式占用大量的人力與時(shí)間成本,它已不能滿足日益增長(zhǎng)的數(shù)據(jù)實(shí)時(shí)采集需求。隨著智能手機(jī)的普及和優(yōu)勢(shì),提供了實(shí)時(shí)、高效、準(zhǔn)確的信息輸入手段,基于Android系統(tǒng)設(shè)計(jì)開發(fā)特色種植管理手持客戶端有助于農(nóng)業(yè)信息的采集,并且具備了取代傳統(tǒng)PC端輸入的能力。
關(guān)鍵詞:種植管理;Android;溯源
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)29-0097-03
1 背景
我國(guó)“十三五”規(guī)劃明確指出應(yīng)加快推進(jìn)農(nóng)業(yè)信息化,以科技創(chuàng)新為手段,發(fā)展智慧農(nóng)業(yè);走資源節(jié)約、環(huán)境友好、產(chǎn)品安全、產(chǎn)出高效的農(nóng)業(yè)現(xiàn)代化道路。當(dāng)前,在移動(dòng)互聯(lián)網(wǎng)技術(shù)高速發(fā)展的趨勢(shì)下,智能手機(jī)得到了更廣泛的應(yīng)用,信息化通信技術(shù)與農(nóng)產(chǎn)品種植業(yè)的結(jié)合也成了可能。
智能手機(jī)具有信息的實(shí)時(shí)性,快速便捷地獲取信息,使信息獲取方式更加的多樣化,所以在很多行業(yè)中都得到了廣泛的使用。Android與iOS作為智能手機(jī)的操作系統(tǒng),幾乎霸占了智能終端的所有市場(chǎng),兩者的功能和用途相差無(wú)幾。但是iOS只適用于固定品牌產(chǎn)品,而Android系統(tǒng)則適用于除此以外的幾乎所有智能終端,適應(yīng)性更廣[1]。
傳統(tǒng)農(nóng)業(yè)生產(chǎn)數(shù)據(jù)的采集多依靠手動(dòng)輸入或依靠經(jīng)驗(yàn)來(lái)判斷農(nóng)作物的生長(zhǎng)環(huán)境信息并控制設(shè)備,人為因素干擾比較大,在準(zhǔn)確性、及時(shí)性、有效性和全面性方面都較差。將An-droid智能手機(jī)與農(nóng)業(yè)信息相結(jié)合,利用智能手機(jī)的便攜性好、易用性高、普及性強(qiáng)和相對(duì)低廉的價(jià)格、現(xiàn)場(chǎng)處理能力更強(qiáng)等特點(diǎn),使得農(nóng)業(yè)生產(chǎn)者和農(nóng)業(yè)科技人員都受益,更能降低農(nóng)業(yè)成本,拉近智能農(nóng)業(yè)與實(shí)際生產(chǎn)中的距離。特色種植管理客戶端就是結(jié)合Android的優(yōu)點(diǎn),能夠隨時(shí)隨地了解并記錄農(nóng)事活動(dòng)的進(jìn)展情況以及農(nóng)作物的生長(zhǎng)狀況。除此之外,本系統(tǒng)與視頻監(jiān)控設(shè)備和傳感器設(shè)備相結(jié)合,能夠更準(zhǔn)確地獲取成長(zhǎng)環(huán)境信息。同時(shí)也為普通消費(fèi)者提供了溯源農(nóng)產(chǎn)品信息的渠道,通過(guò)手機(jī)App方式,通過(guò)掃描產(chǎn)品條形碼即時(shí)獲知購(gòu)買產(chǎn)品的來(lái)源和質(zhì)量信息,使得農(nóng)業(yè)生產(chǎn)透明化,讓消費(fèi)者與種植現(xiàn)場(chǎng)零距離接觸[2-3]。
2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
種植手持客戶端主要功能有種植記錄管理、專家咨詢管理、知識(shí)百科管理、溯源管理和用戶信息管理等幾個(gè)模塊。如下圖1為特殊種植手持客戶端的系統(tǒng)結(jié)構(gòu)圖。
2.1 種植記錄管理
種植管理終端初次登錄頁(yè)面前需設(shè)置服務(wù)器鏈接地址,使終端能連接上服務(wù)器。配置好后使用用戶名和密碼進(jìn)行登錄,登錄后顯示首頁(yè)頁(yè)面,根據(jù)區(qū)域劃分,顯示根據(jù)該品種在區(qū)域中的生長(zhǎng)環(huán)境和生長(zhǎng)周期時(shí)間;種植記錄管理能夠顯示區(qū)域中的信息詳情,其中的施肥方案能夠查看專家的建議和所需要的營(yíng)養(yǎng),病蟲害防治則是提醒種植戶需要注意的蟲害和對(duì)應(yīng)的詳情[4]。種植記錄中還包括視頻控制、設(shè)備控制、農(nóng)事活動(dòng)和采收記錄4個(gè)模塊。
1)視頻控制顯示該品種所在區(qū)域的所有視頻,并可以通過(guò)控制視頻界面上的按鈕來(lái)變換攝像頭的方向。
2)設(shè)備控制顯示該品種所擁有的設(shè)備,進(jìn)而對(duì)設(shè)備進(jìn)行操作。
3)農(nóng)事活動(dòng)是記錄農(nóng)場(chǎng)具體操作信息,如操作時(shí)間、操作人、生產(chǎn)活動(dòng)、現(xiàn)場(chǎng)圖片、投人品信息等,通過(guò)查詢操作工序名稱可以查看該工序的詳情信息。
4)采收記錄能夠記錄并顯示種植品種采收信息,如采收時(shí)間、采收量、采收人、采收面積等。
2.2 專家咨詢
該模塊用于種植企業(yè)就種植方面的問(wèn)題與相關(guān)專家進(jìn)行交流的頁(yè)面,對(duì)于不同品種發(fā)布的問(wèn)題按種植區(qū)域來(lái)進(jìn)行劃分選擇。同時(shí)上傳圖片,以便專家能夠更直觀地判斷問(wèn)題產(chǎn)生的原因。
2.3 知識(shí)百科
針對(duì)種植業(yè)上的資料,可根據(jù)所要的資料關(guān)鍵字查詢信息,能夠查看到更詳細(xì)的種植知識(shí)。
2.4 溯源管理
根據(jù)添加溯源碼或掃描商品上的二維碼標(biāo)簽來(lái)查詢商品信息,可以查詢到產(chǎn)品信息、食用方法、種植檔案、基地信息以及產(chǎn)品的聯(lián)系方式。產(chǎn)品信息包括產(chǎn)品名稱、特色、采收時(shí)間、產(chǎn)地等信息;食用方法包括該商品的正確食用方法和該商品的功效、作用等;種植檔案包括該商品對(duì)應(yīng)的種植檔案中農(nóng)事活動(dòng)的過(guò)程信息,比如育苗、播種、除草、施肥等農(nóng)事信息。
2.5 用戶信息管理
可以查看用戶的基礎(chǔ)信息、查看和修改用戶密碼等。
3 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
Android移動(dòng)終端平臺(tái),包括平臺(tái)系統(tǒng)結(jié)構(gòu)、平臺(tái)應(yīng)用開發(fā)的技術(shù)特點(diǎn)、開發(fā)環(huán)境的搭建及開發(fā)工具等。移動(dòng)設(shè)備平臺(tái)可以分為用戶交互界面、中間控件、應(yīng)用程序和操作系統(tǒng)等,并可以應(yīng)用在多種移動(dòng)終端設(shè)備上。
在開發(fā)過(guò)程中根據(jù)本系統(tǒng)的功能和Android架構(gòu)的特點(diǎn),可以分為四個(gè)層次。
3.1 頁(yè)面展示層(XML層)
Android應(yīng)用程序基本包括四個(gè)核心組件:Activitv、Broad-cast Receiver、Service和Content Provider,并且以不同的XML標(biāo)簽存儲(chǔ)在文件中。
AndroidManifest.xml文件是程序中最基本的配置文件,它用來(lái)描述各個(gè)核心組件及實(shí)現(xiàn),它用Android:name來(lái)聲明每個(gè)Activity,并使用uses-perrmssion申請(qǐng)要使用的用戶資源。在開發(fā)中過(guò)程,res文件夾下包含color文件、drawable文件、layout文件、mipmap文件和values文件,每個(gè)文件下都包含對(duì)應(yīng)的xml文件配置不同的頁(yè)面屬性,其中l(wèi)ayout文件下的.xml文件對(duì)各個(gè)模塊進(jìn)行設(shè)計(jì)、控件的布局和屬性設(shè)置,還可以來(lái)自定義一些控件的樣式。values文件包含顏色、字符串和文字信息。mipmap文件與drawable文件用法類似,drawable文件讀取和保存圖像文件,而mipmap文件是存放可視化圖片渲染算法文件,原生圖片放在mipmap中,而drawable主要存放自定義形狀和按鈕變色類的xml。把圖片放到mipmaps可以提高系統(tǒng)渲染圖片的速度,提高圖片質(zhì)量,減少GPU壓力[5-6]。圖2為layout文件夾下種植管理系統(tǒng)各個(gè)模塊的頁(yè)面配置文件。
3.2 人機(jī)交互層(View層)
它包括系統(tǒng)所需的全部Activity組件。用戶可以輸入數(shù)據(jù)并且選中數(shù)據(jù)項(xiàng)以得到相應(yīng)的反饋。Activity是應(yīng)用程序與用戶交互的窗口。一個(gè)Android程序可以有多個(gè)Activity,包含多個(gè)且不同層次的用戶界面[7]。每個(gè)Activity的生命周期如圖3所示。
在wew層中每一個(gè)Activity對(duì)應(yīng)一個(gè)類。它的實(shí)現(xiàn)方式為:1)給界面設(shè)置控件;2)設(shè)置Activity所對(duì)應(yīng)的XML;3)將Ac-tivity中的控件與XML中所對(duì)應(yīng)的控件進(jìn)行綁定;4)對(duì)每個(gè)控件的動(dòng)作設(shè)置:本系統(tǒng)一共設(shè)計(jì)了23個(gè)Activity。圖4為種植管理系統(tǒng)的部分Activity。
3.3 數(shù)據(jù)庫(kù)及適配器(Data層與Adapter層)
首先需要建立一個(gè)數(shù)據(jù)庫(kù),即種植信息數(shù)據(jù)庫(kù),這一層就是建立數(shù)據(jù)庫(kù)并且更新各類操作的方法。數(shù)據(jù)庫(kù)中的每張表對(duì)應(yīng)一個(gè)適配器(Adapter),給他們映射相應(yīng)的Java類。Adapter的設(shè)計(jì)步驟如下:
1)給表建立一個(gè)適配器類。該類中含有數(shù)據(jù)的編號(hào)和數(shù)據(jù)錄入的時(shí)間;
2)表中有一個(gè)公有類的構(gòu)造函數(shù);
3)建立需要實(shí)現(xiàn)的基類方法getltem0,getltemld0,getCount(),獲取適配器的編號(hào)及其內(nèi)容;
4)為了將對(duì)應(yīng)的數(shù)據(jù)以表格的形式顯示在界面中,需要實(shí)現(xiàn)一個(gè)基類方法get View0。
3.4 數(shù)據(jù)表層
在本系統(tǒng)中把需要的數(shù)據(jù)表中的字段名稱以及類型保存在實(shí)體層中,Table層的變化不會(huì)引起其他層的變化,適用于分層開發(fā)。本系統(tǒng)的體系結(jié)構(gòu)圖如圖5所示。
3.5 種植記錄管理的實(shí)現(xiàn)
本系統(tǒng)分為五個(gè)子模塊,這里以種植記錄管理模塊為例來(lái)介紹本系統(tǒng)的具體實(shí)現(xiàn)。根據(jù)系統(tǒng)體系結(jié)構(gòu)圖,采用由下往上的方式來(lái)實(shí)現(xiàn)種植記錄管理。
1)建立數(shù)據(jù)表類:PlantList。該類包含種植記錄中的全部字段,如區(qū)域編碼、種植時(shí)間、生長(zhǎng)模型、生產(chǎn)模型、種植時(shí)間、基地信息、農(nóng)事活動(dòng)信息等,
2)建立種植記錄適配器:plantAdapter。適配器的實(shí)現(xiàn)主要是要建立他的基類方法getView0。
3)創(chuàng)建Activity類:PlantingRecordActivity。首先要設(shè)置與XML關(guān)聯(lián)的接口View.OnClickListener,并定義各個(gè)控件,第二使用getPlantRecord0獲取種植記錄數(shù)據(jù),第三設(shè)置每個(gè)控件的動(dòng)作事件onClick。
4)建立與之對(duì)應(yīng)的activity_planting_record.xml文件。對(duì)頁(yè)面的各個(gè)控件進(jìn)行配置。
4 運(yùn)行結(jié)果及分析
通過(guò)種植記錄管理模塊的4層實(shí)現(xiàn)方式得到了它的展示頁(yè)面如圖6所示,農(nóng)戶可以通過(guò)這2個(gè)界面將種植過(guò)程中的數(shù)據(jù)傳人系統(tǒng)中。
5 結(jié)束語(yǔ)
本論文根據(jù)農(nóng)業(yè)信息化的實(shí)際需求,采用Android應(yīng)用開發(fā)技術(shù),完成了特色種植信息化管理手持客戶端的需求分析、設(shè)計(jì)及實(shí)現(xiàn),生成了基于Android的特色種植管理手持客戶端的設(shè)計(jì)與實(shí)現(xiàn)。運(yùn)用基于Android的應(yīng)用程序軟件開發(fā),為農(nóng)業(yè)信息化提供了一種經(jīng)濟(jì)實(shí)用的解決方案,它開發(fā)方便,成本低廉,且因?yàn)橐苿?dòng)智能手機(jī)和平板設(shè)備的普遍使用,使得該軟件易于推廣。而且因?yàn)樵撓到y(tǒng)實(shí)現(xiàn)了對(duì)農(nóng)產(chǎn)品的溯源,對(duì)食品安全的監(jiān)督和防范起到一定的作用。
參考文獻(xiàn):
[1]馬志欣,譚峰,侯召龍,等,基于Android的農(nóng)業(yè)生產(chǎn)遠(yuǎn)程監(jiān)控系統(tǒng)[J].農(nóng)機(jī)化研究,2015,37(3):226-229.
[2]易翔,基于Android的室內(nèi)監(jiān)控系統(tǒng)的研究與實(shí)現(xiàn)[D].南京:南京郵電大學(xué),2015.
[3]高浩天,朱森林,常歌,等.基于農(nóng)業(yè)物聯(lián)網(wǎng)的智能溫室系統(tǒng)架構(gòu)與實(shí)現(xiàn)[J].農(nóng)機(jī)化研究,2018,40(1):183-188.
[4]馬福東,章牧.基于模塊化智能溫室系統(tǒng)的設(shè)計(jì)[J].貴州農(nóng)業(yè)科學(xué),2018,46(5):147-150.
[5]馮海平.現(xiàn)代化新技術(shù)在農(nóng)業(yè)種植生產(chǎn)中的應(yīng)用[JJ.種子科技,201 8,36(3):7.
[6]郭奇青,李偉.基于Android手機(jī)的智能導(dǎo)游系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)與現(xiàn)代化,2017(9):111-113,119.
[7]劉程,譚曉陽(yáng),一種基于深度學(xué)習(xí)的移動(dòng)端人臉驗(yàn)證系統(tǒng)[J].計(jì)算機(jī)與現(xiàn)代化,2018(2):107-111,117.
【通聯(lián)編輯:謝媛媛】