蘭州職業(yè)技術(shù)學(xué)院 毛敬玉
引言:隨著網(wǎng)絡(luò)的進(jìn)一步發(fā)展,智能手機(jī)已經(jīng)成為現(xiàn)今社會(huì)信息交流的重要載體,手機(jī)上的應(yīng)用APP開(kāi)發(fā)也就成為現(xiàn)在移動(dòng)應(yīng)用開(kāi)發(fā)的重要組成部分。
隨著網(wǎng)絡(luò)的進(jìn)一步發(fā)展,智能手機(jī)已經(jīng)成為現(xiàn)今社會(huì)信息交流的重要載體,手機(jī)上的應(yīng)用APP開(kāi)發(fā)也就成為現(xiàn)在移動(dòng)應(yīng)用開(kāi)發(fā)的重要組成部分。
過(guò)去APP主要是依靠外來(lái)移植,現(xiàn)如今我國(guó)的APP應(yīng)用開(kāi)發(fā)已經(jīng)有了很大的發(fā)展,那么原生安卓技術(shù)開(kāi)發(fā)就成了當(dāng)下一種比較流行的開(kāi)發(fā)趨勢(shì)。
在本文,我要給大家介紹一下基于原生安卓系統(tǒng)開(kāi)發(fā)的項(xiàng)目審批管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程。
這個(gè)系統(tǒng)主要用到的技術(shù)支持為:前端采用的原生安卓APP,后臺(tái)使用的是Thinkphp,數(shù)據(jù)庫(kù)采用的是Mysql。
何為原生安卓系統(tǒng)?是指Goole公司發(fā)布的、沒(méi)有經(jīng)過(guò)第三方修改的安卓系統(tǒng),原生安卓APP就是在該系統(tǒng)上所進(jìn)行的應(yīng)用開(kāi)發(fā)。
原生安卓系統(tǒng)才是最正宗Android系統(tǒng),其設(shè)計(jì)簡(jiǎn)潔,而且其應(yīng)用也都是統(tǒng)一風(fēng)格的,除了谷歌服務(wù)外,Android系統(tǒng)不包括任何其他服務(wù),基礎(chǔ)功能設(shè)計(jì)非常簡(jiǎn)單。
Thinkphp是一個(gè)開(kāi)源的PHP框架,是為了簡(jiǎn)化企業(yè)級(jí)應(yīng)用開(kāi)發(fā)和敏捷Web應(yīng)用開(kāi)發(fā)而誕生的,作為一個(gè)整體開(kāi)發(fā)方案,Thinkphp能夠解決應(yīng)用開(kāi)發(fā)中大多數(shù)需求,因?yàn)槠浔旧戆说讓蛹軜?gòu)、兼容處理基類(lèi)庫(kù)等常用的組件,并且對(duì)于跨版本、跨平臺(tái)和跨數(shù)據(jù)庫(kù)的移植都比較方便。
之所以選用Mysql作為數(shù)據(jù)庫(kù)支持,主要考慮其體積小、速度快、開(kāi)放源碼這些特點(diǎn),大大降低了開(kāi)發(fā)的成本。
這個(gè)系統(tǒng)主要根據(jù)客戶(hù)的開(kāi)發(fā)要求,包括以下幾個(gè)模塊:
1.用戶(hù)管理:包括平臺(tái)用戶(hù)添加、刪除、編輯以及登錄日志查看等功能。
2.數(shù)據(jù)管理:包括平臺(tái)所有數(shù)據(jù)的查看、統(tǒng)計(jì)和備份等功能。
3.項(xiàng)目管理:包括項(xiàng)目審批、項(xiàng)目添加、項(xiàng)目刪除及自定義項(xiàng)目管理流程功能。
4.審批管理:自定義審批管理流程功能。
5.客戶(hù)管理:包括建立客戶(hù)公海池功能,是一套完整的CRM(客戶(hù)關(guān)系管理)系統(tǒng)。
6.系統(tǒng)管理:包括站點(diǎn)開(kāi)關(guān)管理,數(shù)據(jù)備份/恢復(fù)管理,平臺(tái)環(huán)境檢測(cè)服務(wù)及平臺(tái)升級(jí)服務(wù)功能。
系統(tǒng)運(yùn)行的環(huán)境需求如下圖1所示:
圖1 系統(tǒng)運(yùn)行的環(huán)境需求
數(shù)據(jù)庫(kù)是整個(gè)系統(tǒng)運(yùn)行的數(shù)據(jù)支撐,所以建立一個(gè)合理的數(shù)據(jù)庫(kù)是非常有必要的。在開(kāi)發(fā)過(guò)程中考慮到后期數(shù)據(jù)庫(kù)的安全性,雖然在Mysql中做了約定,但是沒(méi)有在數(shù)據(jù)庫(kù)中直接寫(xiě)明,而是通過(guò)Thinkphp框架的數(shù)據(jù)函數(shù)直接來(lái)調(diào)用,把處理數(shù)據(jù)邏輯的全部放到了項(xiàng)目MAC(Model View Controller,模型—視圖—控制器)里面的Model中,交給Model去處理,這樣對(duì)于數(shù)據(jù)庫(kù)的壓力小,安全性相對(duì)也比較高。
圖2 數(shù)據(jù)庫(kù) 概略圖
下面我例舉一部分的界面和代碼,大家可以看到設(shè)計(jì)完成以后的系統(tǒng)的部分內(nèi)容。
圖3
系統(tǒng)登錄界面源碼及運(yùn)行效果如圖3所示:
審批界面如圖4所示,其具體展開(kāi)后界面如圖5,圖6,圖7所示:
圖4 審批界面
圖5 方案信息
圖6 項(xiàng)目信息
圖7 材料信息
獲取經(jīng)緯度的代碼如下:
由于篇幅的問(wèn)題,其他的代碼我就在這里不再一一展示了。
基于原生安卓系統(tǒng)開(kāi)發(fā)的項(xiàng)目審批管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)到這里也就基本上介紹完了,在整個(gè)設(shè)計(jì)實(shí)施過(guò)程中,我主要考慮開(kāi)發(fā)成本的問(wèn)題較多,所以采用的技術(shù)基本上都是開(kāi)源的,并且不會(huì)耗費(fèi)大量的硬件資源,非常適合手機(jī)APP的開(kāi)發(fā)。
總之,基于原生安卓系統(tǒng)開(kāi)發(fā)會(huì)越來(lái)越成為安卓系統(tǒng)APP開(kāi)發(fā)的主流技術(shù),在今后的發(fā)展中會(huì)有更長(zhǎng)遠(yuǎn)更廣闊的應(yīng)用前景!