張妍 李少元 李哲源 陳元忠 冀煒 孫浩 大連海洋大學(xué)
基于Android的新聞app的設(shè)計(jì)
張妍 李少元 李哲源 陳元忠 冀煒 孫浩 大連海洋大學(xué)
隨著移動(dòng)互聯(lián)網(wǎng)的迅猛發(fā)展,為了滿足用戶方便、快速的閱讀新聞資訊的需求,本文以Android、Retrofit+RxJava及SQLite為技術(shù)手段,設(shè)計(jì)并實(shí)現(xiàn)了一款可用于閱讀新聞的app。該app實(shí)現(xiàn)了文字、圖片、視頻等多種形式推送的新聞資訊,為用戶提供了一個(gè)隨時(shí)隨地獲取資訊的移動(dòng)平臺(tái),能夠滿足使用者個(gè)性化的需求。
Android Java 數(shù)據(jù)庫(kù)
在時(shí)代迅速發(fā)展的今天,手機(jī)查閱資料方便快捷,成為了每個(gè)人的必需品,人們逐漸遠(yuǎn)離紙質(zhì)版?zhèn)髅焦ぞ叨D(zhuǎn)向通過(guò)手機(jī)查看最新資訊。新聞app包含新聞模塊,圖片以及視頻新聞多種形式滿足用戶的不同需求,更有登錄注冊(cè),分享推薦以及定時(shí)天氣等功能,系統(tǒng)框架采用Retrofit+RxJava模式,數(shù)據(jù)庫(kù)采用SQLite,后臺(tái)頁(yè)面采用Bomb云存儲(chǔ)。
手機(jī)新聞app包含四大模塊:新聞模塊,圖片瀏覽,視頻播放和個(gè)人中心。
頭部用ViewPager,熱點(diǎn)新聞可點(diǎn)擊查看;內(nèi)容用RecyclerView存放,上拉加載更多,下拉刷新來(lái)獲取服務(wù)器最新數(shù)據(jù);詳情用WebView獲取數(shù)據(jù),可以選擇已經(jīng)發(fā)布的app的數(shù)據(jù),也可用瀏覽器打開(kāi);右側(cè)標(biāo)題欄用OptionMenu,有收藏,點(diǎn)贊,評(píng)論以及分享;以數(shù)據(jù)的形式上傳到Bomb云服務(wù)器,方便查看以及管理。
整體布局用CoordinatorLayout來(lái)提升UI的美觀以及用戶體驗(yàn);可以左右滑動(dòng)的ViewPager使用戶可以查看不同類型的圖片;用戶右滑時(shí)顯示Drawlayout導(dǎo)航欄;進(jìn)入圖片詳情,圖片下面是收藏,保存到本地,設(shè)為壁紙及分享按鈕,可進(jìn)行多種操作;圖片占空間較大,對(duì)圖片做二次采樣處理,緩解緊張的內(nèi)存。
頭部輪播欄用ViewPager,自定義輪播時(shí)間,監(jiān)聽(tīng)觸摸事件;視頻內(nèi)容存放在RecyclerView中,上拉刷新獲取最新數(shù)據(jù);視頻詳情采用Android原生的視頻播放器Video,自定義需求實(shí)現(xiàn)視頻的緩存加載和加載時(shí)進(jìn)度條的加入;如有喜愛(ài)的視頻可以點(diǎn)擊收藏按鈕,app會(huì)把收藏上傳到服務(wù)器,可以在個(gè)人中心里查看收藏的視頻鏈接。
整體布局的最外層嵌套ScrollView防止界面溢出;最上面用ImageView以及TextView來(lái)顯示用戶的頭像以及個(gè)人信息,并對(duì)頭像圖片做了模糊處理;三個(gè)收藏界面可以分別查看收藏的新聞,圖片,以及視頻,并且增加長(zhǎng)按刪除,以及自動(dòng)刷新界面的功能;復(fù)寫(xiě)Onresume方法使數(shù)據(jù)的獲取實(shí)時(shí)更新,這樣就會(huì)保證在更換頭像之后app會(huì)重新從服務(wù)器獲?。毁~戶安全功能提供了修改密碼的界面,可以增加賬戶的安全性;意見(jiàn)反饋以及設(shè)置功能可以保障用戶和開(kāi)發(fā)者的實(shí)時(shí)交流,對(duì)整個(gè)app的版本迭代起重要作用。
通過(guò)設(shè)計(jì)JavaBean對(duì)數(shù)據(jù)庫(kù)進(jìn)行設(shè)計(jì),因?yàn)閍pp中很多實(shí)體,如用戶數(shù)據(jù),消息,收藏,評(píng)論,點(diǎn)贊等,可以通過(guò)JavaBean對(duì)象把它們保存起來(lái),然后上傳云數(shù)據(jù)庫(kù),在需要的時(shí)候通過(guò)云數(shù)據(jù)庫(kù)來(lái)獲取數(shù)據(jù)。首先生成UserBean類文件,包括用戶賬號(hào),密碼,創(chuàng)建時(shí)間,收藏的新聞,圖片,視頻等。然后在UserBean類中定義對(duì)象的屬性以及類型結(jié)構(gòu),把這個(gè)類當(dāng)成一個(gè)表,表里的數(shù)據(jù)結(jié)構(gòu)和類是一樣的,從這個(gè)角度出發(fā)來(lái)進(jìn)行設(shè)計(jì)。
隨著Android系統(tǒng)的廣泛應(yīng)用和智能手機(jī)軟件的不斷更新?lián)Q代,本文設(shè)計(jì)了基于Android的新聞app,為眾多Android用戶提供了一個(gè)獲取新聞資訊的平臺(tái)。通過(guò)該app,用戶可以更好地利用零散的時(shí)間,隨時(shí)隨地閱讀感興趣的內(nèi)容,還可以發(fā)表看法,和網(wǎng)友進(jìn)行分享。當(dāng)然,該新聞app還有不足之處,在細(xì)節(jié)設(shè)計(jì)方面還有需要進(jìn)一步完善的地方,在應(yīng)用的過(guò)程中,要根據(jù)用戶的需求反饋,不斷更新其功能。
[1] 鮑曉.基于Android平臺(tái)的新聞資訊閱讀軟件的設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)應(yīng)用,2013,33(S2):279-282.
[2] 曹雙雙.基于Android手機(jī)的校園移動(dòng)平臺(tái)設(shè)計(jì)[J].軟件導(dǎo)刊,2015,14(8):179-181.
[3] 楊秀菊.基于Android移動(dòng)學(xué)習(xí)平臺(tái)研究[J].智能計(jì)算機(jī)與應(yīng)用,2015,2(5):93-94.
[4] 李彬,趙連軍,劉帥. Android平臺(tái)下移動(dòng)學(xué)習(xí)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2016,(8):78-82.
大連海洋大學(xué)創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目資助。
張妍(1977—),漢,遼寧鞍山人,講師,碩士,主要研究方向:電子線路教學(xué)與實(shí)踐。李少元,李哲源,陳元忠,冀煒,孫浩大連海洋大學(xué)信息工程學(xué)院學(xué)生。