數(shù)字濾波器手機鬧鐘軟件設計.docx
《數(shù)字濾波器手機鬧鐘軟件設計.docx》由會員分享,可在線閱讀,更多相關《數(shù)字濾波器手機鬧鐘軟件設計.docx(14頁珍藏版)》請在裝配圖網上搜索。
智能移動終端應用開發(fā) 設計報告 (2013/2014學年第2學期) 題 目 : 手機鬧鐘軟件 學 院 : 信息與電氣工程學院 專 業(yè) : 電子信息工程 姓 名 : 張磊 學 號 : 110070117 設計成績 : 2014年5月15日 1 軟件需求分析 1.1軟件設計背景 當今社會,移動通信技術的迅速發(fā)展直接促進了搭載智能操作系統(tǒng)、具有強大擴展性的智能手機、平板電腦等移動終端產業(yè)的蓬勃發(fā)展。搭載安卓操作系統(tǒng)的智能手機目前已經成為市場上最炙手可熱的智能產品。開放的源代碼和零成本已經讓安卓在全世界范圍內受到青睞并迅速獲得了主要手機廠商和數(shù)百萬軟件開發(fā)者的支持。Android軟件開發(fā)也成為眾多軟件開發(fā)人員的選擇。 隨著人們生活水平的提高,手機的用途也日益豐富。現(xiàn)在對于我們來講,手機不僅僅意味著一種打電話,發(fā)短信的工具,而是日常生活,娛樂,工作的一部分。我們可以通過手機進行購物,玩游戲,進行辦公等等。 1.2軟件功能需求 鬧鐘應用程序作為人們日常常用的基本應用程序之一,其重要性不言而喻。其應包括的基本功能如下: 鬧鐘一鍵開關:鬧鐘可以通過一個開關進行打開和關閉,所有的預先設置可通過這個開關進行關閉,關閉后,設置可以自動保存。下一次再開啟時可以恢復上次的設置。 添加刪除鬧鐘:用戶可以添加新鬧鐘,也可以刪除已有鬧鐘提醒。 鬧鐘時間設定:可以設置鬧鐘響的時間,提供一個精確的時間選擇。 鬧鐘鈴聲選擇:支持選擇軟件內置的鈴聲和移動設備存儲中的聲音文件。 振動開關:關閉和開啟振動。 鬧鐘重復性設定:通過該功能,用戶可以選擇周一到周日的任意幾天作為鬧鐘的工作日。 懶人模式:當鬧鐘響起后,用戶可以滑動屏幕關閉鬧鐘,也可觸摸按鈕,多睡一會,讓鬧鐘過一小會兒后再次響起。 鬧鐘標簽:用戶可以添加備注信息 2 軟件總體設計 軟件的功能模塊圖如下: 主程序 鬧鐘開關 添加 鬧鐘重復性設定 鬧鐘時間設定 鬧鐘備注 振動開關 鬧鐘鈴聲選擇 已有鬧鐘修改 已有鬧鐘刪除 已有鬧鐘 添加鬧鐘 系統(tǒng)功能模塊圖 首先進入鬧鐘程序的主界面,主界面內會顯示已添加的鬧鐘,還有鬧鐘的開關情況。左下角有一個按鍵(+新鬧鈴)通過點擊此按鍵,可以添加新的鬧鈴。點擊添加鬧鈴按鈕之后,進入鬧鈴的設置界面??梢栽O置鬧鈴時間,設置鬧鈴的重復性,添加備注標簽,還可以選擇鈴聲類型,和選擇自己想要的鈴聲,還可以根據個人喜好開啟和關閉振動,在重復性設定里更改鬧鐘的工作日。設置好之后,點擊保存,新鬧鈴被添加到已有鈴聲之中。然后會返回到主界面中。 主界面中會顯示已有鬧鈴,勾選鬧鈴后面的小勾就可以開啟鬧鈴,如果再次觸屏點擊小勾則關閉鬧鈴。如果在當前鬧鈴上長按則進入編輯菜單。也可以在編輯鬧鈴中停用或起用鬧鈴。此外,在編輯菜單中還可以修改以后鬧鈴的各種設置,還可以進行鬧鈴刪除,預覽等操作。 程序執(zhí)行流程如下圖: 開始 打開鬧鐘 鬧鐘響起 延時一段時間 按鍵 按下暫停再響 按下關閉 結束 鬧鐘定時之后執(zhí)行過程如此流程圖,打開鬧鐘之后,鬧鐘軟件會在后臺運行。到了設定時間之后,鬧鐘會響起。此時需要用戶進行操作,如果用戶按下關閉間,則鬧鐘停止,本次鬧鐘提醒結束。如果用戶按下暫停再響,鬧鐘停止,但是軟件會后臺計時,過一段時間后鬧鐘再次響起,直到用戶按下關閉鍵,本次鬧鐘提醒結束。 3 關鍵技術分析 3.1開發(fā)工具 3.1.1Eclipse Eclipse是一個開放源代碼的軟件開發(fā)項目,專注于為高度集成的工具開發(fā)提供一個全功能的、具有商業(yè)品質的工業(yè)平臺。它主要由Eclipse項目、Eclipse工具項目和Eclipse技術項目三個項目組成,具體包括四個部分組成——Eclipse Platform、JDT、CDT和PDE。JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā),Eclipse Platform則是一個開放的可擴展IDE,提供了一個通用的開發(fā)平臺。它提供建造塊和構造并運行集成軟件開發(fā)工具的基礎。Eclipse Platform允許工具建造者獨立開發(fā)與他人工具無縫集成的工具從而無須分辨一個工具功能在哪里結束,而另一個工具功能在哪里開始。 Eclipse的最大特點就是它能夠接受有java開發(fā)者自己編寫的開放源代碼插件,這是一款非常受歡迎的java開發(fā)工具,國內的用戶越來越多,實際上用它的java開發(fā)人員是最多的。 3.1.2 安卓虛擬機 安卓以java為編程語言,從接口到功能,都有層出不窮的變化,這款軟件是google官方出品,以方便開發(fā)者使用安卓環(huán)境,方便開發(fā)??梢宰屇阍赑C端(電腦上)安裝運行模擬Android系統(tǒng)。并可以在電腦端進行幾乎任何手機上可以進行的操作,甚至還可以像手機一樣連接電腦,被手機助手檢測到,可以模擬所有官方版本的安卓系統(tǒng),并且有多款皮膚和屏幕樣式可供選擇。 3.1.3 Java編程語言 Java語言是編寫安卓應用的基礎,因為安卓的后臺代碼都是使用Java進行編寫的。要熟悉java語言中類的創(chuàng)建,方法的編寫等基本語法知識。有一定的java知識積累才能去完成軟件的開發(fā)。 3.2 軟件技術 開發(fā)手機鬧鐘主要用到了Alarm Manager類,Alarm Manager類提供了訪問系統(tǒng)定時服務的途徑,開發(fā)人員可以在程序中設置某個應用程序在未來的某個時刻被執(zhí)行。當Alarm Manager定時時間到了之后,當初注冊的Intent對象將會被系統(tǒng)廣播,進而啟動目標程序。 在程序運行時當需要使用Alarm Manager類時,可以通過Context對象getSystemService(Context.ALARM_SERVICE)方法來獲得Alarm Manager對象。Android廣播事件處理鬧鐘實例對應AlarmManage有一個AlarmManagerServie服務程序,該服務程序才是正真提供鬧鈴服務的,它主要維護應用程序注冊下來的各類鬧鈴并適時的設置即將觸發(fā)的鬧鈴給鬧鈴設備(在系統(tǒng)中,linux實現(xiàn)的設備名為”/dev/alarm”),并且一直監(jiān)聽鬧鈴設備,一旦有鬧鈴觸發(fā)或者是鬧鈴事件發(fā)生,AlarmManagerServie服務程序就會遍歷鬧鈴列表找到相應的注冊鬧鈴并發(fā)出廣播。該服務程序在系統(tǒng)啟動時被系統(tǒng)服務程序system_service啟動并初始化鬧鈴設備(/dev/alarm)。當然,在JAVA層的AlarmManagerService與Linux Alarm驅動程序接口之間還有一層封裝,那就是JNI。AlarmManager將應用與服務分割開來后,使得應用程序開發(fā)者不用關心具體的服務,而是直接通過AlarmManager來使用這種服務。 本軟件主要用廣播事件來處理鬧鐘實例,getBroadcast——通過該函數(shù)獲得的PendingIntent將會扮演一個廣播的功能,就像調用Context.sendBroadcast()函數(shù)一樣。當系統(tǒng)通過它要發(fā)送一個intent時要采用廣播的形式,并且在該intent中會包含相應的 intent接收對象,當然這個對象我們可以在創(chuàng)建PendingIntent的時候指定,也可以通過ACTION 和CATEGORY等描述讓系統(tǒng)自動找到該行為處理對象。 4 軟件詳細設計 4.1主程序界面 首先進入鬧鐘的主界面,鬧鐘主界面包括以下內容:當前的系統(tǒng)時間、已添加的鬧鐘、和添加新鬧鐘按鈕。如圖4-1: 圖4-1 4.2新增鬧鈴按鈕 點擊新增鬧鐘按鈕,進入添加新鬧鐘的菜單。在該界面中,可以設置鬧鐘的時間。設置鬧鐘的工作日(重復性)、添加標簽。選擇鈴聲,開啟和關閉振動。如圖4-2: 圖4-2 4.3設置鬧鐘時間 點擊時間后,就可以進入時間設置界面。通過向上和向下滑動,可以改變時鐘和分鐘。設置好時間后,點擊完成按鈕。如圖4-3: 圖4-3 4.4重復性設計 點擊新鬧鐘界面下的重復性按鈕,結果如下圖所示,可以根據自己的喜好設置周一到周日七天之內的任意幾天為鬧鐘的工作日。選擇的時候只需觸擊相應的日期之后的勾,使其變?yōu)辄S色的勾選狀態(tài)。如圖4-4: 圖4-4 4.5已添加鬧鐘的編輯 在主界面內已添加的鬧鐘上長按進入已添加鬧鐘的編輯界面,在這個界面中可以進行鬧鐘的停用及啟用。還可以對鬧鐘的各種設置進行修改,如:更換鈴聲,修改重復性等。并且,還可以進行鬧鐘的刪除。如圖4-5: 圖4-5 4.6鬧鐘提醒界面 鬧鐘響起后用戶可以點擊關閉,則鬧鐘關閉,鬧鐘提醒結束。當用戶點擊暫停再響時,鬧鐘會延時預先設定好的一段時間,然后再次響起,即懶人模式。如圖4-6: 圖4-6 5 軟件測試方案 (1)在安卓虛擬機中打開鬧鐘軟件,添加幾個鬧鐘如:7:30、8:00、8:30等,然后關注手表上的時刻,看鬧鈴能否在準確的時刻響起。 (2)刪除已有鬧鐘,然后退出軟件,重新進入軟件,驗證一下是否該鬧鐘已經從程序中永久刪除。 (3)設定一個鬧鐘如7:30,然后修改鬧鐘的重復性,設定鬧鐘的工作日為周一、周三、周四。然后再一周內驗證,周一、周三、周四的7:30時鬧鐘是否正常響起,由此來測試重復性功能程序是否編寫正確。 (4)測試軟件在后臺的運行情況,和關機狀態(tài)下的運行情況。 6設計總結 經過一段時間的努力,基于Android平臺手機鬧鐘軟件設計完成了。通過Android基礎這門課。學會了很多編程知識,通過本次實驗,加深了我們對java語言的理解和對java語言的掌握。以前只是通過上的程序實例來學習android,但是光學習課本知識是不夠的。還是應該通過實現(xiàn)來鞏固學過的知識。 在這個過程中,我學會了很多知識,比如Android環(huán)境的搭建和配置問題。安卓虛擬機的創(chuàng)建,以及通過pc上的安卓虛擬系統(tǒng)來調試程序。在編程過程中遇到了很多問題,比如一些低級的錯誤,單詞拼寫錯誤,還有方法的定義,方法的調用等等。出現(xiàn)語法錯誤之后,先定位到錯誤行,然后根據錯誤提示信息進行修改,有的問題自己改不了的,可以網上查閱資料或者和同學討論,邀請同學來協(xié)助改正錯誤。這個過程是一個很重要的學習過程,通過自己上網查閱有關資料提高了自己搜集資料和自主學習的能力。和同學一起談論問題得出的結果則使自己印象深刻。 總之,通過這次的設計學會了很多知識。提高了自己動手調試程序的能力。使自己更加熟悉一個項目的開發(fā)流程(包括需求分析,總體設計,詳細設計等)。但是自己對android程序開發(fā)還是只處于一個開始的階段。今后自己需要學習的東西還很多,只有踏踏實實學習,才能使自己處于不斷的進步之中。 7參考文獻 [1]葉達峰.Eclipse編程技術與實例[M].北京:人民郵電出版社,2006. [2]余志龍編.Google Android SDK開發(fā)范例大全(第2版)[M].北京:機械工業(yè)出版社,2010 [3] )田俊靜、張波、 黃湘情.Android基礎教程(第3版) [M].人民郵電出版社,2005 [4]王國輝李偉.Android開發(fā)寶典[M].北京:機械工業(yè)出版社,2012- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 數(shù)字濾波器 手機 鬧鐘 軟件設計
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
相關資源
更多
正為您匹配相似的精品文檔
相關搜索
鏈接地址:http://www.hcyjhs8.com/p-9436443.html