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

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

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

            1.總體設(shè)計

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

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

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

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

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

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

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

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

            2.1.2 趨勢圖

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

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

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

            2.1.3 分析圖

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

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

            2.2.1 路線管理

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

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

            2.2.2 地圖模塊

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

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

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

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

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

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

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

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

            2.3.2 吃住行購模塊

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

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

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

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

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

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

          簡析私人銀行設(shè)計論文04-21

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

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

          曾卓《懸?guī)r邊的樹》簡析12-06

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

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

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

          《看云識天氣》的課文簡析12-13

          国产精品好爽好紧好大_亚洲男人综合久久综合_欧美福利电影a在线播放www_国产精品99久久精品无码

                  日本又黄又湿又高潮不卡网站 | 自拍视频一区二区三区在线 | 青青国产视频久久 | 色色中文字幕色色亚洲 | 亚洲小电影在线观看的网址 | 中文字幕第1页中文字幕在 天天免費国产在线观看 |