■文/江翠元
隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的應(yīng)用和發(fā)展,手機(jī)已經(jīng)成為人們吃、住、行、 游、購(gòu)、娛的重要工具。本文主要是研究一款基于Android的寶寶成長(zhǎng)記錄App。該應(yīng)用可以記錄寶寶的身高體重等基本信息;登記接種疫苗信息,并提醒用戶下次的接種時(shí)間;可以拍照并上傳照片至服務(wù)器。
Android是由Google公司開發(fā)的一種基于Linux內(nèi)核的操作系統(tǒng),主要應(yīng)用于智能手機(jī)和平板電腦等移動(dòng)設(shè)備,是目前主流的手機(jī)操作系統(tǒng)之一。由于Android是用Java語言開發(fā)的,因此首先要配置Java的開發(fā)環(huán)境,即首先要安裝配置JDK(Java Development Kit)。而AndroidStudio是近年來Google公司主推的開發(fā)工具,所以本系統(tǒng)采用AndroidStudio進(jìn)行開發(fā),通過Android模擬器進(jìn)行效果展示。該系統(tǒng)的主要功能就是選取照片并發(fā)布照片。系統(tǒng)照片的選取可以從兩個(gè)方面考慮,一是調(diào)用系統(tǒng)的攝像頭拍照,二是從相冊(cè)里面選取已經(jīng)存在的照片。那么關(guān)鍵技術(shù)點(diǎn)就顯而易見了,本文的關(guān)鍵技術(shù)點(diǎn)有三個(gè):一是如何調(diào)用系統(tǒng)攝像頭拍照,二是如何調(diào)用相冊(cè)中的照片,三是通過ActiveAndroid將發(fā)布的照片保存到數(shù)據(jù)庫(kù)中,以便瀏覽和查詢歷史數(shù)據(jù)。由于Android的屏幕尺寸、分辨率種類繁多,因此,程序的實(shí)現(xiàn)過程中盡量利用“png”的圖片格式,它可以在特定的區(qū)域內(nèi)進(jìn)行拉伸而不易失真,這樣會(huì)讓我們的界面更加細(xì)膩。
現(xiàn)在父母更加注重兒童教育,家長(zhǎng)們更加愿意通過一些方便、安全的應(yīng)用來記錄孩子成長(zhǎng)。該系統(tǒng)可以記錄孩子成長(zhǎng)中的故事,記錄孩子每個(gè)瞬間美好的照片,系統(tǒng)支持拍照和選取本地照片的功能,能夠自動(dòng)生成照片樹。移動(dòng)App的開發(fā)使得系統(tǒng)更加便捷,軟件的實(shí)用性使得用戶更加喜愛這款軟件。系統(tǒng)整體的用例圖如下:
圖1 系統(tǒng)整體用例圖
功能需求分析是從軟件功能實(shí)現(xiàn)的角度對(duì)寶寶成長(zhǎng)記錄系統(tǒng)進(jìn)行劃分,把系統(tǒng)劃分為相對(duì)獨(dú)立但又相互關(guān)聯(lián)的功能子系統(tǒng)。這款系統(tǒng)的功能包括:拍照,上傳本地照片,記錄寶寶身高體重并生成成長(zhǎng)曲線,查看疫苗接種的種類和時(shí)間并且記錄,可以在優(yōu)選商城里面選擇適合自己寶寶的產(chǎn)品,發(fā)布寶寶的動(dòng)態(tài)。
做任何軟件系統(tǒng)都要先明確系統(tǒng)的邏輯模型,邏輯模型的建立可以分以下四步來走:第一步,建立系統(tǒng)的整體功能結(jié)構(gòu)圖;第二步,按照每個(gè)模塊的功能對(duì)整體模塊進(jìn)行劃分,清楚每個(gè)模塊的接口,對(duì)模塊間的層次和調(diào)度建立連接;第三步,建立數(shù)據(jù)庫(kù);第四步,通過和用戶的溝通來確定最終的界面原型。
系統(tǒng)采用TabHost+Fragment框架進(jìn)行搭建,底部導(dǎo)航欄的五個(gè)Tab分別是優(yōu)選、時(shí)光軸、百科、疫苗接種,我的。優(yōu)選模塊采用列表的形式向用戶展示商品,用戶可以點(diǎn)擊選中的商品加入購(gòu)物車,通常情況下優(yōu)選模塊的商品是母嬰對(duì)應(yīng)的商品。時(shí)光軸是用來發(fā)表狀態(tài)和圖片的,采用列表樹的形式實(shí)現(xiàn),通過BaseAdapter構(gòu)建適配器,將獲取的圖片放入Adapter中,每個(gè)動(dòng)態(tài)都可點(diǎn)進(jìn)去查看大圖和留言。百科模塊是給用戶科普一些嬰幼兒成長(zhǎng)相關(guān)的知識(shí),該模塊也是以列表形式展示的,每個(gè)項(xiàng)目都可點(diǎn)擊進(jìn)入查看具體的內(nèi)容。疫苗接種模塊采用列表的形式來展示寶寶所需接種的所有疫苗,寶媽可以點(diǎn)擊每個(gè)疫苗后面的開關(guān)按鈕,來標(biāo)記該疫苗是否已經(jīng)接種完成。我的模塊是用來展示個(gè)人中心的內(nèi)容,如用戶名、用戶頭像、收藏的內(nèi)容、設(shè)置、意見反饋以及版本的更新問題。
系統(tǒng)開發(fā)完成后,對(duì)所開發(fā)的功能進(jìn)行了全面的系統(tǒng)測(cè)試工作。經(jīng)過測(cè)試該系統(tǒng)達(dá)到了系統(tǒng)設(shè)計(jì)的最終目標(biāo),基本可以滿足用戶需求,功能運(yùn)行良好,界面可操作性較強(qiáng)。
本文以寶寶成長(zhǎng)App為范例,闡述了軟件的整個(gè)開發(fā)過程。該App能夠滿足用戶的基本需求。通過調(diào)用系統(tǒng)攝像頭來實(shí)現(xiàn)拍照功能,通過調(diào)用系統(tǒng)的相冊(cè)實(shí)現(xiàn)了照片的選取。