




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、南陽理工學院計算機與信息工程學院«Android操作系統(tǒng)及應用大作業(yè)總結(jié)報告題目:便簽的設計與開發(fā)姓名:鄒長江學號:1406915090班級:14計科(信息)一作品概述1二分析12.1 功能分析12.2 、數(shù)據(jù)分析1三設計23.1、 模塊設計23.2、 UI設計33.3、 數(shù)據(jù)庫設計3四系統(tǒng)實現(xiàn)34.1 Android工程程序結(jié)構(gòu)34.2 代碼實現(xiàn)6五系統(tǒng)測試10六設計體會11七參考文獻11一作品概述現(xiàn)在的生活節(jié)奏正在變快,人們除了工作和學習之外,還要花費不少的時間在往返的路上,這一現(xiàn)狀自然而然的激發(fā)了手機移動終端的崛起。各種各樣方便、精美的手機軟件已經(jīng)走進我們的生活。手機與人們的生
2、活緊密的結(jié)合起來,可以說現(xiàn)在人們已經(jīng)離不開手機了,手機軟件會成為手機多媒體時代最受歡迎并且是最有價值的應用。Android手機應用程序開發(fā)是一項復雜的工程。本文研究了Android的系統(tǒng)架構(gòu),并在AndroidStudio開發(fā)環(huán)境下,使用JAVA語言,設計了一個個性化便簽軟件,該軟件可以通過簡單的手勢添加便簽。二分析為了跟上現(xiàn)代日益加快的生活節(jié)奏,電子工藝技術(shù)也在飛速的發(fā)展,就目前而言的手機功能已經(jīng)無法滿足人們越來越多的需求了,為了滿足需求市場上出現(xiàn)了各種不同的操作系統(tǒng),Windowsmobile、塞班和谷歌的Android操作系統(tǒng)是目前市場上最主要的三個手機操作系統(tǒng)。其中Android因為有
3、開發(fā)源代碼的優(yōu)勢使其成為有最大的發(fā)展前景的系統(tǒng)。不同手機平臺的手機,所支持的便簽軟件也是各不相同,目前市場上最流行的手機平臺是google的Android手機平臺,本課題致力于開發(fā)出一款基于Android手機平臺的個性化便簽,來滿足用戶的使用需求。2.1 功能分析本軟件屬于用戶常用的便簽??梢苑奖阌脩羝綍r對便簽的操作。本系統(tǒng)應達到以下目標:(1)軟件采用人機交互的方式,界面美觀大方,操作靈活、方便。(2)能夠?qū)Ρ愫炦M行有效的管理。(3)系統(tǒng)應該能夠最大程度地實現(xiàn)易維護性和易操作性。具體功能有:(1)添加:添加方便,具有有效的手勢操作;(2)編輯:對便簽進行隨時修改;(3)刪除:對舊的便簽進行刪
4、除;(4)查看:可通過手勢對一覽表進行上下滑動瀏覽。2.2 、數(shù)據(jù)分析SQLite最大的特點是你可以把各種類型的數(shù)據(jù)保存到任何字段中,而不用關心字段聲明的數(shù)據(jù)類型是什么。Android提供了一個名為SQLiteDatabase的類,該類封裝了一些操作數(shù)據(jù)庫的API,使用該類可以完成對數(shù)據(jù)進行添加(Create查詢(Retrieve)、更新(Update)和刪除(Delete)操作(這些操作簡稱為CRUD)。在Android系統(tǒng),為我們提供了一個名為SQLiteOpenHelper的抽象類,必須繼承它才能使用,它是通過對數(shù)據(jù)庫版本進行管理來實現(xiàn)前面提出的需求。為了實現(xiàn)對數(shù)據(jù)庫版本進行管理,SQL
5、iteOpenHelper類提供了兩個重要的方法,分別是onCreate(SQLiteDatabasedb)和onUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion,)前者用于初次使用軟件時生成數(shù)據(jù)庫表,后者用于升級軟件時更新數(shù)據(jù)庫表結(jié)構(gòu)。當調(diào)用SQLiteOpenHelper的getWritableDatabase(或者getReadableDatabase()if法獲取用于操作數(shù)據(jù)庫的SQLiteDatabase實例的時候,如果數(shù)據(jù)庫不存在,Android系統(tǒng)會自動生成一個數(shù)據(jù)庫,接著調(diào)用onCreate()方法,onCreate(方法
6、在初次生成數(shù)據(jù)庫時才會被調(diào)用,在onCreate(方法里可以生成數(shù)據(jù)庫表結(jié)構(gòu)及添加一些應用使用到的初始化數(shù)據(jù)。onUpgrade()方法在數(shù)據(jù)庫的版本發(fā)生變化時會被調(diào)用,一般在軟件升級時才需改變版本號,而數(shù)據(jù)庫的版本是由程序員控制的。三設計3.1、模塊設計整個系統(tǒng)大體可以分成三大模塊,一是主界面,主要按照時間顯示便簽;是新建界面,想要新建便簽時,可以點擊便簽新建符新建項,會彈出該界面;是編輯界面,點擊已有的便簽即可進入編輯狀態(tài)。總的系統(tǒng)組織結(jié)構(gòu)圖如下圖所3.2、UI設計主界面設計:新建界面設計:編輯界面設計:conient<<3Ohem4Hem5illcmgBubIbomLHim:
7、汕IM了HBH12him&IM#EllemlSub153.3、數(shù)據(jù)庫設計便簽軟件只有一個簡單的數(shù)據(jù)表,id為主鍵,對數(shù)據(jù)庫的更改都在這個表中進行,具體如下圖所示:口noteidtitlecontentinfo1titlecontentinfo2ttttvvvvinfbM.LLmh1K''I-.idiriT(ll)titleVAROHAR(45)contentVARCHAR(45)infoVARCHAR(45)四系統(tǒng)實現(xiàn)4.1 Android工程程序結(jié)構(gòu)Android工程的基本結(jié)構(gòu)目錄包括:編寫源代碼的src、用來存放程序界面的布局配置(.xml)文件和圖片資源的資源文件
8、res,代碼測試文件test,jar包存放文件ExternalLibraries。Android資源的類型和布局圖如下:1目錄結(jié)構(gòu)黃謨類型rWinim/XML就畫文件res/tiiwiblc/一些位圖文件res/layoirt/XMI.布局文件rWviluci?省用CML貸源文件myixml:XML敷蛆女件cdcrvxnJ:XML顏色文件dirncnr.nnhXMLW寸文件ftjdeimiltXML悌式文件rcvKiiil/任意的XML文件rWrrwf直接拷貝到設品中的原生文件revmeniVXML菜單文件圖4-1資源類型和布局圖1、便簽代碼結(jié)構(gòu)如下圖4-2所示。其中src文件夾包含著整個便簽
9、實現(xiàn)的源代碼,res文件夾下面是便簽軟件實現(xiàn)的一個資源,像是界面的布局和界面上需要用到圖4.2代碼結(jié)構(gòu)圖2、便簽.Java文件如下圖所示。其中包cn.feixianblue.stickynote下的是便簽個界面實現(xiàn)的代碼,其中MainActivity.java文件中的是主界面的代碼,EditeActivity.java文件中的是創(chuàng)建便簽后的界面代碼;UpdateActivity.java文件是文本編輯的界面代碼??赾n.feixianbIe.stickyno1>£DB匚EditArtivityc*MainActivityc/UpdateActivity3、便簽軟件需要的字符串等
10、配置文件,在values的strings.xml文件中是整個便簽軟件界面中需要用到的所有字符串,colors.xml文件中是整個便簽軟件界面中需要到的顏色,styles.xml文件中是整個便簽軟件界面中頁面的樣式。由valuerColors.xml訃strings.xml_d_>4、便簽的圖像資源,drawable-hdpi文件下存放的是便簽軟件中需要用到的一些圖片標識。EImiprriip-hdpiImiprnap-mdpiImipmap-Khdpimipmap-xxhdpiA由miprriap-xxxhdpi5、AndroidManifest.xml文件AndroidMainfest
11、.xml是四大組件的驅(qū)動配置文件,有了它的存在,Android程序的四大組件才能夠順利正常的跳轉(zhuǎn)。任意一個的Android系統(tǒng)的程序啟動都要靠AndroidManifest.xml文件來啟動程序,每次新建好一個的工程,在其目錄都會自動生成一個AndroidManifest.xml文件,這個配置文件為程序能夠正常運行提供了保證,是整個工程的核心部分,它里面包括了AndroidSDK的版本,程序運行的默認Activity,當程序中的任何一個組件觸發(fā)事件后,系統(tǒng)都會自動的在AndroidManifest.xml文件中找出正確的標識從而作出相應的操作。每一個AndroidManifest.Xml文件的
12、格式都應該是這樣的:veraosF"1JOperuc"utf-glf?><applicaiioft><acti,vity><acticnXcategory件</intenbfilter>竽曲cahgpemisstem</majiifesP4.2 代碼實現(xiàn)1、實現(xiàn)主界面功能的代碼:publicclassMainActivityextendsAppCompatActivityprivateDBManagerdbManager;privateListViewlistView;OverrideprotectedvoidonCre
13、ate(BundlesavedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Toolbartoolbar=(Toolbar)findViewById(R.id.toolBar);setSupportActionBar(toolbar);listView=(ListView)findViewById(R.id.list_item);/初始化DBManagerdbManager=newDBManager(MainActivity.this);listView.setOn
14、ItemClickListener(newAdapterView.OnItemClickListener()SuppressWarnings("unchecked")OverridepublicvoidonItemClick(AdapterView<?>parent,Viewview,intpositionlongid)HashMap<StringString>map=(HashMap<StringString>)parent.getItemAtPosition(position)"title");Stringnote
15、Title=map.get(Intentintent=newIntent(MainActivity.this,UpdateActivity.class);/傳數(shù)據(jù)(將數(shù)據(jù)傳到intent中的bundle類中)intent.putExtra("title",noteTitle);startActivity(intent);finish();/解決在MainActivity頁面下返回鍵失效問題);OverrideprotectedvoidonStart()super.onStart();List<Note>notes=dbManager.queryAll();Arr
16、ayList<Map<String,String>>list=newArrayList<Map<StringString>>();for(Notenote:notes)HashMap<String,String>map=newHashMap<String,String>()map.put("title",note.getTitle();map.put("content",note.getContent();map.put("info",note.getInfo()
17、;list.add(map);SimpleAdapteradapter=newSimpleAdapter(this,listandroid.R.layout.simple_list_item_2,newString"title","content",newintandroid.R.id.text1android.R.id.text2);listView.setAdapter(adapter);publicvoidonAddClick(Viewview)dbManager.closeDB();startActivity(newIntent(this,Edi
18、tActivity.class);finish();OverrideprotectedvoidonDestroy()super.onDestroy();/應用的最后一個Activity關閉時應釋放DBdbManager.closeDB();2H|Mftww1publicclassEditActivityextendsAppCompatActivityprivateDBManagerdbManager;privateEditTexteditTitle;privateEditTexteditContent;OverrideprotectedvoidonCreate(BundlesavedInsta
19、nceState)super.onCreate(savedInstanceState);setContentView(R.layout.activity_edit);3、實現(xiàn)頁面編輯代碼:toolBar);Toolbartoolbar=(Toolbar)findViewById(R.id.setSupportActionBar(toolbar)editTitle=(EditText)findViewById(R.id.edit_title);editContent=(EditText)findViewById(R.id.edit_content);dbManager=newDBManager(
20、this);Intentintent=getIntent();/獲取數(shù)據(jù)(從intent對象中獲取bundle中的數(shù)據(jù))Bundlebundle=intent.getExtras();/獲取數(shù)據(jù)(從bundle中依據(jù)id獲取數(shù)據(jù)值)ownTitle=bundle.getString("title");note=dbManager.queryByTitle(ownTitle);if(note=null)Log.d("uuuuuuuuuuuuuuuuu","note=null");Log.d("ididididididididi
21、did","note_id="+note.getId();editTitle.setText(note.getTitle();editContent.setText(note.getContent();publicvoidonUpdateClick(Viewview)Noten=dbManager.queryByTitle(editTitle.getText().toString()if(n=null|n.getTitle().equals(ownTitle)note.setTitle(editTitle.getText().toString();note.set
22、Content(editContent.getText().toString();dbManager.update(note);dbManager.closeDB();startActivity(newIntent(this,MainActivity.class);finish();elseToast.makeText(UpdateActivity.this,"保存失敗,Title已存在!Toast.LENGTH_LONG).show();publicvoidonDeleteClick(Viewview)dbManager.delete(note.getId();dbManager.
23、closeDB();startActivity(newIntent(this,MainActivity.class);finish();五系統(tǒng)測試1、用戶在啟動便簽軟件時進去便簽主界面,最上面是便簽名稱“便簽”,右下角的紅色“+”符號點是添加新的便簽按鈕,白色區(qū)域內(nèi)排列的是已建的便簽,具體如下圖所示:title>oon<tient(HleTTcontenthtnieUKoonitentqm:L£volultleMW2、進入添加界面后,紅色底線是標題欄,灰色底線是便簽內(nèi)容,編輯完成后可以點擊灰色保存鍵,若存在相同的標題,則會出現(xiàn)相關提示,具體如下圖所示:115:11o+號3U5
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 便宜門店轉(zhuǎn)讓合同范本
- 促銷返利合同范本
- 個體醫(yī)療機構(gòu)年度工作總結(jié)報告
- 個人工作自我鑒定簡短
- 勞務公司派遣員工合同范本
- 單位對外投資合同范本
- 三八節(jié)教師演講稿
- 工業(yè)鍋爐司爐模考試題及答案
- 高壓電工(運行)習題+參考答案
- 供貨款合同范本
- 03D501-1 防雷與接地安裝
- IPQC入職崗位培訓
- 牛津自然拼讀
- 2023年福建三明市沙縣區(qū)園區(qū)建設發(fā)展集團有限公司招聘筆試題庫含答案解析
- 2023年醫(yī)學考研-同等學力考研西醫(yī)綜合歷年考試真題試卷摘選答案
- 王淑玲《做最好的自己》讀書分享
- TCADERM 5015-2023 救護直升機院際患者轉(zhuǎn)運規(guī)范
- 肺動脈瓣狹窄的超聲演示
- 部編版-九年級下冊語文第一單元測試卷-含答案
- 分布式光伏電站施工
- 水庫清淤工程可行性研究報告
評論
0/150
提交評論