基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁
基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、本科畢業(yè)論文基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)design and implementation of supermarket shoppingsystem based on android學(xué)院名稱:學(xué)生姓名:專業(yè)班級:學(xué)號:指導(dǎo)教師姓名:指導(dǎo)教師職稱:畢業(yè)設(shè)計(jì)(論文)原創(chuàng)性聲明和使用授權(quán)說明原創(chuàng)性聲明作 者 簽 名: 指導(dǎo)教師簽名:日日期:期:使用授權(quán)說明作者簽名:日期:目 錄摘要.iabstract.ii引言.1第 1 章 緒論.21.1 設(shè)計(jì)的目的和意義 . 21.1.1 設(shè)計(jì)的目的 . 21.1.2 設(shè)計(jì)的意義 . 21.2 設(shè)計(jì)的方法和技術(shù) . 31.2.1 開發(fā)環(huán)境 . 31.2.

2、2 面向?qū)ο蟮能浖_發(fā)過程 . 3第 2 章 系統(tǒng)分析.42.1 業(yè)務(wù)流程的概述 . 42.2 可行性分析 . 42.2.1 經(jīng)濟(jì)可行性分析 . 42.2.2 操作可行性分析 . 42.2.3 技術(shù)可行性分析 . 42.2.4 運(yùn)行可行性分析 . 42.3 系統(tǒng)結(jié)構(gòu)分析 . 52.3.1 首頁模塊 . 52.3.2 商品分類模塊 . 52.3.3 購物車模塊 . 52.3.4 訂單模塊 . 52.3.5 個(gè)人中心模塊 . 5第 3 章 總體設(shè)計(jì).73.1 系統(tǒng)功能結(jié)構(gòu) . 73.1.1 客戶端 . 73.1.2 服務(wù)端 . 83.2 軟件的體系結(jié)構(gòu) . 93.3 界面設(shè)計(jì) . 9第 4 章 詳

3、細(xì)設(shè)計(jì)與實(shí)現(xiàn).94.1 基類功能類設(shè)計(jì) . 94.2 首頁模塊 . 104.2.1 首頁模塊架構(gòu) . 104.2.2 廣告頁面的實(shí)現(xiàn) . 104.2.3 附近店鋪 ,促銷專場和名優(yōu)特產(chǎn)的實(shí)現(xiàn) . 114.2.4 禮券的實(shí)現(xiàn) . 1154.3 分類模塊的設(shè)計(jì) . 134.3.1 分類模塊架構(gòu) . 154.3.2 分類界面的實(shí)現(xiàn) . 154.3.3 商品目錄界面的實(shí)現(xiàn) . 154.3.4 商品界面的實(shí)現(xiàn) . 184.4 購物車模塊的設(shè)計(jì) . 184.4.1 專購物車模塊架構(gòu) . 194.4.2 購物車的實(shí)現(xiàn) . 194.5 訂單模塊的設(shè)計(jì) . 214.5.1 訂單模塊架構(gòu) . 214.5.2 提交

4、訂單模塊的實(shí)現(xiàn) . 214.5.3 訂單模塊的實(shí)現(xiàn) . 234.5.4 訂單詳情頁面的實(shí)現(xiàn) . 254.5.5 支付頁面的設(shè)計(jì) . 254.6 我的模塊的設(shè)計(jì) . 274.6.1 我的模塊架構(gòu) . 274.6.2 管理地址的實(shí)現(xiàn) . 274.6.3 分享朋友的實(shí)現(xiàn) . 284.6.4 登錄 /注銷的實(shí)現(xiàn) . 29第 5 章 系統(tǒng)測試.305.1 測試的目的及環(huán)境的部署 . 305.2 測試的準(zhǔn)則 . 305.3 測試的方法 . 315.4 測試內(nèi)容 . 315.5 測試實(shí)例和測試結(jié)果 . 315.5.1 界面測試 . 315.5.2 其他方面的黑盒測試 . 32結(jié)致論謝.3334參考文獻(xiàn).35

5、基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要 :在現(xiàn)代生活中,安卓智能手機(jī)的各類應(yīng)用所帶來的便利已經(jīng)影響我們生活的方方面 面,對人們的生產(chǎn)生活、衣食住行產(chǎn)生了積極的作用。同時(shí),手機(jī)智能平臺的快速發(fā)展也 給各行各業(yè)帶來了新挑戰(zhàn),對于任意行業(yè),如果不能適應(yīng)信息化的潮流、跟上時(shí)代發(fā)展的 步伐,都會被殘酷的市場競爭所淘汰。本論文課題是基于安卓的超市購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),利用移動開發(fā)技術(shù)初步實(shí)現(xiàn)了 用基本的智能手機(jī)來管理超市的日常經(jīng)營。該系統(tǒng)改善了傳統(tǒng)購物體驗(yàn)的多種弊端,最終 目的當(dāng)然就是給用戶提供一種方便的購物體驗(yàn)。本設(shè)計(jì)是基于安卓的一款便于在智能平臺上購物的手機(jī) app ,開發(fā)工具是 android st

6、udio ,編程語言用的是 java ,開發(fā)實(shí)現(xiàn)了引導(dǎo)界面、可自由加載和轉(zhuǎn)換的菜單以及其 他模塊的功能。用手機(jī)代替超市實(shí)體店從而實(shí)現(xiàn)了足不出戶的手機(jī)超市購物, 為人們節(jié)約 了排隊(duì)等待付款、挑選商品的時(shí)間。本系統(tǒng)有較強(qiáng)的實(shí)用性,因?yàn)槭謾C(jī)攜帶很方便,該 app 操作起來也不費(fèi)力,要實(shí)現(xiàn)的 功能也相對完善,一些購物系統(tǒng)的經(jīng)典頁面比如添加商品至購物車中、查看已提交的訂單、 秒殺很多做活動的商品等也能正常運(yùn)行和顯示,更重要的是本軟件已在市內(nèi)的若干超市進(jìn) 行成功的模擬測試,并成功進(jìn)行了小規(guī)模的實(shí)際應(yīng)用,反饋回來的信息表明其市場應(yīng)用前 景非常廣闊。關(guān)鍵字:安卓開發(fā) java 程序設(shè)計(jì)語言超市購物系統(tǒng)desi

7、gn and implementation of supermarket shopping system basedon androidabstract : in modern society, the convenience brought by the various applications of mobile phones has benefited all aspects of our lives, giving the production and living of the people and basic necessities of life a positive effec

8、t. at the same time, the rapid development of intelligent platform also brings new challenges to all walks of life, for any industry, if you can not adapt to the trend of information, to keep up with the pace of development of the times, you will be buried by the brutal competition in the market.the

9、 topic of this thesis is the design and implementation of the supermarket shopping system based on android, using mobile development technology to achieve a preliminary realization of the basic smart phone to manage the daily operation of the supermarket. the system improves the traditional shopping

10、 experience of a variety of drawbacks, of cou rse, its final purpose is providing a novel and convenient shopping experience.the design is based on androids mobile phone app to facilitate shopping on the smart platform, using android5.0 as a development tool, java as a programming language, the deve

11、lopment and implementation of the boot interface, free to load and convert menus and other modules of the function. using a mobile phone instead of a supermarket store so as to realize the online shopping at home, for the public to save the queue to wait, long distance run time.the system has strong

12、 practicability, because it is convenient to carry a mobile phone, the system is easy to operate, to achieve the function is relatively perfect, some of the classic shopping system pages, such as adding merchandise to the shopping cart, view submitted orders, spike a lot of activities to do the good

13、s, etc. can also be normal operation and display, and this software system has been in the supermarket and a fast-food chain through the simulation test under the lan environment, and successfully carried out the practical application of small scale, the feedback information indicates that the marke

14、t has a very broad application prospects. key words: g oogle android sdk java programming language shopping system引言現(xiàn)在的社會經(jīng)濟(jì)和網(wǎng)絡(luò)發(fā)展得愈來愈快,喜歡在手機(jī)購物的人越來越多,傳統(tǒng)的購物 方式已經(jīng)滿足不了人們追求方便快捷的購物心理,現(xiàn)在手機(jī)已經(jīng)是人們不可缺少的一部 分,幾乎每個(gè)人都有手機(jī),它也是人們生活中必不可少的溝通工具。基于手機(jī)端的在線購 物系統(tǒng)能使人們隨時(shí)隨地選購自己喜歡的商品,現(xiàn)在國內(nèi)的很多中、小型超市每天都要查 看庫存信息還要及時(shí)更新訂單信息等, 可是經(jīng)濟(jì)市場的變化

15、不會等待,所以高效的、現(xiàn)代 化的管理超市的方法就受到了各大、中、小型超市的喜愛。各種實(shí)體店超市給我們的生活帶來了很多便利,不可避免的是這些實(shí)體店超市也有各 種缺點(diǎn),如:每天都要處理入庫的大量商品導(dǎo)致其效率降低,時(shí)刻都需要有人結(jié)算付款, 人工的速度當(dāng)然是有限的而且特別容易有細(xì)微的差錯(cuò),每次有活動的商品都要重新打印價(jià) 簽,其效率一定不會高。另外一方面,對于一個(gè)稍微有規(guī)模的超市來說,每天都會有商品 的入庫、銷售和更新等信息需要處理,這些都要一些有經(jīng)驗(yàn)的管理人員進(jìn)行決策、分析和 處理,不像計(jì)算機(jī)或者手機(jī)能實(shí)現(xiàn)實(shí)時(shí)分析, 這樣,這些管理人員一直都不能對及時(shí)傳遞 的資料進(jìn)行分析和研究。因此,在進(jìn)行市場調(diào)查

16、之后,我選擇了超市購物系統(tǒng)設(shè)計(jì)題目, 這種用手機(jī)客戶端實(shí)現(xiàn)的購物平臺能實(shí)時(shí)、精確的掌握超市中的各項(xiàng)工作的工作情況,從 而能使超市管理者在最短的時(shí)間、最少的人力物力的情況下加速商品的周轉(zhuǎn)率,這樣做還 能滿足客戶的需求并提高服務(wù)質(zhì)量,也能夠很好的處理產(chǎn)品售價(jià)的更新等銷售問題,讓超 市的管理人員面對市場變幻莫測的情況做出最適合最正確的決策,這在一定程度上就加快 了超市的經(jīng)營效率。我設(shè)計(jì)的這個(gè)購物系統(tǒng)實(shí)現(xiàn)的功能主要有:新用戶注冊登錄,瀏覽新添加和原來的商 品,購買想買或者需要買的商品,添加要買的商品至購物車中,查看剛完成的和歷史的訂 單等功能;管理員能夠處理更新用戶、添加刪除商品信息、處理訂單信息、等

17、功能。超市 購物系統(tǒng)目前在各個(gè)商業(yè)領(lǐng)域都發(fā)揮了很大的作用, 也得到了越來越多的大、中、小型超 市的應(yīng)用。第 1 章 緒論1.1 設(shè)計(jì)的目的和意義通過對市場的調(diào)查和對未來前景的分析,針對目前大多數(shù)中、小型超市的實(shí)際需求, 開發(fā)了這款手機(jī)購物 app 。作為一家超市工作人員,每天都要分析研究商品的入庫、銷售、 更新等各種信息,設(shè)計(jì)本系統(tǒng)的最終目的是要提高超市的銷售額,給這些超市帶來更多的 經(jīng)濟(jì)效益。在一定程度上也實(shí)現(xiàn)了超市實(shí)體店與互聯(lián)網(wǎng)、 手機(jī)的有效結(jié)合,促進(jìn)了周邊地 區(qū)的消費(fèi)和超市的收入。1.1.1 設(shè)計(jì)的目的隨著時(shí)代的發(fā)展,網(wǎng)絡(luò)已經(jīng)被應(yīng)用到很多行業(yè)和領(lǐng)域。 現(xiàn)如今,信息技術(shù)和網(wǎng)絡(luò)的發(fā) 展給商家

18、們提供了一個(gè)更廣闊的商品推廣渠道。借助于支付方式的不斷完善,開發(fā)超市購 物 app 應(yīng)用,不僅給商家?guī)沓杀镜土男麄鳌⑼茝V、銷售等好處,還可以幫顧客節(jié)約時(shí) 間,減去排隊(duì)等候付款的煩惱,感受全新的購物體驗(yàn)。設(shè)計(jì)此手機(jī)超市購物應(yīng)用,使超市 管理員能夠很方便地查詢商品銷售情況以及對商品種類、 價(jià)格進(jìn)行添加、刪除,以促進(jìn)營 業(yè)額的上升,提高工作效率,節(jié)省了成本。該軟件的設(shè)計(jì)目標(biāo)是盡量降低人力與物力資源的消耗, 提高處理數(shù)據(jù)的速度,面向各 超市,實(shí)現(xiàn)對商品進(jìn)行有序快速的交易。1.1.2 設(shè)計(jì)的意義我這次設(shè)計(jì)的是一個(gè)基于 android 的超市購物系統(tǒng),超市管理者或者消費(fèi)者用一部普 通的 android

19、 手機(jī),登錄進(jìn)入該軟件,就可以對商品進(jìn)行一些基本操作。該購物軟件成功地讓使用它的人不用非要在電腦端購物,也不用抽大量的時(shí)間去超市 查詢各類商品。只要擁有 android 手機(jī),用戶就可以隨時(shí)隨地的購買商品。對超市管理者 而言,在網(wǎng)絡(luò)平臺上銷售商品使得庫存的壓力變小了、 成本變低了,況且管理者用手機(jī)就 能看到新老顧客購物過后的反饋信息和建議,這樣方便經(jīng)營者調(diào)整營銷戰(zhàn)略,獲得更大的 收益。手機(jī)購物打破了傳統(tǒng)商務(wù)的障礙,對很多消費(fèi)者、各中、小型超市還有經(jīng)濟(jì)市場起到 了很大的影響,順應(yīng)了社會的發(fā)展,使購物更加便利而又人性化。1.2 設(shè)計(jì)的方法和技術(shù)1.2.1 開發(fā)環(huán)境系統(tǒng)的軟硬件平臺表 1-1 硬件運(yùn)

20、行環(huán)境的配置要求: 環(huán)境cpu內(nèi)存硬盤空間表 1-2 軟件運(yùn)行環(huán)境的配置要求: 環(huán)境操作系統(tǒng)數(shù)據(jù)庫開發(fā)工具1.2.2 開發(fā)語言配置建議 i7 建議 4g 以上 建議 8g 以上配置microsoft 10sql serverandroid studio面向?qū)ο笫钱?dāng)前相對而言比較流行的一種程序設(shè)計(jì)思想 ,其基本的設(shè)計(jì)思路是使用對 象、類、方法等基本的軟件設(shè)計(jì)概念來進(jìn)行程序開發(fā)復(fù)用性增強(qiáng)。 對象是指現(xiàn)實(shí)世界中客 觀存在的事物擬物成軟件系統(tǒng)的組成元素,并且在軟件系統(tǒng)開發(fā)過程中運(yùn)用人類自己的自 然思維方式進(jìn)行軟件開發(fā)過程。面向?qū)ο蠹夹g(shù)強(qiáng)調(diào)在軟件開發(fā)過程中面向客觀世界真實(shí)存 在的事物,采用人類在認(rèn)識客觀

21、世界的過程中普遍運(yùn)用的思維方法, 直觀、自然地描述客 觀世界中的有關(guān)事物 8 。面向?qū)ο蠹夹g(shù)的基本特征主要有封裝、繼承和多態(tài) 5 。(1) 封裝:封裝是指將具有一致的屬性和行為的對象抽象成單獨(dú)的類。一個(gè)類就是這 樣的一種單獨(dú)的抽象模式,它包含了與程序的對象有關(guān)的重要的性質(zhì),而忽略其他無關(guān)的 內(nèi)容。任何類的劃分都是我們主觀意義上的,但是類的劃分必須是和我們設(shè)計(jì)的程序有關(guān)13。(2) 繼承:繼承性是子類共享父類數(shù)據(jù)結(jié)構(gòu)和方法的一種方便的實(shí)現(xiàn)代碼結(jié)構(gòu)完整性的機(jī)制,子類可以共享父類的全部公有描述,但是還可以進(jìn)行必要的修改和擴(kuò)充13。(3) 多態(tài):多態(tài)性使指相同的操作或函數(shù)其過程可作用于多種類型的對象上

22、并獲得不 同的結(jié)果。不同的對象,收到同一消息可以產(chǎn)生不同的結(jié)果,這種現(xiàn)象稱為多態(tài)性。多態(tài)指允許每個(gè)對象以適合自身的方式去響應(yīng)共同的消息 8。多態(tài)性增強(qiáng)了軟件的靈活性 13。第 2 章 系統(tǒng)分析2.1 業(yè)務(wù)流程的概述用戶進(jìn)入首頁后看到的界面從上到下依次是位置定位、 新品圖片、功能條款、秒殺促 銷,用戶點(diǎn)擊“分類”即可進(jìn)入所有的商品列表,在商品列表界面點(diǎn)擊任意商品,用戶就 能了解該商品的詳細(xì)信息。若用戶喜歡該商品,可將其加入購物車,隨時(shí)結(jié)算,提交訂單, 即完成了一次購物。2.2 可行性分析該系統(tǒng)從經(jīng)濟(jì)、操作、運(yùn)行、技術(shù)多個(gè)方面進(jìn)行分析其可行性,按照我本人對 java 程序設(shè)計(jì)語言和安卓知識的了解,

23、本系統(tǒng)的可行性分析主要從以下四個(gè)方面進(jìn)行介紹。 2.2.1 經(jīng)濟(jì)可行性分析該系統(tǒng)要用到的 android studio 軟件獲得很便捷,就是直接從網(wǎng)上下載,不需要任 何費(fèi)用,并且該系統(tǒng)又是我自己獨(dú)立完成,可以節(jié)省很多花銷,在一定程度上也提高了自 己的動手能力。2.2.2 操作可行性分析該軟件操作起來非常簡便,只要會用安卓手機(jī)的人都可以輕松上手,軟件的所有購物 流程都使用了很好用的交互界面,操作起來也很簡單便利,用戶也不用非要掌握它的工作 原理和流程。所以來說,該軟件在操作方面是可行的。2.2.3 技術(shù)可行性分析從事 it 行業(yè)的人們一般至少都要懂得計(jì)算機(jī)和手機(jī)的一些基礎(chǔ)知識,也就是說一定 要有

24、一定的軟硬件基礎(chǔ)知識,也要會用各種基本的管理軟件。在現(xiàn)在社會人們都有或多或 少的電腦知識,跟不用說企業(yè)高層的管理層人員了,只要會一些電腦知識,在投入使用已 設(shè)計(jì)好的新軟件時(shí),只要培訓(xùn)一些少量的管理人員,軟件就能夠順利的使用和運(yùn)行了,因 為其后臺管理界面友好,整個(gè)軟件的功能和使用方法也能夠被大多數(shù)員工了解并掌握, 操 作管理員即使不會任何數(shù)據(jù)庫知識也能很快使用。2.2.4 運(yùn)行可行性分析本系統(tǒng)為一個(gè)簡單的手機(jī)網(wǎng)上購物系統(tǒng),所消耗的資源比較少,電腦配置能夠支持開 發(fā)軟件的正常運(yùn)行,又由于開發(fā)環(huán)境的搭建成功,所以本系統(tǒng)運(yùn)行上是可行的。2.3 系統(tǒng)結(jié)構(gòu)分析本系統(tǒng)是一款在智能手機(jī)上網(wǎng)上購物的應(yīng)用 , 總

25、共分為五個(gè)大功能模塊:首頁顯示模 塊、商品分類模塊、添加購物車模塊、查看訂單模塊、個(gè)人中心模塊,主要目的是設(shè)計(jì)一 款方便消費(fèi)者在手機(jī)上超市購物的應(yīng)用。2.3.1 首頁模塊首頁模塊顯示的首先豎列的秒殺信息和橫向的廣告, 橫向能左右滑動豎向能上下,用 戶在首頁上方或下方秒殺商品處點(diǎn)擊商品的圖片就能進(jìn)入到該商品的詳情頁面,在詳情頁 面中用戶可根據(jù)自己的需要將該商品加入購物車或者直接購買,數(shù)量也是可自由增加或減 少的,也是附近店鋪,促銷專場,禮券,錢包等功能的入口界面。2.3.2 商品分類模塊在商品分類模塊用戶可以選擇查看不同類別的商品, 比如食品部和聯(lián)營部等等,每一 類別的商品又有不同的分區(qū),例如生

26、鮮類就包括蔬菜和雜糧分區(qū)。每一個(gè)分區(qū)又包含了很 多商品種類,此時(shí)點(diǎn)擊這些商品種類,會顯示這類商品的全部品牌,用戶根據(jù)自己的喜好 來選擇不同品牌不同類別的商品。豐富而又不復(fù)雜的分類模塊能讓用戶簡便快速找到自己 心儀的商品。2.3.3 購物車模塊用戶在查看購物車之前須先登錄自己的賬號和密碼, 沒有登錄的話該界面會提示“請 登錄”的消息。該模塊能實(shí)現(xiàn)的功能有:將要買的商品添加至購物車中、編輯商品數(shù)量直 到滿足自己的需求、把加入購物車中的商品顯示出來。2.3.4 訂單模塊該模塊的功能有:提交已付款的訂單、選擇適合自己的支付方式、全部費(fèi)用結(jié)算、查 看已完成的和未完成的訂單。在購物車中確定要買的商品進(jìn)行費(fèi)

27、用結(jié)算,然后完善收貨信 息(對于備注,可表明對商品的需求)就完成了訂單,跳轉(zhuǎn)到支付頁面,顯示若干種付款 方式,用戶按照適合自己的付款方式,此項(xiàng)訂單就產(chǎn)生了。2.3.5 個(gè)人中心模塊個(gè)人中心模塊主要包括:管理收貨地址、服務(wù)與用戶反饋、配送管理、幫助說明、給 朋友們推薦使用該應(yīng)用。例如:增加新的收貨地址或者刪除已經(jīng)不用的收貨地址, 服務(wù)與 用戶反饋則給客戶提交自己建議的空間,主要是一些輔助功能。第 3 章 總體設(shè)計(jì)3.1 系統(tǒng)功能結(jié)構(gòu)該系統(tǒng)分為客戶端和服務(wù)端:客戶端主要是用戶的注冊、登錄、瀏覽商品、選購商品、 加入購物車、查看訂單;服務(wù)端主要是管理員對用戶、商品、訂單的管理,在整個(gè)系統(tǒng)中 他們具有

28、不同的功能和權(quán)限。該軟件系統(tǒng)功能結(jié)構(gòu)圖如圖 3-1 所示:超市購物系統(tǒng)客戶端首頁商品分類購物車訂單我的功能入口廣告列表商品分類商品搜索選擇商品商品選擇商品結(jié)算訂單詳情提交訂單查看訂單分享用戶登錄修改地址圖 3-1 系統(tǒng)功能結(jié)構(gòu)圖3.1.1 客戶端客戶端是供用戶購物的,其包含了用戶的注冊與登錄、瀏覽商品、加入購物車、查詢 訂單、支付等功能,它負(fù)責(zé)直接和用戶交互的功能。用戶進(jìn)入軟件如果以前注冊過就會把以前加入購物車的記錄和訂單記錄重新顯示,只 有登錄過后才能把商品加入購物車或夠買商品,沒有登錄的話系統(tǒng)會跳到登錄界面提示用 戶先登錄,在用戶注冊的時(shí)候必須用不同的信息注冊,例如用戶的手機(jī)號以前注冊過就

29、會 提示用戶此手機(jī)號已注冊,當(dāng)用戶購買的時(shí)候用戶能根據(jù)支付方式去選擇自己需要的支付 方式,只有在輸入正確的用戶名和密碼的情況下才能購買, 否則會提示密碼錯(cuò)誤,當(dāng)購買 成功后會調(diào)到購買成功界面,其功能流程圖如圖 3-2 所示:超市購物系統(tǒng)客戶端購物購物車商品瀏覽訂單我的查看商品詳情n是否已經(jīng)登錄是否已經(jīng)登錄y加入購物車y購物車刪除購物車支付查看訂單n選擇支付方式支付成功登錄模塊是否已經(jīng)登錄 y提示添加成功ny輸入用戶名與密碼用戶名密碼是否正確?n注冊輸入用戶名和 密碼再次輸入密碼y兩次密碼是否一致?n圖 3-2 系統(tǒng)流程圖3.1.2 服務(wù)端服務(wù)端主要用于服務(wù)端的管理員管理用戶、 商品和訂單等方面

30、,用戶包括用戶名、密 碼、電話等一些個(gè)人信息,商品包含商品名、圖片、價(jià)格、數(shù)量等信息,訂單包括時(shí)間、 地址等屬性信息。其 e-r 圖如下 3-3 所示:管理員1 1 1管理n用戶管理n商品管理n訂單用戶id密碼電話地址商品id數(shù)量價(jià)格圖片訂單id時(shí)間地址手機(jī)圖 3-3 e-r 圖3.2 軟件的體系結(jié)構(gòu)本軟件是典型的 android 超市購物客戶端 , 采用建立在 android 系統(tǒng)之上的 application framework 應(yīng)用程序架構(gòu)。本軟件遵循 m v c 架構(gòu)設(shè)計(jì)原則 , 即數(shù)據(jù) ( 模 型, model ) 、視圖 (view) 和控制器 (controller), 三層有自

31、己所要完成的任務(wù),但又 相互聯(lián)系。模型層中主要封裝了要用到的實(shí)體類,因?yàn)檫@些類要重復(fù)利用,本軟件主要數(shù)據(jù)來源 于服務(wù)器 , 數(shù)據(jù)層中存儲了所有數(shù)據(jù)列表的信息、圖片列表信息 , 內(nèi)容以 json 文件形式 保存于緩存空間里 ,這些 javabean 主要就是封裝從服務(wù)器請求數(shù)據(jù)的信息??刂破鲗臃庋b了一些程序的邏輯。為視圖層展示做準(zhǔn)備,控制器主要負(fù)責(zé)本項(xiàng)目的邏 輯部分 , 包括數(shù)據(jù)調(diào)用邏輯、數(shù)據(jù)計(jì)算與視圖關(guān)系的邏輯處理等等。邏輯層在代碼上主要 表現(xiàn)為各個(gè)視圖控制器 , 設(shè)置了整個(gè)應(yīng)用各個(gè)視圖之間如何切換 , 數(shù)據(jù)關(guān)系如何協(xié)調(diào)等 , 其中在本次設(shè)計(jì)中我使用了很多的方法來簡化代碼,也是銜接視圖層和數(shù)據(jù)

32、層最重要的部 分。視圖層中處理數(shù)據(jù)顯示的部分, xml 布局可以視為 v 層,顯示 model 層的數(shù)據(jù)結(jié)果 google 提供了 android 視圖層中的各個(gè)類 , 自己可以對各種基本控件進(jìn)行組裝和排版 , 構(gòu)成應(yīng)用需要的特定的視圖控件 , 如軟件標(biāo)題設(shè)置紅底白字、在用戶體驗(yàn)至關(guān)重要的點(diǎn)擊 處理過程中 , 大部分控件設(shè)置了相應(yīng)的視覺效果 , 如各種控件按鈕點(diǎn)擊后變色、背景圖片 和部分視覺效果等。3.3 界面設(shè)計(jì)目前 android 界面設(shè)計(jì)的方法主要有兩種:第一種是用 java 編寫的代碼實(shí)現(xiàn)。第二種是基于 xml 的實(shí)現(xiàn)。對于界面設(shè)計(jì)而言,客戶端注重用戶的操作體驗(yàn)和頁面之間的層級關(guān)系。受

33、“屏幕小、 觸屏操作容易出現(xiàn)錯(cuò)誤、網(wǎng)速的限制問題”等的條件制約,移動的 ui 設(shè)計(jì)需要考慮精簡 頁面布局、提高圖片的加載效率、減少輸入等問題。具體辦法可以這么做:(1) 對原有的信息進(jìn)行簡要整合分析并重組,避免頁面布局的復(fù)雜性。(2) 為了更多的展示信息,本軟件整體用 fragment 和 viewpager 實(shí)現(xiàn)讓用戶既能點(diǎn) 擊下面的按鈕切換又能左右滑動來切換不同的功能界面。(3) 以精簡為主??紤]到手機(jī)屏幕的尺寸問題,因此頁面內(nèi)容要足夠的精簡,這就 要求主元素內(nèi)容要夠“大”,同時(shí)去掉不必要的元素。第 4 章 詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)本章主要闡述了首頁模塊,所有商品各種分類模塊、整理購物車模塊、處理所

34、有訂單 模塊、個(gè)人中心模塊五大模塊的詳細(xì)內(nèi)容 , 并且詳細(xì)介紹了各個(gè)模塊主要功能的實(shí)現(xiàn)方 法。每塊功能都用實(shí)際效果截圖來更加清晰的展示了該模塊用到的知識和技術(shù) ,接著用部 分典型功能的實(shí)現(xiàn)代碼來進(jìn)行進(jìn)一步說明。4.1 基本功能類設(shè)計(jì)在基類功能模塊中,主要實(shí)現(xiàn)了各模塊所用到的一些復(fù)用類以及若干視圖控制器類, 主要是視圖控制器方法的封裝,供各個(gè)實(shí)體控制器調(diào)用 ,這里說幾個(gè)。1.utiltool 類為了提高性能,利用線程池創(chuàng)建線程了 10 個(gè)線程利用 handler 和接口回調(diào)供各實(shí)體 控制器調(diào)用,調(diào)用此類能得到正確的返回的字符串,和錯(cuò)誤的信息然后供調(diào)用者根據(jù)不同 的返回信息進(jìn)行不同的處理。2.us

35、ermanager 類該類是工具類,是保存一些信息到本地,主要用途是封裝用戶的數(shù)據(jù)到本地,例如登 錄記錄,錢包登錄記錄,當(dāng)用戶再次登錄的時(shí)候不用再次輸入,提高用戶體驗(yàn),供各個(gè)實(shí) 體類調(diào)用。3.stringutils 類該類是一些字符串的轉(zhuǎn)換,主要功能是一些驗(yàn)證的正則表達(dá)式,對手機(jī)號的驗(yàn)證,郵 箱的驗(yàn)證 double 和 int 的轉(zhuǎn)換,取整和保留位數(shù)的使用。4.md5key 類和 coder 類整兩個(gè)類是加密類, md5key 是用來 md5 加密,當(dāng)用戶注冊的時(shí)候密碼直接用 md5 加 密,因?yàn)?md5 加密是不可逆的和唯一的,所以直接把 md5 加密后的字符串存到數(shù)據(jù)庫,登 錄驗(yàn)證的時(shí)候也

36、用 md5 加密的字符串驗(yàn)證,coder 是 ras 加密的工具類,該類用于當(dāng)用戶 支付的時(shí)候和轉(zhuǎn)賬的時(shí)候確保安全性。5.addbuycar這兩個(gè)類會在帶有加入購物車功能的界面用到,用來添加商品到購物車 ,為了提高代 碼的復(fù)用性,我把這這個(gè)功能封裝成一個(gè)類4.2 首頁功能模塊首頁功能模塊是用戶進(jìn)入軟件后首次看到的模塊主要用來瀏覽廣告列表、進(jìn)入附近店 鋪,錢包,促銷專場,名優(yōu)特產(chǎn),滴購,禮來了等功能的入口,用戶可根據(jù)需要選擇點(diǎn)擊 進(jìn)入任意功能,這個(gè)模塊也是整個(gè)購物軟件中最重要的功能模塊。4.2.1 首頁功能模塊架構(gòu)首頁包括廣告頁和內(nèi)容頁 , 分別由 scrolview ,listview 和 v

37、iewpager 三個(gè)控件實(shí)現(xiàn)。 listview 控件控制豎向的廣告,viewpager 控件控制橫向的廣告,scrolview 主要的作用 是控制整體滑動。include 封裝了八個(gè)入口列表視圖 , 而由于主頁場景中分布了多個(gè)功能模塊的視圖 界面 , 此頁面作為主頁界面 , 該頁面中同時(shí)包含了其他模塊的部分邏輯功能,也是其它模 塊的入口。主頁模塊主要涉及了若干視圖類 , 封裝了程序的主要應(yīng)用邏輯以及界面布局構(gòu)造。主 要的類如下 :1.firstpagefragment 類該類是的軟件首頁類 , 首頁的所有控件都是在此類中實(shí)現(xiàn)。該類盛放了首頁的所有控 件和邏輯。2.typesleftadap

38、ter 類該類繼承于 baseadapter ,主要是 listview 控件的數(shù)據(jù)的填充,主要實(shí)現(xiàn)了省份列表 各視圖的設(shè)計(jì),提供了主頁列表單元格的共有模型,點(diǎn)擊此控件城市和店鋪會跟隨變化, 其他入口的界面也會更具不同的選擇具有不同的變化。3.typesadapter 類該類是 gridview 的適配器, gridview 的所有數(shù)據(jù)填充都在此類中。4.2.2 廣告頁面的實(shí)現(xiàn)viewpager 是 android 開發(fā)中最常用的基本視圖控件之一 , 用于構(gòu)建橫向列表視圖 控件。軟件中所有列表控件 , 如五個(gè)主要視圖的切換、橫向廣告的切換列表均使用了 viewpager 控件進(jìn)行列表的構(gòu)造。通

39、過 firstpageradapter 適配器事項(xiàng)橫向列表數(shù)據(jù)的填 充。firstpageradapter 繼承于 pageradapter( 滾動視圖 ) , 可對各種列表拖動過程操作 進(jìn)行控制和監(jiān)控。viewpager 通過重寫 instantiateitem 和 destroyitem 的委托方法來讀取數(shù)據(jù)和實(shí) 現(xiàn)數(shù)據(jù)的加載銷毀 , 涉及的主要方法和相應(yīng)邏輯如下 :1.列表中橫向廣告數(shù)量 :overridepublic int getcount() return integer.max_value;讓適配器默認(rèn)返回最大值返回?zé)o數(shù)多個(gè)用于循環(huán)滑動2.返回需要顯示的視圖 :overridep

40、ublic object instantiateitem(viewgroup container, int position) position %= listimage.size();imageview view = listimage.get(position); viewparent vp =view.getparent();if (vp!= null )viewgroup parent = (viewgroup)vp;parent.removeview(view);container.addview(view);return view;。返回列表中對應(yīng)的對象,包含了圖片、文本等多種視圖

41、控件和一部分排版邏輯代碼。 設(shè)計(jì)樣式具體如圖 4-1 所示:圖 4-1viewpager 效果圖實(shí)現(xiàn)的關(guān)鍵代碼:private void initimageview() listimage = new arraylist();for (int i = 0; i list.size() * 100; i+) final int a = (i % list.size();final imageview imageview = new imageview(getactivity(); imageview.settag(list.get(a).getbgoodsorstoreno();imagevie

42、w.setscaletype(imageview.scaletype.fit_xy);imageview.setonclicklistener(new view.onclicklistener() overridepublic void onclick(view v) string page = (string) imageview.gettag();if (page.equals(2) intent intent = new intent(getactivity(), goodsdetailsactivity.class); intent.putextra(storeno, list.get

43、(a).getcstoreno();intent.putextra(goodsno, list.get(a).getadcgoodsno();intent.putextra(type, firstpagefragment);intent.putextra(cmall_no, list.get(a).getcmall_no();startactivity(intent); else if (page.equals(1) intent intent = new intent(getactivity(), aroundcontentactivity.class); intent.putextra(s

44、toreno, list.get(a).getcstoreno();intent.putextra(storename, list.get(a).getcstorename();intent.putextra(cmall_no, list.get(a).getcmall_no();intent.putextra(type, firstpagefragment);startactivity(intent);if (page.equals(0) intent intent = new intent(getactivity(), webviewactivity.class); intent.putextra(url, list.get(a).geta

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論