基于android的電子備忘錄設(shè)計與實現(xiàn)_第1頁
基于android的電子備忘錄設(shè)計與實現(xiàn)_第2頁
基于android的電子備忘錄設(shè)計與實現(xiàn)_第3頁
基于android的電子備忘錄設(shè)計與實現(xiàn)_第4頁
基于android的電子備忘錄設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、圖書分類號:密 級:畢業(yè)設(shè)計(論文)基于android的電子備忘錄設(shè)計與實現(xiàn)The Design And Realization Of Electronic Memo Based On Android學(xué)生姓名學(xué)院名稱信電工程學(xué)院學(xué)號班級專業(yè)名稱計算機科學(xué)與技術(shù)指導(dǎo)教師2015年05月23日徐州工程學(xué)院學(xué)位論文原創(chuàng)性聲明本人鄭重聲明: 所呈交的學(xué)位論文,是本人在導(dǎo)師的指導(dǎo)下,獨立進行研究工作所取得的成果。除文中已經(jīng)注明引用或參考的內(nèi)容外,本論文不含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的作品或成果。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標注。本人完全

2、意識到本聲明的法律結(jié)果由本人承擔(dān)。論文作者簽名: 日期: 年 月 日徐州工程學(xué)院學(xué)位論文版權(quán)協(xié)議書本人完全了解徐州工程學(xué)院關(guān)于收集、保存、使用學(xué)位論文的規(guī)定,即:本校學(xué)生在學(xué)習(xí)期間所完成的學(xué)位論文的知識產(chǎn)權(quán)歸徐州工程學(xué)院所擁有。徐州工程學(xué)院有權(quán)保留并向國家有關(guān)部門或機構(gòu)送交學(xué)位論文的紙本復(fù)印件和電子文檔拷貝,允許論文被查閱和借閱。徐州工程學(xué)院可以公布學(xué)位論文的全部或部分內(nèi)容,可以將本學(xué)位論文的全部或部分內(nèi)容提交至各類數(shù)據(jù)庫進行發(fā)布和檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。論文作者簽名: 導(dǎo)師簽名: 日期: 年 月 日 日期: 年 月 日摘要對于大多數(shù)人來說,隨身帶個小本子

3、來記錄一些即將要處理的事情是很有必要的,從而出現(xiàn)了備忘錄。有了隨身備忘錄,就可以將自己的生活與工作的事情安排的井井有條,能夠在有限的時間內(nèi)準時高效的完成自己的工作。當(dāng)今,智能手機已經(jīng)走進千家萬戶,人們對于智能手機的依賴性愈來愈強,漸漸地成為人們獲得信息的最主要設(shè)備,也是人們獲取信息最方便、最快捷的途徑之一。因此,對于大多數(shù)智能手機用戶來說,把記事本功能集成在手機上使用是極好的選擇。他們能夠便捷的通過手機備忘錄來實現(xiàn)重要事情的記錄與提醒,省去了隨身攜帶紙筆的麻煩。據(jù)2013年12月調(diào)查顯示,現(xiàn)如今搭載Android系統(tǒng)平臺的手機已占有超過78.1%的市場份額,所以,使用Android系統(tǒng)下的電子

4、備忘錄軟件,用戶可以非常方便的進行記錄備忘事件,為用戶的工作、出游、生活中瑣碎的事情提供整理記錄和提醒功能。開發(fā)一款基于Android系統(tǒng),且操作簡便,使用方便的備忘錄是非常有必要的。本課題為基于android系統(tǒng)平臺開發(fā)的備忘錄,目的是為了防止用戶忘記某些將來要做的重要的事情,進行記錄并在設(shè)定的時間通過手機鬧鈴,文字或振動來通知提醒用戶。關(guān)鍵詞 備忘;查詢;通知;androidAbstractFor a lot of people, at any time with a small notebook to record some things is very necessary things

5、, and thus a memorandum. With the memorandum, you can have your own work and life more organized, in a limited time to complete the most important, the most urgent thing.Nowadays, smart phones have entered innumberable families, people for intelligent mobile phone dependence is getting stronger, gra

6、dually become for people to obtain information of the main equipment, which people obtain information is the most convenient and quickest way of. Therefore, for the majority of smart phone users, the use of Notepad feature integrated on the phone is an excellent choice. They can easily through a mob

7、ile phone memorandum to achieve the important things record and reminder, eliminating the trouble with carrying a pen and paper pen. According to the survey in December 2013, now equipped with the Android platform, the mobile phone has occupied over 78.1% of the market share, so using the Android sy

8、stem electronic memo software, users can very convenient for memo recording events and for user's work, travel, life trivial things provide documented and reminders. Development of a Android based system, and easy to operate, easy to use memo is very necessary.This topic is based on Android plat

9、form development memorandum. The purpose is to prevent users forgetting the important work of some time, record and at a specific time by voice, words or vibration to inform to remind the user.Keywords :Memo; query; notice目錄目錄III1 緒論11.1 研究的背景11.2 系統(tǒng)開發(fā)內(nèi)容和意義11.3 論文的組織結(jié)構(gòu)12 Android系統(tǒng)核心技術(shù)概述22.1 Android架

10、構(gòu)分析22.2Android的特點22.2.1開放性22.2.2應(yīng)用程序平等性32.2.3應(yīng)用程序之間的界限32.3 SQLite數(shù)據(jù)庫33系統(tǒng)總體方案設(shè)計43.1 需求分析43.2 系統(tǒng)設(shè)計思想53.2.1 整體模塊設(shè)計53.2.2 用戶注冊模塊63.2.3 備忘錄添加模塊83.2.4 備忘錄刪除模塊93.2.5 備忘錄修改模塊103.2.6 備忘錄拍照記錄模塊113.2.7注冊表和備忘事件信息表的E-R圖123.3 數(shù)據(jù)庫設(shè)計133.3.1 數(shù)據(jù)庫表的設(shè)計134系統(tǒng)詳細設(shè)計154.1系統(tǒng)環(huán)境搭建154.1.2JDK下載154.1.3 JAVA_HOME154.2 界面設(shè)計164.2.1 注

11、冊與登錄模塊164.2.2主界面功能模塊184.2.3添加備忘錄功能模塊194.2.4備忘錄通知模塊214.2.5備忘錄刪除模塊224.2.6拍照記錄模塊:244.2.7備忘錄修改模塊255 軟件測試275.1軟件測試的重要性及目的275.1.1軟件測試的重要性275.1.2 軟件測試的目的275.2 測試平臺275.3 軟件安裝285.4測試內(nèi)容295.5測試小結(jié)31結(jié)論32致謝33參考文獻34III1 緒論1.1 研究的背景隨著Android系統(tǒng)在市場上的強大爆發(fā),在智能手機領(lǐng)域已經(jīng)成為用戶量最多的操作系統(tǒng)。Android智能手機也正在成為人們?nèi)粘+@取信息的主要設(shè)備,尤其在“學(xué)生一族”和青

12、年群體中表現(xiàn)最為突出,并且通過Android智能手機,他們可以便捷的獲取各種所需信息。因此,基于Android的智能手機的便捷服務(wù)類應(yīng)用會有一個很好的發(fā)展機會和發(fā)展空間,手機隨身備忘錄就是它們中的一員。 在該系統(tǒng)下的備忘錄軟件中,可以為用戶提供非常方便的備忘事件查詢和提醒功能,為快節(jié)奏的生活提供高效率的保障。另外,由于Android平臺是開放的,平臺使用成本基本可以忽略不計,所以能夠很好的控制軟件的成本,為此類備忘錄的普及做出貢獻。1.2 系統(tǒng)開發(fā)內(nèi)容和意義 通過對目前市場上應(yīng)用的 Symbian、WindowsPhone、IOS等主流的平臺的現(xiàn)狀進行分析和比較。進而研究并分析了Android

13、平臺的組件和系統(tǒng)架構(gòu),接著解析了Android的生命周期機制。在此基礎(chǔ)上設(shè)計并開發(fā)了Android平臺下的電子備忘錄。本備忘錄系統(tǒng)界面友好、操作方便,具有良好的擴展性和和維護性。該系統(tǒng)經(jīng)過模擬器和真機測試,運行穩(wěn)定,滿足人們對于備忘錄的操作和使用要求。1.3 論文的組織結(jié)構(gòu)本論文是對備忘錄系統(tǒng)的開發(fā)進行的詳細介紹和論述。本篇文章一共分為五個章節(jié)各個章節(jié)具體內(nèi)容如下:第1章 :緒論。簡要的介紹了該課題的研究背景,系統(tǒng)的開發(fā)背景和意義。 第2章 :對Android系統(tǒng)的開發(fā)工具以及相關(guān)技術(shù)進行了簡要的介紹。第3章 : 提出系統(tǒng)的總體設(shè)計方案,并對備忘錄系系統(tǒng)進行需求分析,并詳細的闡述了各個模塊的功

14、能需求。為軟件的實現(xiàn)鋪墊。第4章 :對電子備忘錄系統(tǒng)進行實現(xiàn),并詳細的介紹了界面的設(shè)計和實現(xiàn)過程。 。第5章 :對備忘錄系統(tǒng)的各個模塊進行真機測試,提出預(yù)期測試結(jié)果,并記錄下真是的測試結(jié)果,兩者對比,得出測試結(jié)果。并根據(jù)測試結(jié)果進行分析和處理。2 Android系統(tǒng)核心技術(shù)概述2.1 Android架構(gòu)分析從架構(gòu)圖看,Android分為四個層,從下層到上層依次為Linux內(nèi)核層、系統(tǒng)運行庫層、應(yīng)用程序框架層、應(yīng)用程序?qū)印>唧w組成如圖2-1所示: 圖2-1Android系統(tǒng)架構(gòu)圖2.2Android的特點2.2.1開放性提到Android操作平臺最先想到的就是它的開放性,Android聯(lián)盟允許所

15、有移動終端的廠商加入其中進行Android平臺的開發(fā)。同時包括底層操作系統(tǒng)、用戶界面以及應(yīng)用程序,其中關(guān)于應(yīng)用程序,移動終端所需要的所有軟件也都包括在其中,以前專有權(quán)阻礙移動產(chǎn)業(yè)創(chuàng)新,現(xiàn)在這些將不會存在。開放性的優(yōu)勢能夠幫助該平臺獲取到更多的開發(fā)者,在用戶和應(yīng)用都在日益增加的今天,Android這個年輕的操作平臺將會很快的發(fā)展成熟。Android的開放性相對于它的發(fā)展而言,更有利于積累人氣,其中包括消費者和廠商。從消費者方便考慮,豐富多彩的軟件資源讓消費者受益最大。當(dāng)然對于開發(fā)者來說,開放的平臺具有更大的競爭力,這樣,手機等設(shè)備的價格將便宜,更易于消費者接受。2.2.2應(yīng)用程序平等安卓所有的應(yīng)

16、用程序之間是平等的,一系列的應(yīng)用程序構(gòu)成了Android平臺。在虛擬機上運行的所有的應(yīng)用程序,虛擬機都會提供一系列用于應(yīng)用程序和硬件資源間的API。 不考慮虛擬機的情況下,Android其他的全部應(yīng)用,其中包括第三方的應(yīng)用以及核心應(yīng)用間都是平等的。所以,用戶可以用第三方軟件來替代系統(tǒng)中默認的軟件,比如將第三方的短信發(fā)送軟件替換掉系統(tǒng)中默認的短信軟件。用戶甚至還能夠?qū)⑾到y(tǒng)主界面上的內(nèi)容改變,或者是用用戶所需要的應(yīng)用程序來替換掉系統(tǒng)中任意的不需要的應(yīng)用程序。2.2.3應(yīng)用程序之間無界限Android應(yīng)用程序之間的無界限,安卓開發(fā)者能夠?qū)nternet上的數(shù)據(jù)信息與手機本地的聯(lián)系人、短信、日歷、地

17、理位置等信息結(jié)合在一起,創(chuàng)造出來全新的更好的用戶體驗。一個應(yīng)用程序不僅能夠通過API訪問系統(tǒng)提供的相應(yīng)功能,還能夠供其它的應(yīng)用程序調(diào)用自身申明的功能。Android為其開發(fā)者提供了非常多的使用庫和工具,并且無縫結(jié)合谷歌應(yīng)用。如今的Google已經(jīng)有將近17年的歷史,已經(jīng)慢慢的滲透到了人們?nèi)粘I钪?,比如Google地圖、新聞、郵件等已經(jīng)將用戶和互聯(lián)網(wǎng)緊緊地聯(lián)系在了一起。這些應(yīng)用也將帶給開發(fā)者已便利,開發(fā)人員能夠快速的創(chuàng)建應(yīng)用程序。例如,在別的手機平臺上開發(fā)基于地圖的應(yīng)用是非常困難的,而Android平臺將谷歌Map集成進來,開發(fā)者能夠使用幾行簡單的代碼就能快速方便的開發(fā)出基于地圖的應(yīng)用程序。2

18、.3 SQLite數(shù)據(jù)庫Android系統(tǒng)集成了一個輕量級的數(shù)據(jù)庫SQLite,它是嵌入式的數(shù)據(jù)庫引擎,專門使用在資源有限的設(shè)備上做適量的數(shù)據(jù)存儲,如手機、iPad等。SQLite具備檢索效率高,系統(tǒng)開銷小等特點。SQLite實現(xiàn)對數(shù)據(jù)庫的存取操作的過程是,由程序直接調(diào)用相應(yīng)的API來實現(xiàn)。它是D ·理查德·希普使用一個小型C 庫,開發(fā)出來的一個強有力的嵌入式關(guān)系數(shù)據(jù)庫管理體制。SQLite實現(xiàn)了可嵌入的、完備的、零配置的SQL數(shù)據(jù)庫引擎。3系統(tǒng)總體方案設(shè)計3.1 需求分析本課題在充分研究了android開發(fā)流程以及日常人們使用手機的操作習(xí)慣,以Java為開發(fā)語言

19、,eclipse為開發(fā)環(huán)境,實現(xiàn)了電子備忘錄的主界面的事項一覽模塊、備忘錄的添加模塊、備忘錄的刪除模塊、備忘錄數(shù)據(jù)存儲模塊、備忘錄的修改模塊、備忘錄拍照記錄模塊以及備忘時間到達提醒模塊。各個部分的主要功能如下:1、 主界面功能模塊用戶在點擊進入程序以后,進入主界面可以看到所保存的事項一覽表,以及各個事項所設(shè)定的提醒日期和具體時間。2、 備忘錄的添加模塊用戶在進入主界面后,點擊主界面上的備忘錄添加按鈕,就會彈出備忘錄添加界面,用戶可以根據(jù)提示依次輸入備忘事項的標題、設(shè)置提醒日期、提醒時間、以及備忘事項的具體內(nèi)容。內(nèi)容添加完成后,點擊保存按鈕,備忘錄添加成功。返回主界面后,即可看到剛剛添加的備忘事

20、件。3、 備忘錄的修改模塊用戶進入主界面后,可以看到所保存的備忘事項一覽表,找到需要修改的備忘記錄并長按,會彈出備忘錄修改界面,用戶可以對備忘的標題、日期、時間、和備忘具體內(nèi)容進行修改。修改完成后,點擊保存按鈕,備忘時間即被修改成功。4、 備忘錄的刪除模塊用戶進入主界面后,在備忘事項一覽表中找到想要刪除的事件,并長按,會彈出修改菜單,點擊刪除按鈕,所選備忘時間即被刪除,系統(tǒng)提示刪除成功。5、 備忘時間到達提醒模塊當(dāng)用戶所保存的備忘事項時間到達后,系統(tǒng)會發(fā)出通知提醒,開啟手機聲音提醒,并在手機桌面通知欄處顯示備忘事件時間到達通知,提醒用戶有待辦事項。6、 備忘錄數(shù)據(jù)存儲模塊 備忘錄的最重要功能就

21、是記錄和保存用戶容易遺忘的日期和事件,為了持久地將用戶的備忘錄信息保存下來,需要將這些信息存儲在數(shù)據(jù)庫中。備忘錄需要保存的信息有:編號(ID)、標題(Title)提醒日期(Date)、提醒時間(Time)、提醒內(nèi)容(Content)、創(chuàng)建時間(Create Date)等.7、 備忘錄的拍照記錄模塊 當(dāng)用戶所需輸入信息較為繁瑣的時候,比如想把客戶的名片作為備忘錄的內(nèi)容時,文字的手動輸入就較為繁瑣,此時用戶可以選擇進行拍照記錄表,省去了用戶繁瑣的輸入操作,只需選擇拍照按鈕,系統(tǒng)就會調(diào)用手機拍照功能,用戶即可方便的記錄信息,當(dāng)用戶需要查看名片時,既可以進入備忘錄查看,也可以通過手機文件瀏覽器查看原圖

22、。本軟件在做到基本的備忘事件記錄和聲音提醒的同時,還提供了簡單的修改和刪除以及通知欄通知等功能,方便用戶對備忘錄的及時更新,提高了用戶的辦事效率。而且特別添加了備忘錄的拍照記錄功能,一定程度上減輕了用戶的操作量。并且該軟件在Android模擬器上成功運行,由于設(shè)備限制,只能在部分安卓手機上進行真機測試,但同樣也運行穩(wěn)定,取得了很好的運行效果。3.2 系統(tǒng)設(shè)計思想3.2.1 整體模塊設(shè)計該備忘錄應(yīng)用程序主要實現(xiàn)了以下七個子模塊,它們分別為:用戶注冊模塊、添加備忘錄模塊、修改備忘錄模塊、刪除備忘錄模塊、備忘錄拍照記錄模塊、用戶登錄模塊、主機面功能等模塊。電子備忘錄的結(jié)構(gòu)圖如圖3-1所示: 圖3-1

23、 系統(tǒng)整體結(jié)構(gòu)圖3.2.2 用戶注冊模塊在注冊新用戶的界面下,用戶要根據(jù)提示輸入的信息包括:賬號、密碼等信息。注冊信息填寫成功后,用戶所填寫的信息將會被送到數(shù)據(jù)庫中,并且保存下來。用戶注冊的流程圖如圖3-2所示: 圖3-2 用戶注冊界面流程圖進入登錄界面,用戶需要填寫之前注冊過的信息,如:用戶名和密碼。如果用戶名和密碼輸入無誤,就會成功進入系統(tǒng)。用戶登錄系統(tǒng)的流程圖如圖3-3所示: 圖3-3 用戶登錄流程圖3.2.3 備忘錄添加模塊在該模塊中,用戶可以添加備忘錄的具體內(nèi)容,如:備忘事件的標題、備忘事件的具體內(nèi)容、備忘事件的提醒日期和具體時間(精確到分鐘,延時5秒)。而后發(fā)送請求,將備忘記錄保存

24、在數(shù)據(jù)庫中。備忘錄添加模塊的流程圖如圖3-4所示: 圖3-4 備忘錄添加流程圖3.2.4 備忘錄刪除模塊進入備忘錄刪除模塊,先選擇要刪除的記錄,點擊刪除按鈕后,系統(tǒng)將所要刪除的備忘記錄與數(shù)據(jù)庫中記錄進行匹配,如果匹配成功,所選備忘記錄就會從數(shù)據(jù)庫中刪除,如果沒有則提示刪除失敗。備忘錄刪除模塊的流程圖如圖3-5所示: 圖3-5 備忘錄刪除模塊流程圖 3.2.5 備忘錄修改模塊用戶進入備忘錄主界面后,選擇需要修改的備忘記錄,即可對備忘錄的標題、提醒時間、提醒日期和具體內(nèi)容進行重新輸入,輸入完畢后系統(tǒng)將剛剛輸入的數(shù)據(jù)在數(shù)據(jù)庫中進行更新操作,替換掉原來的內(nèi)容。備忘錄修改模塊流程圖如下圖3-8所示: 圖

25、3-6 備忘錄模塊流程圖3.2.6 備忘錄拍照記錄模塊用戶在添加備忘錄時,可以選擇拍照的方法添加備忘內(nèi)容。其流程為選擇拍照功能,系統(tǒng)調(diào)用手機相機功能,用戶選擇合適的角度拍好照片,選擇完成或放棄,若完成拍照,則照片保存成功,若放棄,返回拍照功能繼續(xù)拍照。備忘錄拍照記錄模塊的流程圖如圖3-7所示: 圖3-7 備忘錄拍照記錄模塊流程圖3.2.7注冊表和備忘事件信息表的E-R圖 注冊表的E-R圖主要包含賬號、密碼。如圖3-8所示: 圖3-8注冊表的E-R圖備忘事件信息表的E-R圖主要包括備忘事件ID、標題、內(nèi)容、提醒日期、提醒時間、創(chuàng)建日期和路徑。如圖3-9所示: 圖3-9備忘事件信息表的E-R圖3.

26、3 數(shù)據(jù)庫設(shè)計3.3.1 數(shù)據(jù)庫表的設(shè)計本系統(tǒng)主要由兩張表構(gòu)成,分別為用戶信息表和備忘事件信息表。備忘事件信息表用來記錄事件信息,主要包含標題、備忘內(nèi)容、鬧鐘提醒的日期時間和創(chuàng)建時間等信息。備忘事件信息表如表3-1所示: 表3-1備忘事件信息表序號字段名字段說明類型長度NULL1 ID備忘事件IDint10NOT2title標題varchar50NOT3content內(nèi)容varchar200NOT4createDate創(chuàng)建日期varchar10NOT5noticeDate通知日期varchar10NOT6noticeTime通知時間varchar5NOT7path 路徑 varchar100

27、用戶信息表的功能是記錄每個用戶的信息。主要包含編號(ID)、賬號、密碼信息。用戶信息表的結(jié)構(gòu)如表3-2所示: 表3-2 用戶信息表序號字段名字段說明類型長度NULL1 id編號int10NOT2username用戶名archar100NOT3password密碼varchar100NOT 4系統(tǒng)詳細設(shè)計4.1系統(tǒng)環(huán)境搭建4.1.1Eclipse開發(fā)平臺Eclipse是著名的跨平臺的IDE(自由集成開發(fā)環(huán)境),起初大都是用來做Java語言的開發(fā)。Eclipse自身只是一個框架平臺,而眾多插件的支持使Eclipse具有靈活性,這是其他功能相對的IDE軟件很難具有的。Eclipse是一個開放源碼項目

28、,由于其開放性,任何人都可以免費使用,并在其基礎(chǔ)上開發(fā)各自的插件。本系統(tǒng)中Eclipse配置成Android平臺,進行管理系統(tǒng)的編程及運行。4.1.2JDK下載JDK下載地址:JDK(Java Development Kit)是整個Java的核心。包括一系列Java開發(fā)的東西,安裝完畢需要在電腦中配置一下環(huán)境變量。4.1.3 JAVA_HOMEJDK的安裝路徑,這個環(huán)境變量本身不存在,需要創(chuàng)建,創(chuàng)建完則可以利用%JAVA_HOME%作為統(tǒng)一引用路徑,其值為:jdk在你電腦上的安裝路徑。PATH屬性已存在,可直接編輯。作用是用于配置路徑,簡化命令的輸入,其值為:%JAVA_HOME%bin。詳情

29、如圖4-1所示: 圖 4-1 環(huán)境變量配置4.2 界面設(shè)計4.2.1 注冊與登錄模塊首先,用戶進入系統(tǒng)時會彈出用戶登陸界面,用戶有登錄和注冊兩個選擇。已經(jīng)注冊的用戶可以直接在輸入欄根據(jù)提示輸入自己的用戶名和密碼,系統(tǒng)會與后臺的數(shù)據(jù)庫進行用戶信息的字段匹配,確認無誤后,用戶即可直接登錄,系統(tǒng)提示登陸成功并直接進入備忘錄主界面。如果用戶輸入的信息與數(shù)據(jù)庫中用戶信息不一致,則系統(tǒng)提示登錄失敗,用戶需要重新輸入。用戶登錄界面如圖4-2所示: 圖4-2 用戶登錄界面用戶登錄部分代碼如下:若用戶為新用戶,則需要進行用戶名、密碼的注冊,用戶只需點擊注冊按鈕,此時會跳轉(zhuǎn)到用戶注冊界面,用戶填寫用戶名、密碼,點

30、擊注冊按鈕,用戶即可注冊成功。系統(tǒng)會彈出注冊成功的提示。用戶注冊界面如圖4-3所示: 圖4-3 用戶注冊界面注冊界面實現(xiàn)的代碼如下:4.2.2主界面功能模塊當(dāng)用戶完成登錄以后,系統(tǒng)會跳轉(zhuǎn)到備忘錄主界面,在主界面,用戶可以直接看到已經(jīng)保存過的備忘事件,點擊單個事件可以看到備忘時間的具體日期、時間、和備忘內(nèi)容等。主界面顯示如圖4-4所示: 圖4-4 主界面顯示界面4.2.3添加備忘錄功能模塊該模塊為整個備忘錄的重點模塊,用戶通過添加備忘事件來預(yù)防自己錯過重要的事情。在該模塊,用戶通過點擊添加備忘錄按鈕可以根據(jù)自己需要記錄的事件,填寫備忘事件的標題、選擇日期、時間、以及詳細內(nèi)容。填寫完成后,點擊保存

31、按鈕,系統(tǒng)提示保存成功,并在主界面中顯示已經(jīng)保存的備忘事件。添加備忘錄界面如圖4-5、圖4-6所示: 圖4-5 備忘錄添加界面?zhèn)渫浱砑訉崿F(xiàn)代碼如下:public void onClick(View view) ContentValues value = new ContentValues(); String title = etTitle.getText().toString(); String content = etContent.getText().toString(); String noticeDate = etDate.getText().toString(); String n

32、oticeTime = etTime.getText().toString(); value.put("title", title); value.put("content", content); value.put("noticeDate", noticeDate); value.put("noticeTime", noticeTime); SQLiteDatabase db = databaseHelper.getWritableDatabase(); long id = 0; long status = 0;

33、 if(bundle!=null) id = bundle.getLong("id"); status = db.update("tb_bwl", value, "id=?", new Stringbundle.getLong("id")+""); else status = db.insert("tb_bwl", null, value); id = status; if(status!=-1) setAlarm(id); Toast.makeText(AddBwlActi

34、vity.this, "保存成功", Toast.LENGTH_LONG).show(); else Toast.makeText(AddBwlActivity.this, "保存失敗", Toast.LENGTH_LONG).show(); ; 圖4-6 備忘錄添加提醒時間和提醒日期選擇界面添加時間日期代碼如下: protected Dialog onCreateDialog(int id) Calendar cal = Calendar.getInstance(); cal.setTime(new Date(); switch(id) case DA

35、TE_DIALOG_ID: DatePickerDialog dpd = new DatePickerDialog(this,dateSetListener, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH); dpd.setCancelable(true); dpd.setTitle("選擇日期"); dpd.show(); break; case TIME_DIALOG_ID: TimePickerDialog tpd = new TimePickerDialo

36、g(this, timeSetListener, cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), true); tpd.setCancelable(true); tpd.setTitle("選擇時間"); tpd.show(); break; default: break; return null; 4.2.4備忘錄通知模塊該模塊通過獲取添加備忘錄模塊發(fā)出的廣播信息,來喚醒設(shè)備。同時會發(fā)出聲音提醒用戶備忘事件的時間應(yīng)經(jīng)到達。并且在手機的通知欄里會顯示備忘時間的通知、標題、內(nèi)容已經(jīng)時間戳等信息,用戶點擊通知欄會

37、跳轉(zhuǎn)到備忘錄詳情的頁面。以此方法來實現(xiàn)備忘錄的提醒效果。備忘錄通知界面截圖如圖4-7所示: 圖4-7 備忘錄通知界面通知界面實現(xiàn)代碼如下: public void onReceive(Context context, Intent intent) mIntent = intent; Bundle bundle = mIntent.getExtras(); mNotificationManager = (NotificationManager)context.getSystemService(context.NOTIFICATION_SERVICE); / mIntent = new Inten

38、t(context,AddBwlActivity.class); mIntent.setClass(context,AddBwlActivity.class); mPendingIntent = PendingIntent.getActivity(context, 0, mIntent, 0); mNotification = new Notification(); mNotification.icon = R.drawable.ico; mNotification.tickerText="備忘錄" /設(shè)置默認聲音、默認振動、和默認閃光燈 mNotification.def

39、aults = Notification.DEFAULT_ALL; /點擊通知后自動取消 mNotification.flags |= Notification.FLAG_AUTO_CANCEL; mNotification.setLatestEventInfo(context, bundle.getString("title"), bundle.getString("content"), mPendingIntent); mNotificationManager.notify(1,mNotification); /一個狀態(tài)條圖標 /在拉伸的狀態(tài)欄窗口中

40、顯示額外的信息和啟動一個Application的Intent 4.2.5備忘錄刪除模塊用戶使用電子備忘錄以后,通過鬧鈴的提醒功能使用戶能夠準確的把握事物的處理時間,提高了辦事效率,但是,一旦備忘事件到達提醒時間以后,也就失去了它存在的意義。所以,為方便用戶處理已經(jīng)過期的備忘事件記錄,為此添加了備忘錄的刪除功能。具體使用方法為:用戶進入備忘錄主界面,找到需要刪除的備忘事件,長按兩秒,會彈出操作菜單,點擊刪除按鈕,即可刪除所選擇備忘事件。系統(tǒng)提示刪除成功。刪除備忘錄界面截圖如圖4-8所示: 圖4-8 刪除備忘事件界面?zhèn)渫泟h除模塊實現(xiàn)代碼如下:public boolean onContextIte

41、mSelected(MenuItem item) AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo)item.getMenuInfo(); switch(item.getItemId() case 4: databaseHelper = new DatabaseHelper(this, "db_bwl", null, 1); db = databaseHelper.getWritableDatabase(); int status = db.delete("tb_bwl", "i

42、d=?", new String""+menuInfo.id); if(status!=-1) /刪除后更新listview Cursor cursor = db.query("tb_bwl", new String"id as _id","title","content","noticeDate","noticeTime", null, null, null, null,null); adapter.changeCursor(cursor);

43、/ adapter.notifyDataSetChanged(); Toast.makeText(this, "刪除成功", Toast.LENGTH_LONG).show(); else Toast.makeText(this, "刪除失敗", Toast.LENGTH_LONG).show(); break;4.2.6拍照記錄模塊:在用戶正常使用備忘錄時,有時會有不方便打字添加備忘內(nèi)容的時候,或者文字不好說明問題等情況,為此,特別添加了拍照記錄功能。用戶只需點擊拍照按鍵,即可調(diào)用手機相機功能,并將所拍照片存儲在手機中,系統(tǒng)提示拍攝成功。查看時可直接在

44、備忘錄中查看縮略圖。拍照記錄模塊界面如圖4-9所示: 圖4-9 備忘錄拍照記錄界面拍照記錄模塊實現(xiàn)主要代碼如下:protected void letCamera() Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); String strImgPath = Environment.getExternalStorageDirectory() .toString() + "/dlion/"/ 存放照片的文件夾 String fileName = new SimpleDateFormat

45、("yyyyMMddHHmmss") .format(new Date() + ".jpg"/ 照片命名 File out = new File(strImgPath); if (!out.exists() out.mkdirs(); out = new File(strImgPath, fileName); strImgPath = strImgPath + fileName;/ 該照片的絕對路徑 path = strImgPath; Uri uri = Uri.fromFile(out); imageCaptureIntent.putExtra(Me

46、diaStore.EXTRA_OUTPUT, uri); imageCaptureIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); startActivityForResult(imageCaptureIntent, 1);4.2.7備忘錄修改模塊為完善備忘錄的功能,讓用戶體驗更為方便簡潔,故添加了備忘錄修改模塊。此模塊的用途在于當(dāng)用戶添加備忘錄出現(xiàn)操作失誤,設(shè)置時間日期出錯時,且已經(jīng)保存后,方便用戶直接進行修改,免去刪除備忘錄后再重新添加等繁瑣的操作。備忘錄修改模塊界面如圖4-10所示: 圖4-10 備忘錄修改界面?zhèn)渫浶薷哪K代碼如下:

47、public boolean onContextItemSelected(MenuItem item) AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo)item.getMenuInfo(); switch(item.getItemId() case 3: String title = (TextView)menuInfo.targetView.findViewById(R.id.title).getText().toString(); String content = (TextView)menuInfo.targetView.findViewById(R.id.content).getText().toString(); String noticeDate = (TextView)menuInfo.targetView.findViewById(R.id.noticeDate).getText().toString(); String noticeTime = (TextView)menuInfo.targetView.findViewById(R.id.noticeTime).getText().to

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論