王智印
摘要:隨著網(wǎng)絡(luò)時代的到來,農(nóng)村的信息化問題日益引起人們的關(guān)注。目前,在農(nóng)村信息化過程中,手機(jī)作為無線通訊工具在農(nóng)村得到普及。手機(jī)不僅是農(nóng)村網(wǎng)民最主要的網(wǎng)購終端,也是他們最主要的上網(wǎng)終端。移動互聯(lián)網(wǎng)的爆發(fā)除了讓很多PC網(wǎng)民加快了移動化的過程,也讓很多尚未觸網(wǎng)的農(nóng)村人直接成為了移動互聯(lián)網(wǎng)用戶。
本應(yīng)用程序發(fā)揮共享經(jīng)濟(jì)優(yōu)勢利用APP平臺提出解決農(nóng)村物流最后一公里問題方案,兼顧農(nóng)村各項(xiàng)資源的開發(fā)、加工,增加農(nóng)村資源附加值,在商品流、資金流、信息流層面助推農(nóng)村物流體系的完善。
關(guān)鍵詞:安卓應(yīng)用程序設(shè)計;Material Design;農(nóng)村信息平臺;農(nóng)村發(fā)展
一、緒論
(一)開發(fā)背景
隨著智能手機(jī),平板電腦等移動設(shè)備的不斷普及,人們工作、生活、學(xué)習(xí)的各個角落離不開移動設(shè)備。隨著移動設(shè)備及相關(guān)軟件的不斷發(fā)展,手機(jī),平板電腦等承擔(dān)著越來越重要的工作,不僅僅是一種娛樂工具,更為工作和生活帶來便利,人們通過移動設(shè)備上網(wǎng),購物,辦公,通信。如今,設(shè)計一款移動應(yīng)用程序,符合用戶的使用習(xí)慣,更符合當(dāng)今互聯(lián)網(wǎng)發(fā)展的潮流。
網(wǎng)上購物作為移動設(shè)備眾多功能中的一種,越來越為人們所接受,使用移動設(shè)備購物的便利性也得到人們的認(rèn)可,大家可以隨時隨地使用移動設(shè)備進(jìn)行購物。網(wǎng)上購物的普及也促進(jìn)了快遞行業(yè)的發(fā)展,大家在使用移動設(shè)備購物的同時可以實(shí)時關(guān)注自己購買的商品在配送過程中的具體位置。移動設(shè)備的普及也為人與人之間的交流提供了很大的便利性,隨時隨地,大家可以通過移動設(shè)備聯(lián)系家人,好友,也促進(jìn)了陌生人之間的交流,大家通過移動設(shè)備與移動互聯(lián)網(wǎng)交流信息,分享動態(tài)。
(二)開發(fā)的目的及意義
隨著移動設(shè)備的普及,農(nóng)村人口的生活方式在不斷變化,上網(wǎng)購物的人數(shù)也在不斷增加,農(nóng)村人的思想已經(jīng)發(fā)生了變化。但是,目前我國物流幾乎沒有一個完整的、暢通的物流體系和物流渠道。雖然農(nóng)村市場潛力巨大,但對于使用移動設(shè)備進(jìn)行網(wǎng)上購物的農(nóng)村人口來說,物流始終是一個無法回避的問題?,F(xiàn)有的快遞物流企業(yè)在農(nóng)村的網(wǎng)點(diǎn)對農(nóng)民來說仍顯得不夠方便,偏遠(yuǎn)農(nóng)村大多要到鎮(zhèn)上才能取到快件。物流成為大家使用移動設(shè)備購物的第一大障礙,在農(nóng)村的許多地方還不能達(dá)到送貨到家的服務(wù),致使村級物流不暢通,這也就給網(wǎng)購的快捷方便打了折,甚至消減了農(nóng)民網(wǎng)購的積極性,滿足不了農(nóng)民對于量和質(zhì)的需求是現(xiàn)存的最大問題。
二、需求分析
(一)系統(tǒng)目標(biāo)
根據(jù)農(nóng)村地區(qū)用戶的實(shí)際需求,本設(shè)計指在解決農(nóng)村地區(qū)物流服務(wù)不完善,農(nóng)產(chǎn)品流通不暢,農(nóng)村剩余勞動力增加等問題。本設(shè)計主要包括的模塊有:村購模塊、物流模塊、翠花模塊。實(shí)現(xiàn)的主要功能有:農(nóng)產(chǎn)品的購買與出售、物流信息的查詢、信息的實(shí)時發(fā)布等。
(二)用戶需求分析
農(nóng)村地區(qū)物流行業(yè)發(fā)展落后,物流信息查詢系統(tǒng)不夠完善,配送人員不能將貨物精準(zhǔn)地送達(dá)至用戶手中,情況嚴(yán)重時甚至?xí)霈F(xiàn)丟件的現(xiàn)象。農(nóng)村地區(qū)用戶希望能夠準(zhǔn)確查詢自己郵寄的快遞或等待接收的貨物的詳細(xì)物流信息。
農(nóng)村地區(qū)新鮮果蔬的品種較為單一,且多為自給自足狀態(tài),農(nóng)產(chǎn)品具有季節(jié)性和鮮活性,運(yùn)輸成本高,容易造成剩余農(nóng)產(chǎn)品的擠壓。農(nóng)村用戶希望能夠?qū)⒆约曳N植的果蔬以較低的成本銷售出去,同時又希望以較低的價格購買到其他種類的農(nóng)產(chǎn)品。
農(nóng)村地區(qū)信息交流極為不便,多數(shù)農(nóng)村地區(qū)重要事件的通知方式依舊采用較為落后的揚(yáng)聲器廣播方式,甚至是口耳相傳的方式。因此,農(nóng)村地區(qū)用戶急需一個可以快速發(fā)布以及獲取信息的平臺,以解決消息閉塞的問題。
(三)功能需求分析
“村里人”移動應(yīng)用程序?yàn)檗r(nóng)村用戶提供了一個農(nóng)產(chǎn)品買賣,物流信息查詢,即時信息交流等功能的綜合信息服務(wù)平臺。本設(shè)計分為“村購”、“物流”、“翠花”三大模塊,以此來滿足用戶的實(shí)際需求。
1.“村購”模塊。為用戶提供出售農(nóng)產(chǎn)品及購買農(nóng)產(chǎn)品的平臺。用戶在此模塊出售農(nóng)產(chǎn)品時,需要提供農(nóng)產(chǎn)品的圖片、簡介、價格、運(yùn)費(fèi)等情況。用戶在此模塊購買時,以列表的方式瀏覽正在出售的農(nóng)產(chǎn)品,點(diǎn)擊想要購買的產(chǎn)品進(jìn)入詳細(xì)信息界面,選擇立即購買或暫時加入購物車。
2.“物流”模塊。為用戶提供查詢當(dāng)前物流信息的平臺。用戶在此模塊以列表的方式瀏覽物流信息,列表中包含貨物名稱、物流公司、物流單號以及簡單的物流狀態(tài)。點(diǎn)擊列表中的某一項(xiàng),在物流的詳細(xì)信息界面以時間軸的方式展示物流配送信息。
3.“翠花”模塊。為用戶提供信息交流的平臺。在此模塊用戶以列表的方式瀏覽信息。在側(cè)滑菜單中,用戶可以在登錄之后選擇“信息發(fā)布”選項(xiàng),編寫信息并發(fā)布。
三、系統(tǒng)設(shè)計
(一)設(shè)計目標(biāo)
“村里人”移動應(yīng)用程序包含為用戶提供農(nóng)產(chǎn)品出售與購買功能的“村購”模塊,物流查詢功能的“物流”模塊,信息交流功能的“翠花”模塊。
(二)各模塊設(shè)計
根據(jù)應(yīng)用的需求分析,“村里人”安卓應(yīng)用的功能模塊分為:村購模塊、物流模塊、翠花模塊。
各個模塊的功能如下所述:
1.村購模塊包括選擇商品,購買商品兩個子模塊,用戶根據(jù)實(shí)際需求選擇列表中的商品,然后根據(jù)實(shí)際需要點(diǎn)擊商品進(jìn)入詳情頁,在詳情頁中購買心儀的農(nóng)產(chǎn)品。
2.物流模塊包括查詢物流和寄收快遞兩大工具。滿足了用戶在寄送物品時所需要的基本功能。
3.翠花模塊包含信息發(fā)布和信息瀏覽兩個子頁面。用戶可以在翠花模塊發(fā)布信息或者瀏覽其他用戶上傳的貼了,符合一個交流平臺的基本要求。
四、系統(tǒng)實(shí)現(xiàn)
(一)首頁設(shè)計
1.首頁功能。移動應(yīng)用程序首頁包含搜索框,功能模塊的選擇按鈕以及商品信息,促銷活動,店鋪環(huán)境的流動版面。用戶可在此通過關(guān)鍵字搜索感興趣的內(nèi)容,如農(nóng)產(chǎn)品,旅游景點(diǎn),特色手工藝品等。通過滾動廣告界面簡單瀏覽商品信息,店鋪活動等。通過電商活動展示圖片獲取及時的活動信息。用戶滑動商品廣告欄的流動版面,瀏覽展示的農(nóng)產(chǎn)品信息。
2.首頁代碼。應(yīng)用程序首頁的主界面使用activity來實(shí)現(xiàn),并且在activity中通過RelativeLayout布局中加載一個Fragment頁面,然后在Fragment頁面中容納首頁的其他版塊。
首頁的Fragment頁面采用ScrollView組件作為容器,采用LinearLayout布局。ScrollView組件中從上之下分別為一個ConvenientBanner組件,兩個TableLayout布局以及一個RecycleView組件。
當(dāng)首頁啟動時,activity的onCreate()方法會加載相應(yīng)的組件。onCreate()方法的代碼具體如下:
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
tintManager = new SystemBarTintManager(this);
ButterKnife.bind(this);
cultView = (CultView) findViewById(R.id.cult_view_home);
mRealm = Realm.getInstance(this);
initViews();
setupWindowAnimators();
initRecyclerView();
}
其中setContent()方法用于加載頁面,setContent()方法調(diào)用了initView()方法與initRecycleView()方法。initViews()方法中調(diào)用了initButton()方法用于實(shí)現(xiàn)首頁模塊選擇按鈕的跳轉(zhuǎn)功能,調(diào)用了initBanner()方法用于加載首頁頂端的滾動廣告欄。initRecycleView()方法用于實(shí)現(xiàn)首頁底端的滑動界面,用以展示優(yōu)惠信息與商品信息。
(二)“村購”模塊設(shè)計
1.“村購”模塊功能?!按遒彙蹦K為用戶提供了農(nóng)產(chǎn)品的出售功能與購買功能。用戶在此模塊提供農(nóng)產(chǎn)品的圖片、簡介、價格、運(yùn)費(fèi)等信息后即可出售農(nóng)產(chǎn)品。用戶在此模塊購買時,以列表的方式瀏覽正在出售的農(nóng)產(chǎn)品,點(diǎn)擊想要購買的產(chǎn)品進(jìn)入詳細(xì)信息界面,選擇立即購買或暫時加入購物車。
2.“村購”模塊代碼
村購模塊包含兩部分,分別為商品列表以及商品的詳細(xì)信息。點(diǎn)擊列表中的某一商品即可進(jìn)入該商品的詳細(xì)信息頁面。
商品列表與商品信息均采用activity來實(shí)現(xiàn)。商品的列表使用ListView實(shí)現(xiàn),首先需要定義適配器,代碼如下:
private ShoppingListAdapter mAdapter;
然后初始化該適配器,代碼如下:
mAdapter = new ShoppingListAdapter(this);
然后為該適配器添加列表,代碼如下:
mAdapter.addAll(ShoppingList.all());
最后使用setOnItemClickListener方法為列表中的每一條項(xiàng)目添加點(diǎn)擊事件,用于跳轉(zhuǎn)商品的詳細(xì)信息頁面。
(三)“物流”模塊設(shè)計
1.“物流”模塊功能?!拔锪鳌蹦K為用戶提供查詢物流信息的功能。用戶在此模塊以列表的方式瀏覽物流信息,列表中包含貨物名稱、物流公司、物流單號以及簡單的物流狀態(tài)。點(diǎn)擊列表中的某一項(xiàng),在物流的詳細(xì)信息界面以時間軸的方式展示物流配送信息。以及物流狀態(tài),承運(yùn)公司,運(yùn)單編號等信息。
2.“物流”模塊代碼
物流模塊包含物流狀態(tài)的列表和物流的詳細(xì)信息。點(diǎn)擊列表中的某一欄物流狀態(tài)即可進(jìn)入物流的詳細(xì)信息頁面。
物流狀態(tài)列表與物流詳細(xì)信息均采用activity來實(shí)現(xiàn)。物流的狀態(tài)列表使用ListView實(shí)現(xiàn),首先需要定義適配器,代碼如下:
private WuLiuListAdapter mAdapter;
然后初始化該適配器,代碼如下:
mAdapter = new WuListListAdapter(this);
然后為該適配器添加列表,代碼如下:
mAdapter.addAll(WuListList.all());
最后使用setOnItemClickListener方法為列表中的每一條項(xiàng)目添加點(diǎn)擊事件,用于跳轉(zhuǎn)物流的詳細(xì)信息頁面。
(四)“翠花”模塊設(shè)計
1.“翠花”模塊功能。翠花模塊為用戶進(jìn)行交流和互動的界面。用戶可在此模塊發(fā)帖,評論其他用戶的帖子或者為其他用戶點(diǎn)贊。用戶可以通過上下滑動屏幕的方式瀏覽相關(guān)信息。
2.“翠花”模塊代碼。翠花模塊包含兩大板塊,分別為用戶發(fā)布的信息列表以及側(cè)滑抽屜菜單。
翠花模塊僅使用一個activity實(shí)現(xiàn),其中包含實(shí)現(xiàn)側(cè)滑抽屜菜單的fragment與實(shí)現(xiàn)信息列表的fragment。
在翠花模塊的activity類中的onCreate()調(diào)用了initView()方法,并在initView()方法中為側(cè)滑抽屜菜單的對象賦值,用以實(shí)現(xiàn)側(cè)滑抽屜菜單的效果。代碼如下:
mNavigationDrawerFragment = (NavigationDrawerFragment) getFragmentManager().findFragmentById(R.id.fragment_drawer);
參考文獻(xiàn):
[1] 何娟.農(nóng)村電子商務(wù)物流“最后一公里”建設(shè)研究[J].現(xiàn)代商業(yè), 2016(8):39-40
[2] 應(yīng)桂芬.淺談安卓系統(tǒng)的應(yīng)用現(xiàn)狀和發(fā)展[J].電腦迷,2016(5)
[3] 阿拉騰格日樂.“Android”引領(lǐng)浪潮之巔[J].電子制作,2014(23):77
[4] (美)Ian G. Clifton 著 鄭磊 譯.基于Material Design的Android用戶界面設(shè)計, 2016, 4
[5] (美)Y.Daniel Liang 著 王鎂 李娜 譯.Java語言程序設(shè)計.機(jī)械工業(yè)出版社,2004,575
[6] (美)麥克勞夫林 著 江文 唐俊 劉柯 譯.Java與XML, 2011
[7] 畢小朋 著.精通Android Studio.清華大學(xué)出版社,2017,34
[8] 石彥華,王愛菊.基于Android平臺軟件開發(fā)環(huán)境搭建的研究與應(yīng)用[J].福建電腦,2016,32(03):112-113