![基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)_第1頁(yè)](http://file4.renrendoc.com/view/aa4d1e3b76d861a75971f6823a1e6d58/aa4d1e3b76d861a75971f6823a1e6d581.gif)
![基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)_第2頁(yè)](http://file4.renrendoc.com/view/aa4d1e3b76d861a75971f6823a1e6d58/aa4d1e3b76d861a75971f6823a1e6d582.gif)
![基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)_第3頁(yè)](http://file4.renrendoc.com/view/aa4d1e3b76d861a75971f6823a1e6d58/aa4d1e3b76d861a75971f6823a1e6d583.gif)
![基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)_第4頁(yè)](http://file4.renrendoc.com/view/aa4d1e3b76d861a75971f6823a1e6d58/aa4d1e3b76d861a75971f6823a1e6d584.gif)
![基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)_第5頁(yè)](http://file4.renrendoc.com/view/aa4d1e3b76d861a75971f6823a1e6d58/aa4d1e3b76d861a75971f6823a1e6d585.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)
保密類別__(dá)____(dá)編號(hào)_____(dá)___基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)本科畢業(yè)論文基于Android平臺(tái)的手機(jī)電子書閱讀器設(shè)計(jì)院(系)別傳媒技術(shù)學(xué)院專業(yè)數(shù)字媒體技術(shù)班級(jí)08數(shù)媒技術(shù)(影視)姓名王哲學(xué)號(hào)201010014指導(dǎo)教師王莉莉中國(guó)傳媒大學(xué)南廣學(xué)院2012年4月12日摘要在科技日益發(fā)達(dá)的今天,社會(huì)競(jìng)爭(zhēng)越來(lái)越激烈,這要求人們不斷的攝取信息來(lái)充實(shí)自己.要求人們能隨時(shí)隨地的了解并獲取所需的信息。在這種情況下,電子書閱讀器剛好滿足了人們便捷地獲取信息的需求.本文設(shè)計(jì)的手機(jī)電子書閱讀器是基于Android平臺(tái)設(shè)計(jì)的,Android平臺(tái)是目前發(fā)展最快、最具市場(chǎng)前景的智能手機(jī)操作系統(tǒng)。本系統(tǒng)是根據(jù)GoogleAndroid平臺(tái)用戶的喜好和其平臺(tái)的特性而設(shè)計(jì)的,在GoogleAndroid平臺(tái)自帶的SDK1.5環(huán)境下,運(yùn)用Eclipse,Photoshop等相關(guān)工具進(jìn)行開(kāi)發(fā)的。本文介紹了GoogleAndroid開(kāi)發(fā)的流程,討論了基于Android平臺(tái)應(yīng)用程序開(kāi)發(fā)的關(guān)鍵技術(shù),對(duì)手機(jī)電子書閱讀器做了詳細(xì)的需求分析,并重點(diǎn)介紹了基于Android平臺(tái)的手機(jī)電子書閱讀器的總體設(shè)計(jì),主要包括手機(jī)電子書閱讀器的架構(gòu)設(shè)計(jì)、各功能模塊的設(shè)計(jì)與實(shí)現(xiàn)。?本文設(shè)計(jì)的手機(jī)電子書閱讀器通過(guò)了功能和性能方面的測(cè)試,證明了本文設(shè)計(jì)方案的可行性.通過(guò)對(duì)基于Android平臺(tái)手機(jī)電子書閱讀器的設(shè)計(jì)與實(shí)現(xiàn)的介紹,希望能為今后開(kāi)發(fā)出功能更強(qiáng)大的閱讀器提供有益的借鑒。關(guān)鍵詞:Android平臺(tái);電子書閱讀器;JavaABSTRACTToday,it’samoreadvancedintechnology,increasinglycompetitivesociety,whichrequirespeopletotheintakeofinformationtoenrichthemselves.Requirespeopletoalwaysbeintheknowandgettherequiredinformation。Inthiscase,thenewsreaderjusttomeettheneedsofpeopleknowofexternalobjects。InthispapertheebookreaderismobilephonedesignbasedontheAndroidplatformofthedesign,Androidplatformisthefastestdeveloping,themostmarketprospectofsmartphoneoperatingsystem.Inthissystem,GoogleAndroidplatformisbasedontheuser’spreferencesandcharacteristicsofitsplatformdesigned,inGoogleAndroidplatform,comeswithSDK1.5environment,theuseoftheEclipse,PhotoShopandothertoolsfordevelopment.ThisarticleintroducesthedevelopmentprocessoftheGoogleAndroid,discussestheapplicat(yī)iondevelopmentbasedontheAndroidplat(yī)formofthekeytechnology,todoadetailedanalysisofthedemandforMobilephoneebookandintroducesthefocusonMobilephoneebookreaderoverall'sdesign.includestheebookreadermobilephonedesignmainly,architecturedesignandthefunctionofthesystem.Inthispapertheebookreaderthroughmobilephonedesignofthefunctionandperformancetest,provedthefeasibilityofthisdesign.ThroughtotheAndroidplatformbasedonmobilephoneebookreaderdesignandimplementationoftheintroduction,thehopeforthedevelopmentinthefuturemorepowerfulofferbeneficialreferenceforthereader.Keywords:Android;E-bookreader;Java目錄TOC\o"1—2"\h\z\u摘要PAGEREF_Toc322855401\hIHYPERLINK\l"_Toc322855402”ABSTRACTPAGEREF_Toc322855402\hII緒論P(yáng)AGEREF_Toc322855403\h1_Toc322855407"一、相關(guān)理論及關(guān)鍵技術(shù)PAGEREF_Toc322855407\h3HYPERLINK\l”_Toc322855408"(一)Andriod特征PAGEREF_Toc322855408\h4HYPERLINKencoding="utf-8"?〉〈LinearLayoutxmlns:android="http://schemas。android。com/apk/res/android"android:layout_width="mat(yī)ch_parent”android:layout_height=”match_parent”android:orientation="vertical”android:background=”@drawable/bg1”〉〈ListViewandroid:id="@+id/listView”android:layout_width="mat(yī)ch_parent”android:layout_height="match_parent"/〉</LinearLayout>?(2)書庫(kù)界面設(shè)計(jì)由于書庫(kù)中的書籍是以書架的形式展現(xiàn)的,所以筆者采用了GridView控件進(jìn)行顯示,其布局代碼如下:<?xmlversion="1.0"encoding="utf-8"?>〈LinearLayoutxmlns:android=”http://schemas。android.com/apk/res/android"android:layout_width=”match_parent"android:layout_height="mat(yī)ch_parent"android:orientation="vertical”android:background="@drawable/shujia”〉<GridView android:id="@+id/imageGridView"?android:layout_width=”fill_parent" android:layout_height="wrap_content”?/></LinearLayout〉書庫(kù)界面如圖10所示。圖10書庫(kù)界面(3)寫書界面設(shè)計(jì)讀者可以根據(jù)自己的情感書寫,并將其保存在sdcard中.其布局代碼如下:〈?xmlversion="1.0”encoding=”utf-8"?><LinearLayoutxmlns:android="http://schemas。android。com/apk/res/android"android:layout_width=”match_parent”android:layout_height="match_parent"android:orientat(yī)ion="vertical”android:background="@drawable/tianjia”>〈LinearLayoutandroid:layout_width="fill_parent"android:layout_h(yuǎn)eight=”wrap_content"><TextViewandroid:id=”@+id/titleLab”android:layout_width=”wrap_content”android:layout_height="40dp"android:text="標(biāo)題”android:paddingRight="5px”/>〈EditTextandroid:id=”@+id/titleTxt”android:layout_width=”fill_parent"android:layout_height=”40dp"/></LinearLayout><LinearLayoutandroid:layout_width="fill_parent"android:layout_h(yuǎn)eight="40dp">〈TextViewandroid:id="@+id/authorLab”android:layout_width="wrap_content"android:layout_height="40dp"android:text="作者"android:paddingRight="5px"/><EditTextandroid:id=”@+id/authorTxt”android:layout_width="fill_parent”android:layout_height=”40dp"/〉〈/LinearLayout〉〈LinearLayoutandroid:layout_width="fill_parent"android:layout_height="40dp”android:layout_marginTop=”5px”>〈TextViewandroid:id=”@+id/timeLab"android:layout_width="wrap_content"android:layout_height="40dp"android:text="時(shí)間"android:paddingRight="5px"/〉 <TextViewandroid:id="@+id/timeLab2"android:layout_width="wrap_content"android:layout_height="40dp"android:paddingRight=”5px"/〉</LinearLayout><TextViewandroid:id="@+id/contentLab"android:layout_width=”wrap_content"android:layout_height=”40dp"android:text=”內(nèi)容”android:paddingRight="5px”/><EditTextandroid:id="@+id/contentTxt"android:layout_width="fill_parent"android:layout_h(yuǎn)eight="150dp"android:gravity=”left”/><LinearLayoutandroid:layout_width="fill_parent”android:layout_height=”40dp"android:gravity=”center"><Buttonandroid:id=”@+id/okBut”android:layout_width="wrap_content”android:layout_height=”40dp”android:text="確定"/><Buttonandroid:id="@+id/noBut”android:layout_width=”wrap_content”android:layout_height="40dp"android:text=”取消"/>〈/LinearLayout>〈/LinearLayout〉寫書界面如圖11所示。圖11寫書界面3。頻道的切換在基于GoogleAndroid平臺(tái)的電子閱讀器中,頻道的切換主有兩個(gè)方面:在主界面的三個(gè)頻道的切換和在Menu功能鍵塊中的頻道的切換。(1)在主界面中的三個(gè)頻道的切換:筆者采用了自定義的控件TabActivity來(lái)進(jìn)行顯示,對(duì)頻道控制的關(guān)鍵代碼如下:TabHostth=getTabHost();TabSpectabSpec1=th.newTabSpec("tab1”);tabSpec1。setIndicat(yī)or("分類”,getResources().getDrawable(R.drawable.fenlei));tabSpec1。setContent(newIntent(this,ClassifyActivity.class));TabSpectabSpec2=th。newTabSpec("tab2”);tabSpec2。setIndicator("書庫(kù)",getResources()。getDrawable(R。drawable。book));tabSpec2。setContent(newIntent(this,BooksActivity.class));TabSpectabSpec4=th.newTabSpec("tab4”);tabSpec4。setIndicator(”寫書",getResources()。getDrawable(R.drawable.advanced));tabSpec4。setContent(newIntent(this,MamoAdd。class));??th。addTab(tabSpec1);th。addTab(tabSpec2);th。addTab(tabSpec4);(2)Menu功能鍵塊中的頻道的切換由于在Menu功能塊中包含的頻道較多,固采用了GoogleAndroid平臺(tái)經(jīng)典的MenuItem進(jìn)行顯示,而對(duì)該MenuItem進(jìn)行監(jiān)聽(tīng),當(dāng)點(diǎn)擊其中一個(gè)Item(既頻道)時(shí),將跳轉(zhuǎn)到該item(頻道)中去,其關(guān)鍵代碼如下:classButClickListenerimplementsOnMenuItemClickListener {?@Override??publicbooleanonMenuItemClick(MenuItemitem) ?{if(item==addMenu)?? {?…… ?} elseif(item==delMenu) ? { …… ??}elseif(item==modMenu)? {?……? ?}?? elseif(item==see(cuò)Menu) ?{?…… ??} ? elseif(item==flixkerMenu)? { …… } }}4.閱讀界面的顯示在基于GoogleAndroid平臺(tái)的電子書閱讀器中,當(dāng)用戶點(diǎn)擊了其選定的頻道,將該頻道的書籍內(nèi)容全部顯示給用戶,為此,筆者采用了Android平臺(tái)流行的TextView,其關(guān)鍵代碼如下:Intentintent=newIntent();????intent.setClassName(BooksActivity。this,"com。ketai。reader.ReadActivity”); ?StringbooksNameStrAll=arraylist.get(sign)。toString(); ?StringbooksNameStr=booksNameStrAll.substring(booksNameStrAll。indexOf("=”)+1,booksNameStrAll.indexOf(","));????Log。i("查看booksNameStr:",booksNameStr);? ?Log.i("查看書名:",booksNameStr); ? ?Stringsql=”selectbookspat(yī)hfrombookswherebooksname=’"+booksNameStr+"'";? System.out。println(”查看sql:”+sql); ??Cursorcursor=sqliteDatabase.rawQuery(sql,null);????arraylist=newArrayList(); ???StringboospathStr=null;?? while(cursor.moveToNext()) ? ?{ boospathStr=cursor.getString(cursor。getColumnIndex("bookspat(yī)h”)); ?System.out。println(”查看boospathStr:”+boospathStr);} ? ?cursor.close();?? intent.putExtra("bookspath",boospathStr);? startActivity(intent);? ??overridePendingTransition(R。anim.new_dync_in_from_right,R.a(chǎn)nim.new_dync_out_to_left); ? updateListView();5。數(shù)據(jù)的持久化在GoogleAndroid平臺(tái)中,數(shù)據(jù)的持久化,官方提供了四種方法,分別為:數(shù)據(jù)庫(kù)、ContentProvider、SharePerfrence、Files??紤]到基于GoogleAndroid平臺(tái)的手機(jī)電子書閱讀器的存儲(chǔ)量不是很大,且數(shù)據(jù)格式非常的規(guī)則,再上更新起來(lái)非常的頻繁,所以筆者采用了數(shù)據(jù)庫(kù)(GoogleAndroid平臺(tái)自帶的SQlite)來(lái)進(jìn)行數(shù)據(jù)的持久化。其關(guān)鍵代碼如下:StringbooksPathStr="";intbooksMarkInt=0;Stringsql="selectbookspat(yī)h,booksmarkfrombooksmarkwherebookspat(yī)h='”+booksPath+"'andbooksmark='"+booksMark+”'"; ??Log。i("查看書簽",sql);????Cursorcursor=sqliteDatabase.rawQuery(sql,null);? while(cursor.moveToNext())? ? {? ???booksPathStr=cursor.getString(cursor.getColumnIndex(”bookspath”));?booksMarkInt=cursor.getInt(cursor.getColumnIndex(”booksmark”)); ? } ? cursor.close(); ? Intentintent=newIntent(BooksMarkList.this,ReadActivity.class);?? intent。putExtra("bookspat(yī)h”,booksPathStr); ??intent.putExtra(”booksmark",booksMarkInt); ? startActivity(intent);?? ?Toasttoast=Toast。makeText(BooksMarkList。this,"打開(kāi)成功”,Toast.LENGTH_LONG); ? toast.show();6.SD卡的檢查在基于GoogleAndroid平臺(tái)下的電子書閱讀器,由于持久化的數(shù)據(jù)全部是放在SD卡上的,所以在程序運(yùn)行的時(shí)候必須對(duì)SDCard進(jìn)行檢測(cè)。其實(shí)現(xiàn)主要是通過(guò)向SD卡中寫入文件,若成功則表示此SD卡完好,若不成功則進(jìn)行相關(guān)的提示,并在此檢測(cè)完后,繼續(xù)對(duì)程序進(jìn)行監(jiān)聽(tīng),當(dāng)在程序運(yùn)行中出現(xiàn)SD卡拔出等相關(guān)情況時(shí),給出相應(yīng)的提示信息,其關(guān)鍵代碼如下所示:intindex=1;? while(true)? { ?StringextName=attrs。getAttributeValue(namespace,”extName"+index);//擴(kuò)展名?? intfileImageResId=attrs.getAttributeResourceValue(namespace,”fileImage"+index,0);//? ?if("”.equals(extName)||extName==null||fileImageResId==0)???{ ??break;? }?? fileImageResIdMap。put(extName,fileImageResId); index++;??} ?dirStack。push(sdcardDirectory);??addFiles();fileListAdapter=newFileListAdapter(getContext()); setAdapter(fileListAdapter);五、系統(tǒng)測(cè)試任何一個(gè)應(yīng)用程序的開(kāi)發(fā)都離不開(kāi)單元測(cè)試,單元測(cè)試是用來(lái)保證其系統(tǒng)健壯和穩(wěn)定。基于Android平臺(tái)的應(yīng)用程序自然也不例外。本文對(duì)手機(jī)電子書閱讀器軟件進(jìn)行了Activity打斷事件測(cè)試。(一)Android手機(jī)系統(tǒng)測(cè)試之打斷事件Android手機(jī)提供的打斷事件與以往手機(jī)有著一些機(jī)制上的不同,當(dāng)然也有很多跟以前一樣的機(jī)制。所以我們要從他的應(yīng)用程序打斷機(jī)理出發(fā),定制本系統(tǒng)的系統(tǒng)測(cè)試用例的打斷事件.打斷事件一般分為系統(tǒng)基本打斷事件;Back鍵;改變手機(jī)方向;長(zhǎng)按Home鍵,切換應(yīng)用程序;內(nèi)容沖突檢測(cè)(contentprovider);長(zhǎng)按Power鍵,調(diào)出關(guān)機(jī)窗口;Home鍵回homeapp,當(dāng)前測(cè)試的應(yīng)用就會(huì)放到后臺(tái)處于stop狀態(tài)。如果想監(jiān)控到Activity生命周期的變化,必然會(huì)在Create或Start等處有代碼來(lái)進(jìn)行處理。在startActivityForResu函數(shù)中,mInstrumentation.execStartActivity()一句讓我們看到至少有一個(gè)mInstrumentat(yī)ion的對(duì)象受委托在啟動(dòng)Activity,這個(gè)委托是有可能加入監(jiān)控動(dòng)作的。
publicvoidstartActivityForResult(Intentintent,intrequestCode){..。.....}在以perform開(kāi)頭的幾個(gè)函數(shù)中,本系統(tǒng)再次發(fā)現(xiàn)了對(duì)mInstrumentation對(duì)象的調(diào)用。例如performStart()函數(shù)。
finalvoidperformStart()?{??。.。。.。..。..}該類的接口主要有以下幾類:對(duì)Activity監(jiān)控對(duì)象的處理接口,Activity狀態(tài)改變時(shí)的回調(diào)通知接口,生成Activity和Application的接口,向Activity發(fā)送事件通知的接口,性能處理的接口等。先來(lái)看callActivityOnCreate()函數(shù)。
publicvoidcallActivityOnCreate(Activityactivity,Bundleicicle){。。.。.。.。..}再來(lái)看本文章前文提到的execStartActivity()函數(shù).
publicActivityResultexecStartActivity(。....。.?}(二)測(cè)試中發(fā)現(xiàn)的問(wèn)題及修復(fù)本系統(tǒng)在設(shè)計(jì)開(kāi)發(fā)的過(guò)程當(dāng)中,遇到了不少的問(wèn)題,在老師的細(xì)心幫助和指導(dǎo),在各位朋友,同時(shí)的同心協(xié)助下都已一一解決。本程序的最主要問(wèn)題是在文件源獲取時(shí),發(fā)生因?yàn)槭謾C(jī)儲(chǔ)存卡內(nèi)部文件繁瑣,樣式冗雜,導(dǎo)致本程序在遍歷內(nèi)存卡,添加可用文件的時(shí)候出現(xiàn)錯(cuò)誤的判斷,使得電子書不能正常的導(dǎo)入或者導(dǎo)入手機(jī)之后程序卻不能正確的讀取,在老師指導(dǎo)之下,本程序最終采用substring方法對(duì)儲(chǔ)存卡文件進(jìn)行便利和解析,從未的到文件的名稱,完美的解決了文件加載錯(cuò)誤的問(wèn)題。(三)本程序的擴(kuò)展功能本程序因?yàn)樵O(shè)計(jì)制作的時(shí)間和精力有限,僅僅只是達(dá)到之前預(yù)想的各種功能的實(shí)現(xiàn),并沒(méi)有達(dá)到真實(shí)意義上的完美,在測(cè)試過(guò)程中發(fā)現(xiàn)還有很多的功能可以進(jìn)行擴(kuò)展,此部分將會(huì)在以后的完善和程序升級(jí)過(guò)程中逐步完善.本程序界面問(wèn)題的完善針對(duì)本程序界面方面,因?yàn)闀r(shí)間有限,本程序的所有主題和背景燈均采用網(wǎng)絡(luò)資源進(jìn)行填充,使得本程序的界面顯示比較單調(diào)缺乏個(gè)人創(chuàng)意,在日后完善的過(guò)程中,可以通過(guò)專人設(shè)計(jì)或者自己進(jìn)行圖片處理使得本程序的界面變的更加優(yōu)化,讓用戶在閱讀書籍的時(shí)候有更加絢麗的視覺(jué)體驗(yàn).與其他應(yīng)用程序的同步處理在測(cè)試過(guò)程中,本程序運(yùn)行穩(wěn)定,沒(méi)有發(fā)現(xiàn)與其他程序不兼容的問(wèn)題,所以在以后的功能擴(kuò)展方面可以考慮為本程序添加同步服務(wù),比如在運(yùn)行次閱讀器的時(shí)候可以同時(shí)收聽(tīng)音樂(lè)廣播等等,這樣用戶可以再閱讀自己喜歡的電子書的同時(shí)還聽(tīng)到動(dòng)聽(tīng)的音樂(lè).網(wǎng)絡(luò)資源問(wèn)題用戶在添加自己喜歡的電子書的時(shí)候,如果可以在線直接添加,會(huì)使得閱讀更加便捷,為此在對(duì)本程序的升級(jí)階段,準(zhǔn)備為此程序添加在線書城模塊。因?yàn)樵诂F(xiàn)有的網(wǎng)頁(yè)上進(jìn)行電子書下載產(chǎn)生的資費(fèi)問(wèn)題,本程序?qū)⒃O(shè)計(jì)制作一個(gè)屬于本程序的獨(dú)立網(wǎng)站并做到在線更新下載資源,不但解決電子書源的問(wèn)題,也做到零資費(fèi)下載,為所有的用戶提供便捷服務(wù)。(四)測(cè)試結(jié)果根據(jù)上面的方法,對(duì)本文的手機(jī)電子書閱讀系統(tǒng)進(jìn)行測(cè)試,得到的效果圖如下。1.程序剛啟動(dòng)的測(cè)試測(cè)試效果如圖12所示。圖12啟動(dòng)測(cè)試圖(1)效果解析本程序在啟動(dòng)的過(guò)程中,首先經(jīng)過(guò)動(dòng)畫界面的跳轉(zhuǎn),Activity運(yùn)行了oncreate()、Onstart()、onresume()三種方法,經(jīng)過(guò)對(duì)Activity方法生命周期的查看證明(可參考本文第一章),此步驟為正確的運(yùn)行方法.(2)可能問(wèn)題程序運(yùn)行時(shí)出錯(cuò),系統(tǒng)提示無(wú)法啟動(dòng)Activity,對(duì)此常見(jiàn)的錯(cuò)誤,解決方法為對(duì)發(fā)射界面中的Activity進(jìn)行相應(yīng)的注冊(cè),即可解決此問(wèn)題。2.跳轉(zhuǎn)到另一界面測(cè)試測(cè)試效果如圖13所示。圖13跳轉(zhuǎn)測(cè)試圖效果解析跳轉(zhuǎn)過(guò)程運(yùn)行在程序的后臺(tái),相關(guān)運(yùn)行步驟無(wú)法直觀看到,但是通過(guò)對(duì)圖13的觀察我們可以發(fā)現(xiàn),本程序在運(yùn)行onpause()方法,將之前已有的Activity終止,再通過(guò)對(duì)oncreate()、Onstart()方法的調(diào)用實(shí)現(xiàn)頁(yè)面的跳轉(zhuǎn)??赡軉?wèn)題頁(yè)面無(wú)法跳轉(zhuǎn)、程序提示異常錯(cuò)誤。針對(duì)此的解決方法依次為重寫intent點(diǎn)名跳轉(zhuǎn)的發(fā)送界面和目的界面、在mainfest發(fā)射界面當(dāng)中注冊(cè)目的界面的信息將會(huì)解決以上的問(wèn)題。3.按返回鍵測(cè)試測(cè)試效果如圖14所示。圖14按返回鍵測(cè)試圖效果解析當(dāng)用戶點(diǎn)擊返回鍵的時(shí)候,Activity實(shí)際的操作過(guò)程是先銷毀當(dāng)前的界面然后將之間終止的界面重新運(yùn)行,通過(guò)對(duì)圖14得觀察我們可以發(fā)現(xiàn),系統(tǒng)通過(guò)onpause方法終止當(dāng)前的界面,然后在oncreate()、Onstart()方法進(jìn)行運(yùn)行完成返回的實(shí)現(xiàn),經(jīng)過(guò)測(cè)試,此過(guò)程正確.可能問(wèn)題返回鍵點(diǎn)擊沒(méi)有反應(yīng)、點(diǎn)擊后頁(yè)面無(wú)法跳轉(zhuǎn)針對(duì)此問(wèn)題依次解決方法為重寫程序的onkeydown方法并在點(diǎn)擊事件中書寫intent頁(yè)面跳轉(zhuǎn)、通過(guò)dismiss()銷毀當(dāng)前顯示的頁(yè)面。4。按home鍵測(cè)試測(cè)試效果如圖15所示。圖15按home鍵測(cè)試圖效果解析用戶按home鍵的時(shí)候本程序?qū)崿F(xiàn)的是關(guān)閉本程序,銷毀所有的Activity活動(dòng),因此圖15顯示系統(tǒng)調(diào)用onstop()方法關(guān)閉程序。經(jīng)過(guò)測(cè)試此過(guò)程正確。可能問(wèn)題home鍵點(diǎn)擊沒(méi)有反應(yīng)程序無(wú)法終止。出現(xiàn)此問(wèn)題為程序在關(guān)閉的時(shí)候沒(méi)有銷毀所有activity,解決辦法為調(diào)用dismiss()方法,手動(dòng)銷毀所有的Activity,使程序所有進(jìn)程關(guān)閉。本測(cè)試采用Activity的斷點(diǎn)測(cè)試,對(duì)程序的不同運(yùn)作步驟進(jìn)行分析。在程序中添加相關(guān)的斷點(diǎn),將程序劃分為不同的等份,進(jìn)行測(cè)試。測(cè)試結(jié)果比較理想,沒(méi)有發(fā)生比較嚴(yán)重的程序問(wèn)題。結(jié)語(yǔ)隨著智能手機(jī)和3G網(wǎng)絡(luò)的發(fā)展,手機(jī)的功能和性能、通信網(wǎng)絡(luò)的數(shù)據(jù)業(yè)務(wù)支持能力將極大增強(qiáng),手機(jī)將脫離傳統(tǒng)的打電話、發(fā)短信等基本的功能,而基于智能手機(jī)強(qiáng)大的處理能力和可擴(kuò)展能力,基于3G網(wǎng)絡(luò)高速數(shù)據(jù)傳輸,越來(lái)越多的功能和業(yè)務(wù)將被開(kāi)發(fā)出來(lái)并大規(guī)模的應(yīng)用.而Android手機(jī)平臺(tái)作為移動(dòng)平臺(tái)的新秀,以其良好的性能和強(qiáng)大的功能,以開(kāi)源的形式受到廣大開(kāi)發(fā)者和手機(jī)制造商的青睞,在這種情況下,GoogleAndroid無(wú)疑成為我們進(jìn)行智能手機(jī)開(kāi)發(fā)的一個(gè)非常好的選擇。本文,筆者通過(guò)對(duì)Android這個(gè)橫空出世的平臺(tái)的簡(jiǎn)要介紹,概述了其眾多的優(yōu)點(diǎn)和其對(duì)整個(gè)智能手機(jī)乃至手機(jī)軟件開(kāi)發(fā)行業(yè)的意義和重要性,闡明了其研究的重要性和必行性.而后,筆者根據(jù)AndroidMarket上用戶的喜愛(ài)程度來(lái)選擇了研究方向:基于Android手機(jī)平臺(tái)的電子書閱讀器.并根據(jù)此項(xiàng)目自身的特點(diǎn)和Android平臺(tái)的特點(diǎn),選取了相應(yīng)的開(kāi)發(fā)工具,并對(duì)其做了簡(jiǎn)單的介紹。而后根據(jù)電子書閱讀器的特點(diǎn)選擇了數(shù)據(jù)庫(kù)存取方式,并根據(jù)Android手機(jī)的特點(diǎn)制定了基于Andorid手機(jī)平臺(tái)下的電子商業(yè)閱讀器的布局(界面),然后根據(jù)Android平臺(tái)的自身特點(diǎn)進(jìn)行了開(kāi)發(fā),并對(duì)其關(guān)鍵性代碼進(jìn)行了說(shuō)明.并對(duì)該項(xiàng)目做了相關(guān)的測(cè)試。在本課題完成的過(guò)程中,筆者完成了以下工作:1。閱讀了大量的相關(guān)書籍,對(duì)Android手機(jī)平臺(tái)的開(kāi)發(fā)有了較為深層次的了解。2.實(shí)踐了開(kāi)發(fā)環(huán)境的搭建,并最開(kāi)發(fā)工具做了相關(guān)的了解和優(yōu)化,最終選取了當(dāng)前開(kāi)發(fā)環(huán)境和開(kāi)發(fā)工具的配置。3.開(kāi)發(fā)并測(cè)試了基于Android平臺(tái)下的電子書閱讀器,對(duì)一些已知的和用戶反饋的bug和不足之處進(jìn)行了修改。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國(guó)鉬絲探傷儀行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國(guó)蝎子行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年男子氧化標(biāo)槍項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國(guó)環(huán)類鍛件行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年改性丙烯酸水性卓面漆項(xiàng)目可行性研究報(bào)告
- 2025年工程機(jī)械萬(wàn)向節(jié)項(xiàng)目可行性研究報(bào)告
- 2025年內(nèi)旋轉(zhuǎn)式濃度變送器項(xiàng)目可行性研究報(bào)告
- 2025至2030年中國(guó)DL-肉毒堿鹽酸鹽數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年高強(qiáng)玻璃纖維紗項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年中國(guó)鋁材專用鋸數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 企業(yè)法律顧問(wèn)方案
- 哈佛大學(xué)住房研究聯(lián)合中心:2024年美國(guó)房屋租賃報(bào)告
- 農(nóng)商銀行貴金屬分析報(bào)告
- 人教版英語(yǔ)八年級(jí)下冊(cè)全冊(cè)教案教學(xué)設(shè)計(jì)及教學(xué)反思
- 軟件確認(rèn)報(bào)告-模板
- 馬克思主義的誕生(何)
- 《紅樓夢(mèng)第五回》課件
- 供應(yīng)鏈管理 課件 項(xiàng)目一 供應(yīng)鏈及供應(yīng)鏈管理認(rèn)知
- 2023年全國(guó)醫(yī)學(xué)博士外語(yǔ)統(tǒng)一考試(英語(yǔ))
- 2024年中儲(chǔ)棉總公司招聘筆試參考題庫(kù)含答案解析
- 微整培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論