中文字幕高清在线,中文字幕在线电影观看,中文字幕在线看,免费国产一区二区三区,男攻调教双性男总裁,热热涩热热狠狠色香蕉综合,亚洲精品网站在线观看不卡无广告

簡(jiǎn)析安卓版自駕天氣手機(jī)應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)論文

時(shí)間:2021-07-12 14:11:49 論文 我要投稿

簡(jiǎn)析安卓版自駕天氣手機(jī)應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)論文

  1.總體設(shè)計(jì)

簡(jiǎn)析安卓版自駕天氣手機(jī)應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)論文

  本系統(tǒng)主要是實(shí)現(xiàn)一個(gè)以自駕出行線路天氣和景區(qū)信息為核心業(yè)務(wù)的移動(dòng)端,隨時(shí)隨地為用戶提供路線天氣和旅游信息服務(wù)。用戶在自駕游途中,打開(kāi)應(yīng)用可以查看“出發(fā)地—途徑地—目的地”的天氣情況,同時(shí)還提供美食信息,購(gòu)物信息。本應(yīng)用將這些信息以景點(diǎn)為基礎(chǔ)聯(lián)合起來(lái)。用戶可以通過(guò)一個(gè)景點(diǎn)就獲取到景點(diǎn)周邊的美食、購(gòu)物等信息,可以一站式的規(guī)劃自己的出行安排。

  本應(yīng)用的主要分為:天氣模塊、出行模塊、景點(diǎn)模塊和實(shí)景模塊。(如圖1 所示)本應(yīng)用由三個(gè)層次組成,分別為底層模塊、支持模塊和業(yè)務(wù)模塊。本著依賴項(xiàng)規(guī)則:源碼依賴項(xiàng)只能向上指向,上層里的所有項(xiàng)不能了解下層所發(fā)生的內(nèi)容。

  2.設(shè)計(jì)與實(shí)現(xiàn)

  2.1 天氣模塊的設(shè)計(jì)與實(shí)現(xiàn)

  天氣模塊本身是一個(gè)Fragment,基于產(chǎn)品原型圖、用戶體驗(yàn)的一致性和APK 框架的設(shè)計(jì)思想,使用了Fragment 內(nèi)嵌套五個(gè)子Fragment 的形式去實(shí)現(xiàn)天氣的子模塊。各子模塊的Fragment 的生命周期由自己把控,當(dāng)Tab 切換到子模塊上時(shí),子模塊開(kāi)始執(zhí)行自己的生命周期。

  2.1.1 預(yù)報(bào)和實(shí)況模塊

  將布局文件和Fragment 類(lèi)建立起映射,同時(shí)給布局上的控件和類(lèi)里面的控件對(duì)象建立綁定關(guān)系通過(guò)getJSON 方法從網(wǎng)絡(luò)中獲取天氣預(yù)報(bào)和實(shí)況數(shù)據(jù)。在安卓4.0 版本及其以上的系統(tǒng),為了防止網(wǎng)絡(luò)這一耗時(shí)操作阻塞UI 的繪制。因此,新開(kāi)線程異步地進(jìn)行網(wǎng)絡(luò)訪問(wèn)以獲取服務(wù)器返回的JSON 對(duì)象。本應(yīng)用中網(wǎng)絡(luò)的訪問(wèn)均是通過(guò)這種模式去實(shí)現(xiàn)。

  2.1.2 趨勢(shì)圖

  趨勢(shì)圖使用畫(huà)布類(lèi)自行繪制,并提供API 修改趨勢(shì)圖的走向。天氣趨勢(shì)中的折線圖其實(shí)現(xiàn)的難度在于,需要一個(gè)算法去計(jì)算折線上的點(diǎn)在屏幕上的位置,折線兩點(diǎn)之間的度和計(jì)算文本的位置。本應(yīng)用使用坡度系數(shù)這個(gè)值去定制折線。

  2.1.2.1 通過(guò)屏幕的寬和所需要顯示的點(diǎn)數(shù)計(jì)算出每一段折線X 軸投影的長(zhǎng)度。float wOffset= ((float) this.getWidth() / (2 * topTem.length ‐ 1)) * 2;//X 軸投影長(zhǎng)度

  2.1.2.2 通過(guò)屏幕的高和坡度系數(shù),以及要顯示數(shù)據(jù)的最大值和最小值計(jì)算出中軸線。

  2.1.3 分析圖

  安卓系統(tǒng)中內(nèi)置了高性能的Webkit 瀏覽器,在SDK 中被封裝成了WebView。首先通過(guò)網(wǎng)絡(luò)模塊提取URL,然后使用loadUrl()語(yǔ)句調(diào)用,即可在Webview 里面展示網(wǎng)頁(yè)。

  2.2 出行模塊的設(shè)計(jì)與實(shí)現(xiàn)

  2.2.1 路線管理

  路線管理由路線列表和路線定制所組成,在一個(gè)FrameLayout 中寫(xiě)兩個(gè)布局,通過(guò)設(shè)置布局的可見(jiàn)度,顯示不同的布局。

  在布局文件中,使用幀布局包裹兩個(gè)相對(duì)布局,其中一個(gè)相對(duì)布局的可見(jiàn)度為隱藏。并在JAVA 代碼中,對(duì)RadioButton 進(jìn)行監(jiān)聽(tīng),當(dāng)點(diǎn)擊到其中一個(gè)時(shí),路線查看界面隱藏,路線定制界面展示,反之亦然。

  2.2.2 地圖模塊

  天氣的預(yù)報(bào)、實(shí)況、預(yù)警以及路線的實(shí)況都與地圖有關(guān),應(yīng)用的地圖使用百度地圖SDK,通過(guò)其提供的'API 進(jìn)行路線的繪制,地圖經(jīng)緯度的采集。

  自定義線路的實(shí)現(xiàn):有兩種形式,一是沒(méi)有途徑點(diǎn)的形式,一是有途經(jīng)點(diǎn)的形式,沒(méi)有途徑點(diǎn),即調(diào)用 drivingSearch(String strat, MKPlanNode node1, String end, MKPlanNode node2)方法就可以在地圖上顯示出路線了,如果擁有途經(jīng)點(diǎn),就調(diào)用它的一個(gè)重載方法—drivingSearch(String strat, MKPlanNode node1, String end, MKPlanNode node2,List nodes)

  通過(guò)drivingSearch 方法我們可以在地圖上展示出一條路線出來(lái)。路線的繪制,即在圖上確認(rèn)一系列的點(diǎn),將這些點(diǎn)連接成線段,故可以得到起點(diǎn)城市、途經(jīng)點(diǎn)城市和終點(diǎn)城市的經(jīng)緯度,通過(guò)這些經(jīng)緯度,我們?cè)谄鋂軸的做出一定的偏移量,即可繪制出所需要展示的預(yù)報(bào)、實(shí)況和預(yù)警信息。

  2.3 景點(diǎn)模塊的設(shè)計(jì)與實(shí)現(xiàn)

  2.3.1 景點(diǎn)導(dǎo)航模塊

  景點(diǎn)導(dǎo)航模塊由三部分構(gòu)成,一是熱門(mén)景區(qū)列表,二是全國(guó)熱門(mén)景區(qū)列表(按省分),三是景點(diǎn)搜索。

  熱門(mén)景區(qū)列表是一個(gè)ListView,用于展示熱門(mén)景區(qū),點(diǎn)擊可以跳轉(zhuǎn)到景點(diǎn)介紹,以及景點(diǎn)的吃住行購(gòu)。

  全國(guó)熱門(mén)景點(diǎn)列表是結(jié)合百度地圖SDK 來(lái)實(shí)現(xiàn)的,在省級(jí)縮放度的地圖上,每一個(gè)省份在地圖上的表現(xiàn)是一個(gè)Button,點(diǎn)擊進(jìn)去就可以看到該省份的熱門(mén)城市。

  2.3.2 吃住行購(gòu)模塊

  該模塊采用APK 框架,上方的Tab + 下面的Fragment。其中吃住購(gòu)的實(shí)現(xiàn)相同,均是一排篩選器和一個(gè)ListView構(gòu)成。行模塊是基于百度地圖SDK 的二次開(kāi)發(fā),展示景點(diǎn)的位置。篩選器有三個(gè),分別是距離、類(lèi)型和推薦度,采用了自定義Popup Window View 的方式實(shí)現(xiàn)。首先自定義一個(gè)View 類(lèi)繼承PopupWindow 和自定義的SpinnerAdapter,然后使用時(shí),初始化,并填充數(shù)據(jù)。

  2.4 實(shí)景模塊的設(shè)計(jì)與實(shí)現(xiàn)

  圖片瀑布流,即圖片如瀑布般依次展示在屏幕上。對(duì)圖片進(jìn)行分組,以寬度為定值限制圖片大小,向布局中動(dòng)態(tài)添加指定列數(shù)。

  為了在圖片瀑布流的內(nèi)存使用一直保持在一個(gè)合理的范圍,采用了LRU 內(nèi)存緩存技術(shù),它的主要算法原理是把最近使用的對(duì)象用強(qiáng)引用存儲(chǔ)在 LinkedHashMap 中,并且把最近最少使用的對(duì)象在緩存值達(dá)到預(yù)設(shè)定值之前從內(nèi)存中移除。

【簡(jiǎn)析安卓版自駕天氣手機(jī)應(yīng)用的設(shè)計(jì)與實(shí)現(xiàn)論文】相關(guān)文章:

簡(jiǎn)析普通高職院校校園網(wǎng)絡(luò)的設(shè)計(jì)與實(shí)現(xiàn)論文04-22

簡(jiǎn)析私人銀行設(shè)計(jì)論文04-21

基于Web Service技術(shù)的天氣達(dá)人安卓系統(tǒng)的設(shè)計(jì)論文04-20

探討安卓系統(tǒng)的手機(jī)定位軟件開(kāi)發(fā)與設(shè)計(jì)論文02-26

曾卓《懸?guī)r邊的樹(shù)》簡(jiǎn)析12-06

安卓手機(jī)軟件課件03-30

安卓手機(jī)廣告語(yǔ)01-20

安卓手機(jī)選購(gòu)指南02-25

《看云識(shí)天氣》的課文簡(jiǎn)析12-13