版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
緒論1.1課題背景及目的現如今社會的我們在生活中已經離不開網絡,智能手機讓低頭族的數量越來越多,似乎離開了手機我們就不能生存下去。根據數據顯示,2016年全世界智能手機的使用者已經超過21億人。手機網絡服務在生活中已經無處不在,因此我們的生活習慣也發(fā)生了較大的改變,最主要的一點就是它能夠定位追蹤。根據數據可以看出,在2015年的時候,中國手機地圖使用者達到6.05億人,到2016年,手機地圖使用者達到了6.52億人。這充分表明了人們越來越離不開定位。定位追蹤在生活中無處不在,我們出行打車、自駕,都用到了導航,平時網上購買的快遞也是對于物件的定位追蹤實現查看的。Android平臺對于開發(fā)者來說,是一個非常便捷、開放的平臺,它提供了其他平臺所沒有的環(huán)境,大大緩解了開發(fā)者們之前所存在的各種麻煩問題。此平臺是谷歌公司在2007年推出的一個軟件平臺,一經推出,馬上得到了眾多開發(fā)者們的喜愛,隨之而來的是各種軟件在系統商店的上架。在美國,系統商店已經上架的軟件達到了幾十萬款,帶來了非??捎^的收益。反觀中國,因為中文版的軟件占的比例非常少,所以Android端的軟件在中國地區(qū)開發(fā)進度較為緩慢,開發(fā)出中國用戶習慣的軟件是目前比較關鍵的點。在中國,百度地圖是中國人最能接受的地圖,因為谷歌地圖無論在是界面上還是在操作使用上全都是外文,國人操作起來就有一定的困難。當百度地圖在2010年推出百度API后,開發(fā)者們就開始狂歡了。開發(fā)者們能夠肆無忌憚的開發(fā)自己想開發(fā)的東西,既能省下大量成本,又能高效率的開發(fā)出有定位追蹤的手機軟件,最主要是得益于開放的安卓平臺和免費的百度API。本次設計的目的是在低成本、高效率的條件下開發(fā)出一款Android平臺手機軟件,它并不適用商業(yè)性,只適用于一小部分群人在生活上提供一定的便利。它通過各種技術相結合,能在電子地圖上實現注冊登錄、自我定位、軌跡跟蹤、軌跡管理和好友增刪等各種功能。1.2國內外研究現狀1.2.1Android手機平臺現狀分析雖然這幾年,蘋果公司生產的蘋果系統設備深受人們的追捧,但是不得不承認,目前全球覆蓋范圍最廣,人們用量最大的依然是搭載Android操作系統的手機,相比較其他系統,Android系統更加實用,性價比更高。根據網上數據分析出,Android系統在市場的占有率近乎達到38%,先后超過微軟系統以及蘋果系統而成為巨頭。Android不但是手機操作系統,而且是對于任何開發(fā)者開放的開發(fā)平臺。它的開放性,自由性吸引了全世界的開發(fā)者,自身的發(fā)展自然而然就迅猛起來。在中國,因為用戶量巨大,所以性價比往往是使用者考慮的最主要因素。Android手機在中國市場流行就是因為其性價比非常高,而性價比高得益于Android平臺開發(fā)出的系統具有成本低,開放性強等特點。同時,簡潔的操作界面,豐富的色彩元素也使Android手機收到平民的追捧。1.2.2位置信息服務系統研究現狀它包括兩層含義:最基礎的是是鎖定用戶所在的位置;然后找出與位置相關的各種信息服務。比如先定位使用者當前的位置,然后在規(guī)定范圍內尋找使用者想去的地方。所以此服務需要網絡來實現定位和服務兩大功能。因為國內外用戶數量巨大,各個地圖軟件之間功能細分有所區(qū)別所以他們之間的競爭非常激烈。1.3主要研究內容本文充分利用了Android平臺的優(yōu)勢和特點,主要運用GPS以及百度地圖API庫,開發(fā)出一個基于在線地圖的軌跡跟蹤系統,該系統能夠實現注冊登錄、自我定位、軌跡追蹤、歷史軌跡管理、好友管理等核心功能。
2相關技術介紹2.1Android簡介及發(fā)展歷史現代生活高大上的事物越來越多,其主要核心就是智能。Android就是智能的一種。谷歌公司推出此平臺目的是為了小型設備的應用。任何系統都是由部分組成,Android系統也一樣。免費的Linux操作系統,Java語言開發(fā)出的應用程序和中間件一起構成了該平臺。網絡運營商、手機芯片制造商和手機制造商一起組建了一個聯盟,此聯盟一起開發(fā)源代碼,一起發(fā)布新的APP,一起研發(fā)新系統,攜手共進為開發(fā)者和使用者提供更舒適的環(huán)境。我們都知道消耗品的新陳代謝是非??斓模瓦B日常用品的更新都非???。Android系統也是如此,隔一段時間就出新版本,每年因為版本太舊問題淘汰回收的手機數不勝數。從第一版本到最新的一代,逐步讓界面更加簡練,使用者用的更加;功能越來越齊全,使用者更加方便。隨著需求不斷擴大,Android系統的各個版本都在進步:1)Android1.0版本眼光是與時俱進的,在現在我們的嚴重來第一代肯定顯的太簡單,但是基本功能還算齊全,比如打電話、發(fā)短信、放無線網絡、連接藍牙以及同時處理各種進程,還能上網沖浪,在手機商店可以挑選自己喜歡的APP。2)Android1.5版本現在人們都喜歡拍照錄像。1.5版本就多了這個功能,我們可以再生活中拍攝和錄制自己喜歡的照片和視頻,還可以上傳至網絡上與網民們分享。此版本對定位技術更加優(yōu)化,性能更加強大。3)Android2.0版本此版本主要就是讓運行速度提升,節(jié)省用戶等待時間,同時分辨率更高。使用戶使用更加舒適。4)Android4.0版本4.0版本是功能非常齊全,非常強大的一個版本。它優(yōu)化了處理器,不僅可以顯示用戶的使用流量分布,還可以設置閾值,從而使用戶對自己的流量有一定的計劃。此外在界面上又有一定的改進。使用戶有更多的體驗。5)Android5.0版本網絡世界中信息安全是極為重要的。5.0版本在功能上多了訪客模式,使之更加安全。在面部解鎖功能部分進一步完善,識別度進一步提高,降低識別難度。5.0版本在界面上是一次改革,界面更加簡單、色彩更加多樣。此外,5.0版本是目前最為普及的版本。2.2Android平臺特征Android平臺有非常多的特性:與人很相似,它可以把并不感冒的程序都拋之腦后,植入用戶想使用的程序,達到自己想要的效果。在開發(fā)語言上,Java語言是最強大、最通用的,而Android中的應用都是用該語言來實現的。該平臺支持日常生活中頻繁用到的多媒體,如照片、視頻、無線、定位等等。生活中,我們在智能設備玩的游戲基本都是二維和三維,而二維、三維圖形庫都是被Android系統所包含的。這對于現如今社會網絡游戲盛行的時代,開發(fā)者們能夠更好的去開發(fā)各種游戲。存儲是任何只能設施都要具備的功能,而Android平臺具有強大的存儲功能,用戶不需要不斷的清除緩存之類的操作,給用戶的使用帶來極大的方便。2.3Android平臺體系架構Android系統包括應用程序、應用程序框架、核心類庫、Android運行環(huán)境和linux內核五個部分,如圖2.1所示。圖2.1Android平臺架構1)Application(應用程序)Application是原生的應用程序:里面包含系統自帶的應用程序如了原生的瀏覽器、手機的桌面,最基礎的電話、短信等,還有用戶們根據自己的喜好從商店下載的各種應用。2)ApplicationFramework(應用程序框架)由5個占據單獨線程的服務組成,它們之間的交流只是靠通信機。提供核心開發(fā)API,包含了java代碼,調用了底層c代碼??蚣軐泳拖喈斢谌硕即竽X,它支配著應用程序的全局,任何操作都要管理。無論是什么事件,都是需要各個服務支持的。3)Libraries(庫)包含了c代碼庫;OpenGL:即圖形快速顯示,游戲開發(fā);webkit:即瀏覽器內核。4)AndroidRuntime(Android運行時)DalvikVM:虛擬機,android代碼運行在此虛擬機,運行時調用LibrariesC代碼庫。5)LinuxKemel(Linux內核)Linux內核包含了:安全性的管理、運行內存的處理、應用進程處理、電源管理、硬件的驅動等系統最為基礎的管理。Linux的適應能力非常強大,可以在各種環(huán)境下運行。2.4Android的系統優(yōu)勢和特點2.4.1Android的系統優(yōu)勢1)開放性:Android系統是開源的,所有的移動手機制造廠商都可以免費的使用,廠商也可以根據自己的需求對系統進行優(yōu)化,這使得軟件開發(fā)者很是喜歡,他們可以根據自己對系統的理解去做一些大膽的嘗試,極大地滿足了用戶對的需求。2)選擇性強:大多數的廠商都會根據Android系統開發(fā)出格式各樣的軟件產品,但是這都不會使數據產生錯亂,不會有軟件對于硬件的兼容問題。這使得Android系統能夠在不同的設備上進行開發(fā)。3)開發(fā)方便:谷歌公司把Android系統的源碼給予公開,是開發(fā)者能夠更好的交流,提供了更好的開發(fā)資源。2.4.2Android的系統特點1)傳感器類型的多種支持Android系統的手機支持各種各樣的傳感器,這個使得手機具有強大的感應外界環(huán)境的能力。如加速度傳感器、旋轉向量傳感器、重力傳感器等,這些傳感器的支持可以使手機對于速度方面的數據測量有了一定的可能。2)網絡連接通信的多樣性移動手機的通信功能是必須的,對于此功能的實現,谷歌工程師把通信的功能封裝在了系統的底層。這樣開發(fā)者就可以非常方便的去調用系統中的庫方法來實現通信功能。同時,Android還提供了傳統的通信模式HTTP和Socket通信方式。除此之外Android系統還支持藍牙傳輸的功能。3)定位功能全面性對于定位的實現,Android系統提供了GPS定位和網絡的定位。網絡定位是通過手機連接網絡去搜索周邊的信息如基站、WiFi等信息通過服務器返回數據進行的定位。GPS定位是手機去接受衛(wèi)星信號,進行室外定位的一種方式。這使得開發(fā)者對于手機的定位有了方便的選擇。2.5Eclipse開發(fā)環(huán)境Eclipse就像開發(fā)者的一個生產工廠,它一開始有生產機械,車床,各種機器,就像工人會用工廠里的設備生產出新的設備,來擴充工廠的規(guī)模,開發(fā)者用Eclipse開發(fā)出新的工具,這些工具反回來可以擴充Eclipse的功能。這也是它的一個亮點。Eclipse平臺由五種組件組成:平臺核心(platformkernel)、工作臺(workbench)、工作區(qū)(workspace)、團隊組件(tramcomponent)以及說明組件(help)。Eclipse軟件如圖2.2所示。圖2.2Eclipse界面圖2.6Android應用程序開發(fā)環(huán)境搭建Android應用程序的開發(fā)必不可少的一步就是安裝開發(fā)工具。所以我們先在電腦上安裝各種開發(fā)需要的工具。我們需要搭建的有JDK、ADT等等。百度搜索JDK下載,找到需要的版本,然后下載下來安裝。我的電腦系統是windows7,然后把JDK安裝在E盤的Java文件夾下。然后是環(huán)境配置。JAVA_HOME值為:E:\ProgramFiles\Java\jdk1.8.0_31;如圖2.3所示。圖2.3JAVA_HOME值CLASSPATH值為:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar如圖2.4所示。圖2.4CLASSPATH值Path值:%JAVA_HOME%\bin;如圖2.5所示。圖2.5Path值安裝完成后我們可以用命令查看。按wins+R打開運行窗口,輸入cmd查看。如圖2.6所示對話框。圖2.6JDK配置成功后窗口顯示2.7百度地圖相關介紹2.7.1手機GPSGPS全球定位系統這種高科技技術最開始只是在軍隊使用,民間是使用不到的。隨著信息科技的發(fā)展,GPS慢慢的融入社會廣泛的領域中。我們經??梢钥匆娒绹目苹么笃谐霈FGPS跟蹤匪徒,它的實現是通過衛(wèi)星信號傳輸到地面獲取信息,精度高,效率高使其成為我們生活中最常用的定位技術。2.7.2百度地圖API及SDK百度地圖移動版API(Android)是位Android系統所提供的一個服務接口。開發(fā)人員通過對接口的使用,很簡單的就可以使用百度所提供的數據。百度地圖移動版API對于地圖的功能提供了很大幫助。開發(fā)者根據百度地圖API的介紹,可以去使用定位,路線展示等功能。為了移動客戶端開發(fā)者對百度地圖的使用,百度公司提供了百度地圖的SDK,使開發(fā)者對定位功能的進一步應用變的非常便捷。并且SDK數據包比較小,功能較多,接口十分友好。2.8Mysql數據庫MySQL是一種開放源代碼的關系型數據庫管理系統(RDBMS),MySQL數據庫系統使用最常用的數據庫管理語言--結構化查詢語言(SQL)進行數據庫管理。由于MySQL是開放源代碼的,因此任何人都可以在GeneralPublicLicense的許可下下載并根據個性化的需要對其進行修改。MySQL因為其速度、可靠性和適應性而備受關注。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。2.9系統開發(fā)環(huán)境處理器:Intel(R)Core(TM)i5-3230MCPU@2.60GHz安裝內存(RAM):6.00GB操作系統:Windows764位開發(fā)環(huán)境:JDK8.0、Tomcat7.67、Mysql5.5
3系統分析3.1可行性分析3.1.1經濟可行性本次設計只是個人在小范圍用的一款軟件,并不會用到商業(yè)領域,所以在設計中高難度的功能是非常少的。另外因為Android開發(fā)平臺的自由性,加上百度API也是不收費的,做次設計并不需要付出很多的成本,上網查閱的資料收費也比較低。至于設計完成后的最后測試條件,只用到了自己的一臺索尼筆記本和一部安卓系統的手機,也大大節(jié)省了硬件費用。3.1.2技術可行性在大學期間,我所學的計算機方面的專業(yè)知識在開發(fā)此次系統方面比較少,此次的系統重點主要在地圖這一塊,我在這方便不是很懂,但是我學過Java編程,學習的過程中也并不感覺很困難。而且隨著科技的發(fā)展,Android手機軟件的開發(fā)技術是越來越成熟,網上的教程也是種類繁多。自己多上網查閱資料,學習相關知識,不懂的也可以請教指導老師,能夠在這個幾個月內完成此次畢業(yè)設計。3.2系統需求分析本文設計的軌跡跟蹤服務的基本功能是用戶的注冊登錄,自我定位,進行軌跡追蹤,還有軌跡管理,好友增刪等功能。總的功能需求為以下幾點:1)用戶注冊、登錄用戶以手機號碼作為用戶名進行注冊。注冊成功后,用戶輸入正確的手機號碼和密碼進行登錄操作,用戶可以保存自己的用戶名和密碼,以方便下次登錄。2)自我定位利用GPS獲取的位置信息,確定用戶目前所處的地理位置,將此位置用鮮明的綠色的點標記在百度地圖上,同時顯示出此位置的經緯度。當用戶移動時,位置信息和定位點能夠實時更新,同時地圖也跟隨用戶的移動而移動來保證用戶的定位點始終處于手機屏幕的中心位置。3)軌跡追蹤需要保存軌跡前可以自定義該軌跡的名稱,然后系統記錄每次定位的坐標,自動畫出路線軌跡,并保存在數據庫中。4)軌跡管理在軌跡管理界面可以看到之前保存的各種歷史軌跡,長按某條記錄可以選擇查看或者刪除。5)好友管理好友管理模塊包括好友的添加,好友的刪除,好友的信息查看,好友的歷史位置查看。其中好友的添加是用戶通過搜索手機號碼查找用戶添加好友;好友的刪除是對好友進行了刪除操作;好友的信息查看使用戶去查看某個好友的個人信息;好友的歷史位置查看是用戶對自己添加過的好友的歷史位置進行查看。3.3數據流圖3.3.1軌跡追蹤系統的頂層數據流圖圖3.1系統頂層數據流圖3.3.2軌跡追蹤系統的0層數據流圖圖3.2系統0層數據流圖3.3.3軌跡追蹤系統各個模塊的1層數據流圖1)登錄注冊模塊的1層數據流圖圖3.3登錄注冊模塊1層數據流圖2)定位模塊的1層數據流圖圖3.4定位模塊1層數據流圖3)好友模塊的1層數據流圖圖3.5好友模塊1層數據流圖4)歷史軌跡模塊1層數據流圖圖3.6歷史軌跡模塊1層數據流圖3.4數據字典表3.1數據結構描述數據結構名稱含義組成用戶用戶所有的相關信息用戶id,手機號碼,密碼,姓名,性別,年齡好友用戶所添加的好友,定義了好友的相關信息好友id,用戶手機號碼,姓名,好友手機號碼歷史位置用戶所走過的歷史位置,定義了歷史位置的相關信息用戶id,手機號,經度,緯度,時間 表3.2數據項描述數據項名稱含義說明別名類型長度取值范圍取值含義與其他數據項邏輯關系用戶id唯一標識一名用戶主鍵整型100-9自增無特殊含義手機號用戶登錄唯一標示用戶名字符型110-9密碼用戶登錄時驗證密碼字符型15用戶自己設置字符用戶賬號的唯一確定性姓名用戶名字名字字符型20年齡用戶的年齡整型30-9性別用戶性別字符型2男或女好友id用戶所添加好友主鍵整型100-9一個用戶可以有多個好友,是一對多的關系用戶手機號用戶所擁有的手機號字符型110-9姓名好友姓名字符20好友手機號好友的手機號碼字符110-9歷史位置id用戶歷史位置的主鍵整型100-9經度用戶所在位置的經度坐標雙精度型100.000000-9緯度用戶所在位置的緯度坐標雙精度型100.000000-9時間用戶此時的時間字符型50表3.3數據流描述數據流說明數據流來源數據流去向組成用戶個人信息用戶注冊時輸入用戶注冊手機號,密碼,姓名,性別,年齡注冊反饋信息注冊提示信息注冊用戶注冊是否成功用戶登錄信息用戶登錄時輸入信息用戶登錄手機號,密碼登錄反饋信息登錄提示信息登錄用戶登錄是否成功好友信息用戶添加好友指定手機號用戶好友添加好友手機號添加反饋信息添加之后提示信息好友添加用戶添加是否成功好友信息查看用戶查看好友時聯好友信息用戶好友信息好友的手機號,姓名,性別,年齡好友刪除用戶刪除好友用戶好友信息好友手機號好友刪除反饋信息好友刪除信息提示好友信息用戶好友手機號歷史位置查看查看歷史位置信息歷史位置記錄表歷史位置展示用戶手機號,經緯度坐標,時期時間表3.4數據存儲描述數據存儲說明輸入數據流輸出數據流組成存取方式用戶表存儲用戶信息用戶個人信息用戶個人信息id,手機號,密碼,姓名,年齡,性別隨機存儲好友表存儲用戶所添加的好友好友記錄好友記錄id,用戶手機號,姓名,好友人手機號隨機存儲歷史位置記錄表存儲用戶的歷史位置歷史位置記錄信息歷史位置記錄信息id,用戶手機號,經度,緯度,時間隨機存儲表3.5數據處理過程描述過程名輸入數據流輸出數據流處理過程簡要說明登錄用戶登錄輸入的信息登錄反饋信息用戶登錄輸入正確的信息,登錄成功之后進入主界面,失敗提示輸入信息不正確注冊用戶注冊是輸入個人信息注冊反饋信息用戶注冊輸入個人的信息,注冊成功之后加入用戶表,失敗提示注冊失敗好友添加添加的好友信息添加好友反饋信息用戶輸入添加的手機號碼,成功之后提示添加成功,失敗說明不存在。好友刪除刪除的好友信息刪除提示信息用戶選擇要刪除的好友,然后提示刪除信息。好友展示好友記錄好友列表用戶可以看到好友的各種信息定位用戶位置信息地圖顯示位置用戶定位完成后可以在地圖上顯示歷史位置查看選擇某個時間的歷史位置信息進行查看地圖顯示位置信息用戶選擇某個時間的歷史位置進行查看,然后地圖上顯示出來3.5功能結構設計軌跡跟蹤系統主要功能有登錄注冊、自我定位、軌跡跟蹤、軌跡管理以及好友管理等模塊。如圖3.6所示為軌跡跟蹤系統的總體模塊圖:圖3.6軌跡跟蹤系統功能模塊圖1)登錄注冊模塊功能用戶能夠注冊,用手機號碼作為用戶名的注冊方式。用戶可以保存自己的用戶名和密碼,以方便下次登錄。用戶登錄,需要用戶輸入正確的手機號碼和密碼進行登錄操作。2)自我定位模塊功能確定用戶目前所處的地理位置,將此位置用鮮明的綠色的點標記在百度地圖上,同時顯示出此位置的經緯度。當用戶移動時,位置信息和定位點能夠實時更新。3)好友管理模塊功能用戶可以查看并修改自己的信息,添加刪除好友,查看好友的信息并查看好友的地理位置。4)軌跡跟蹤模塊用戶可以自定義軌跡的名稱,根據起始點的定位系統會自動繪制出路線。5)軌跡管理模塊用戶可以長按某條歷史軌跡,并選擇查看或者選擇刪除該軌跡記錄。3.6系統模塊3.6.1登陸注冊功能用戶在使用軌跡追蹤系統時,需要進行用戶注冊。在注冊時用戶需要輸入自己的手機號,密碼,姓名,性別,年齡,家庭住址。注冊的時候,會檢查所輸入的手機號是否已經注冊,如果已經注冊的話,會提示用戶當前手機號已經注冊。如果未注冊的手機號,注冊成功之后就會跳轉到登錄界面。在登錄界面輸入注冊的手機號碼和密碼。點擊登錄按鈕之后服務器端會判斷手機號和密碼是否正確,正確之后進入到程序的主頁面。用戶在登錄的時候還可以對自己的手機號和密碼進行保存,方便下次登錄使用。如圖3.7所示為登錄注冊模塊流程圖:圖3.7登錄注冊流程圖3.6.2自我定位功能自我定位利用GPS獲取的位置信息,確定用戶目前所處的地理位置,將此位置用鮮明的綠色的點標記在百度地圖上,并處于屏幕中心位置。自我定位流程圖如圖3.8所示。圖3.8自我定位流程圖3.6.3軌跡追蹤功能需要保存軌跡前可以自定義該軌跡的名稱,然后系統記錄每次定位的坐標,自動畫出路線軌跡,并保存在數據庫中。流程圖如圖3.9所示。圖3.9軌跡追蹤流程圖3.6.4軌跡管理功能在軌跡管理界面可以看到之前保存的各種歷史軌跡,長按某條記錄可以選擇查看或者刪除。流程圖如圖3.10所示。圖3.10軌跡管理流程圖3.6.5好友功能好友模塊可以查看并修改用戶的信息,可以通過輸入正確的手機號來添加好友。添加完成之后用戶可以在好友界面顯示出來,同時用戶也可刪除不需要的好友。好友添加流程圖如3.11所示。好友信息設置流程圖3.12所示。 圖3.11好友添加流程圖圖3.12好友信息設置流程圖
4數據庫設計4.1概念結構設計1)軌跡跟蹤系統的數據庫包含了多張表,表與表之間的關系如圖4.1所示。圖4.1數據庫表關聯圖2)用戶信息表記錄了用戶的個人信息。如圖4.2所示。圖4.2用戶信息表E_R圖3)好友表是為了保存用戶所添加的好友。如圖4.3所示。 圖4.3好友表E_R圖4)歷史位置記錄表對用戶所走過的歷史位置進行記錄。如圖4.4所示。圖4.4歷史位置記錄表E_R圖4.2邏輯結構設計 1)用戶個人信息表用戶個人信息表,用來存儲用戶的個人注冊信息,在用戶登錄的時候調用相應的字段完成相應的流程。如表4.1所示。表4.1用戶注冊表字段名稱字段類型長度約束說明idINT10主鍵自增列usernameVARCHAR20非空用戶姓名passwordVARCHAR15非空密碼phoneVARCHAR11非空電話號碼sexVARCHAR2非空性別ageINT3非空年齡2)好友表好友表,主要是對應用中添加的好友信息進行存儲,在需要調用相應功能時,會查詢相應的字段數據,完成功能流程。如表4.2所示。表4.2好友表字段名稱字段類型長度約束說明idINT10主鍵自增列myphoneVARCHAR11非空用戶手機號phoneVARCHAR11非空好友手機號3)歷史位置信息數據表歷史位置信息表,應用記錄用戶的位置以經緯度的方式存儲,并記錄當前的時間,當查看歷史位置時在圖上定位到歷史位置。如表4.3所示。表4.3歷史位置記錄表字段名稱字段類型長度約束說明idINT10主鍵自增列myphoneVARCHAR11非空用戶手機號longitudeDOUBLE10非空經度latitudeDOUBLE10非空緯度dateVARCHAR50非空日期時間
5系統功能的實現與測試5.1系統功能的實現5.1.1登錄注冊功能的實現用戶在使用軌跡追蹤系統的時候,第一個界面是登錄界面,如圖5.1所示的登錄界面。如果用戶已經注冊過本應用軟件,就可以直接登錄使用。如果用戶從來沒有注冊過,就需要去注冊之后才能使用,在登錄界面有“注冊用戶”的字樣。用戶點擊該字樣就可以跳轉到注冊界面。初測界面如圖5.2所示。 圖5.1登錄界面 圖5.2注冊界面登錄功能的具體實現:用戶登錄時輸入手機號和密碼,點擊登錄按鈕,服務端會判斷手機號碼和密碼是否匹配,如果匹配正確就進入主界面,否則提示手機號或密碼不正確。注冊功能的具體實現:用戶點擊“注冊用戶”的字樣之后跳轉到注冊界面,用戶需要輸入手機號、密碼、姓名、性別、年齡共五個信息。每個信息必須填寫,不能為空,如果某一項為空的話就會提示用戶請?zhí)顚懲暾?,不能為空。填寫完整之后點擊提交按鈕,會把填寫的信息發(fā)送到服務器進行判斷,如果沒有注冊過,就注冊成功,否則就會提示注冊失敗。5.1.2自我定位功能的實現軌跡跟蹤系統實現定位和行程記錄功能的過程中,使用的是百度地圖定位SDK開發(fā)包。這是百度公司專門為移動端開發(fā)者所提供的服務接口。在使用百度定位SDK時,需要開發(fā)者去百度開放平臺,根據開發(fā)者的工程文件名,去申請定位的KEY值,便可以根據百度所提供的接口,實現開發(fā)者所需要的功能。在申請KEY值得時候,開發(fā)者需要從簽名文件中獲取SHA1值。獲取SHA1值首先進入本身電腦Android模擬器存儲的目錄,然后再次目錄下打開命令窗口。打開是命令窗口之后,需要輸入密碼,一般為“.android”或者“android”,根據電腦會有所不同。密碼正確之后就會出現所需要的SHA1值。然后在申請KEY值得平臺上輸入之后得到KEY值,然后在工程的清單文件里面配置一下即可完成。百度地圖SDK提供了許多的功能,本系統主要是為了使用百度地圖的定位功能。定位功能的實現是基于服務上面實現的,因此定位的實現是需要開發(fā)者在清單文件里面配置。定位環(huán)境配置完成之后,當用戶在客戶端開啟應用時,應用會調用接口,發(fā)起定位請求。定位模塊會利用網絡采集位置信息,并將數據發(fā)送給百度服務器,對數據進行處理后,返回給客戶端,客戶端調用數據接口,得到返回的定位結果,最后實現客戶端的定位,如圖5.3所示。圖5.3自我定位界面5.2.3好友管理模塊的實現好友管理模塊的功能設計主要有三個部分:好友的添加、查看和刪除;查看個人信息;查看歷史位置。1)好友添加用戶在登錄成功之后進入主界面,點擊到我的好友界面,第一次進入是沒有好友的,所以需要用戶自己去添加好友。當添加過好友之后,界面就會顯示添加的好友姓名和聯系電話。用戶添加好友要點擊添加按鈕跳轉到添加好友的界面。如圖5.4所示。添加好友首先是可以根據輸入手機號碼查找好友,然后跳轉到查詢結果頁面,如果沒有此好友存在就會提示用戶好友不存在,存在好友就會出現好友的姓名和手機號。圖5.4添加好友界面好友添加的具體實現:用戶在添加好友界面輸入需要添加的手機號碼,點擊查找,客戶端會把輸入的手機號碼發(fā)送到服務端進行查詢,如果沒有該好友就會顯示“不存在的好友”字樣,否則就會把要查詢的好友的信息顯示到查詢結果界面。然后用戶點擊添加,如果用戶已經添加過該好友,那么就會提示用戶已添加過的好友,否則就會提示添加成功。2)查看個人信息用戶在我的好友界面點擊左上角的人形頭像就可以查看用戶個人信息,也可以修改個人信息。查看個人信息具體實現:個人信息的獲取是根據用戶登錄時的手機號碼為標識,去獲取服務器的個人信息顯示到手機客戶端。用戶修改個人信息之后數據庫的信息會立即修改。5.2.4軌跡跟蹤模塊用戶如果需要記錄軌跡,可輸入自定義名稱,并記錄出行過程中的軌跡。如圖5.5,5.6所示。圖5.5軌跡追蹤界面圖5.6軌跡追蹤定位界面5.2.5軌跡管理模塊軌跡管理模塊所實現的功能主要是用戶能夠管理自己的歷史軌跡,其兩個子功能分別為軌跡查看和軌跡刪除。如圖5.7所示。圖5.7歷史軌跡管理當用戶查看歷史軌跡時,系統會從軌跡記錄列表界面跳轉到地圖界面,系統用軌跡繪制模塊的功能向用戶展示歷史軌跡。同時可通過調節(jié)地圖的縮放比例來查看軌跡。如圖5.8所示。用戶對已經保存的軌跡可以進行刪除操作,通過點擊相應的按鈕可以將軌跡記錄從記錄列表中移除,同時刪除數據庫中該條軌跡的全部信息。圖5.8歷史軌跡查看軌跡中所記錄的點都會有明顯的綠色標記顯示出來。如圖5.9所示。圖5.9歷史軌跡標記圖 5.2功能測試該軌跡追蹤系統劃分成用戶登錄、自我定位、軌跡追蹤、軌跡管理、好友管理五大功能模塊。在各個模塊完成后,需要把整個系統進行檢測,保證其功能可以正常運行。針對系統的特性,主要重以下幾個方面進行測試:應用的功能是否滿足需求;代碼邏輯是否合理,是否存在bug。如表5.1,5.2,5.3,5.4,5.5所示。表5.1登錄注冊功能測試表測試模塊軌跡追蹤系統登錄注冊功能定義用戶在使用系統時能夠注冊登錄用例用戶可以注冊登錄使用預期效果1、用戶首次登錄需要輸入用戶名密碼2、用戶第二次登錄的時候如果密碼被保存,不用輸入用戶名和密碼實際效果與預期的效果一致結論功能測試通過 表5.2自我定位功能測試表測試模塊軌跡追蹤系統自我定位功能定義用戶在使用系統時能自我定位用例用戶可以自我定位預期效果能自動定位并顯示在地圖中心實際效果與預期的效果一致結論功能測試通過表5.3軌跡跟蹤功能測試表測試模塊軌跡追蹤系統軌跡跟蹤功能定義用戶在使用系統時能實現歷史軌跡保存用例用戶可以記錄經過的路線預期效果能把經過路線標記出來并保存實際效果與預期的效果一致結論功能測試通過表5.4軌跡管理功能測試表測試模塊軌跡追蹤系統軌跡管理功能定義用戶在使用系統時能管理軌跡用例用戶可以查看或刪除記錄預期效果長按可以出現查看或者刪除選項卡進行選擇實際效果與預期的效果一致結論功能測試通過表5.5好友功能測試表測試模塊軌跡追蹤系統好友功能定義實現類似QQ的通訊用例用戶能夠實現好友的添加刪除,查看個人和好友信息,修改個人信息預期效果1、能夠添加刪除好友2、能夠查看個人和好友信息3、能夠修改個人信息實際效果與預期的效果一致結論功能測試通過本次測試依據現有的功能模塊進行測試。通過測試結果可以看出:無論是在模擬器上還是在真機上,該系統各個功能都能完全實現,符合驗收標準。
參考文獻[1]李芙蓉.當前智能手機操作系統及其比較分析[J].甘肅科技縱橫,2015,37(5).[2]RichardFerraro.LBS應用開發(fā)[M].北京:人民郵電出版社,2014.[3]馬越.Android的架構與應用[D].中國地質大學(北京),2015.[4]杜傳明.百度地圖API在小型地理信息系統中的應用[J].測繪與空間地理信息,2015,34(2):152-153.[5]施連敏,蓋之華.基于Android的百度地圖應用的搭建[J].技術與市場,2016,21(12).[6]趙哲.基于Android平臺的移動應用構建研究與設計[J].新型工業(yè)化,2013,(6).[7]劉雪.Android平臺下移動軌跡定位信息系統的設計與實現[D].浙江:浙江師范大學,2013.[8]李海勝,姚存治.基于移動終端的GPS監(jiān)控系統設計與實現[J].漯河職業(yè)技術學院學報,2014,(2):34-35.[9]劉勝前,陳立定,任志剛.基于Android移動平臺和GPS應用服務研究[J].信息技術,2012,(1):82-85.[10]趙建勛.基于Android平臺的移動位置服務的開發(fā)與實現[J].現代商貿工業(yè),2013,22(20):271-272.[11]李錚.基于Android的位置跟蹤系統設計與實現[J].承德石油高等專科學校學報,2013,15(5):33-36.[12]祝洪嬌.基于Android平臺的位置服務系統的設計與實現[D].北京:北京交通大學,2012.[13]曾宏遠,崔荔蒙.從零開始學Android編程[M].北京:電子工業(yè)出版社,2012.[14]林志偉,楊昱昺.基于Android系統的電子地圖運動軌跡繪制的研究與實現[J].科技創(chuàng)新與應用,2014,(17):20-21.[15]李瑞宣,王山東,徐志遠,等.基于Android平臺定位系統設計和實現[J].信息技術,2013,(12):187-190.[16]陳鎖柱.基于GoogleAndroid平臺移動軌跡記錄系統的研究與應用[D].內蒙古大學,2014.
結束語經過了幾個月的學習和設計,我終于完成了此次畢業(yè)設計與論文。從一開始的選到課題到最后的收工,我一直為此而忙碌著,每一步都是嘗試與挑戰(zhàn)。這段時間里,從一開始的基礎知識不扎實,甚至有些都沒學過,通過上網查閱大量資料文獻,還有老師的指導,讓自己的思路慢慢清晰,作品一步一步的完善。每一次修復BUG都給予我無限的動力,那種成就感是不能用言語來表達的。在此期間我不僅在學習上收獲很多,更是學到了一些道理:與人相處要和善,會說話;對待自己的工作要有一顆敬業(yè)的心;對于困難要積極面對,自我突破,勝不驕敗不餒。此外我也存在一些不足之處,如專業(yè)知識不是非常扎實,有點地方不夠細心,明明在眼前卻很久沒發(fā)現等等。這次設計使我人生道路上又增加了一道色彩,在以后的學習中激勵我進步,為以后步入社會工作累積了經驗。
致謝本次畢業(yè)設計和論文是在我的導師徐曉君老師全程指導下完成的。徐老師多次詢問畢業(yè)設計的進度,每當我在設計過程中遇到問題卡主的時候,她都會用那淵博的專業(yè)知識位我解惑,幫助我開闊研究思路,一步一步完成畢業(yè)設計。徐老師一絲不茍、精益求精、嚴謹求實的作風不僅在學習上指導了我,在生活上也幫助了許多,教我為人處事,使我終身受益。感謝學院所有給我上過課的老師,感謝他們在專業(yè)知識方便對我的教導,在生活上對我的關心。還要感謝同學,在我整個畢業(yè)設計過程中給我各種耐心的幫助和在生活上的鼓勵,四年同窗,兩不相忘。最后感謝我的家人,他們是我最堅強的后盾,他們的支持與情感是我一生的財富。謝謝!開題報告學院姓名班級學號指導教師畢業(yè)設計(論文)題目基于在線地圖的軌跡跟蹤服務題目類型□工程設計□技術開發(fā)□軟件工程□理論研究和方法應用□管理模式設計□其他選題目的及意義隨著移動通訊網絡在全球覆蓋范圍的擴大,智能手機已經成為人們現代社會生活中獲取信息的主要設備。目前全球智能手機用戶為21億人,較2014年增長了23%。手機移動網絡服務給人們日常生活帶來了翻天覆地的變化,而位置則是這場變革中的關鍵要素之一。調查顯示,中國手機地圖市場規(guī)模在2012年僅1.9億元,到2014年這一規(guī)模增長至4.1億元,同比增長了115.8%。可見,手機用戶對地理空間位置信息的需求更加強烈?;谖恢眯畔⑻峁┓盏能壽E追蹤應用系統滿足了手機用戶們這方面的需求,在物流管理、旅游、客運公交和尋找走丟的家人等眾多領域,這類軟件都能夠產生積極的影響。2010年4月23日,百度地圖正式宣布開放地圖API,滿足了移動開發(fā)者對地圖應用的開發(fā)需求。相比較多數Android應用中采用的GoogleMaps,在手機地圖中接入百度地圖更符合中國人對地理信息獲取和查詢的要求。因此,百度地圖的免費性和Android平臺的開源性,使得開發(fā)者能夠在低成本高效率的情況下開發(fā)基于位置信息服務的Android手機軟件。本應用設計在這樣的技術背景下,旨在實現一款Android平臺手機軟件,它通過獲取GPS定位數據,在百度地圖上顯示并記錄用戶的戶外移動軌跡。該軟件可陪伴用戶跑步、騎車、散步,完整記錄鍛煉歷程和所用的時間既能作為美好的回憶也可根據以往路線的對比來優(yōu)化行程。設計(研究)現狀和發(fā)展趨勢國內外研究現狀Android手機平臺現狀分析搭載Android操作系統的智能手機目前已經成為市場上最炙手可熱的智能產品。來自美國市場研究機構Gartner的數據顯示,Android操作系統所占的市場份額從2008年的0.5%急劇增長到2010年的22.7%,先后超過微軟的WindowsMobile及蘋果的iOS。近幾年增長勢頭持續(xù),截至2016年4月的三個月中,Android在美國市場上所占份額為67.6%,高于去年同期的62.4%。如此迅猛的發(fā)展得益于Android平臺自身獨特優(yōu)勢:它不僅僅是一款手機操作系統,更像是一個對任何開發(fā)人員開放的移動終端開發(fā)平臺。所以一經推出便引起世界各地開源愛好者的關注。目前的Android系統,具有成本低廉、良好的用戶體驗、較強的開放性等特點,成本低廉使得Android手機在更注重性價比的中國市場中迅速占據一席之地,而開源性吸引了更多的開發(fā)商在Android平臺不斷推出各式各樣的應用程序。另外,Android智能手機有Android
Market和眾多第三方應用商店做后盾,其應用方面的資源非常豐富。同時,簡單易懂的操作界面也使Android手機更受消費者的歡迎。位置信息服務系統研究現狀LBS(LocationBasedService,基于位置的服務)最初只是移動運營商招徠顧客的一種手段,如今越來越多的消費者卻希望能隨時隨地使用這項服務。LBS結合空間信息技術和無線通訊技術,實時獲取移動終端用戶的地理位置信息,能夠在電子地圖平臺支持下為用戶提供這種增值業(yè)務來輔助解決其他問題。比如信息查詢、地圖服務、手持終端的導航、弱勢群體的跟蹤等。目前市場中此類手機軟件所依賴的網絡地圖服務不盡相同,常見的幾種為GoogleMaps、高德地圖、百度地圖等。課題研究的主要內容在深入分析Android平臺相關概念和技術的基礎上,結合百度地圖API庫設計并實現了一個Android平臺軌跡追蹤系統,該系統能夠實現自我定位、實時軌跡追蹤、歷史軌跡管理等核心功能。該系統不僅可用來記錄平時運動的軌跡,用戶當前的地理位置,在一些緊急情況,如老人或者兒童走失的情況下,在同是好友的基礎上,用戶可定位走失人員的位置,并顯示出周邊標志性建筑,能夠及時的找到走失者。課題的工作方案第一步,查閱資料和相關的文檔,確定所需要的功能如何實現。第二步,開發(fā)環(huán)境的搭建:包括Android環(huán)境變量設置,JDK,ADT的下載安裝。第三步,進行系統的可行性分析,完成系統的需求分析。第四步,對系統進行概要設計,設計系統的結構圖,確定各模塊(頁面)之間的調用關系,設計出結構良好的數據庫。第五步,對系統進行詳細設計,確定各模塊,包括軟件系統的歡迎界面,登陸界面,注冊界面,地圖界面,我的記錄界面。第六步,進行軟件編碼,實現其各項基本功能。第七步,系統完成后進行真實的檢測,確保數據的準確性。課題研究有無困難準備如何解決本課題研究方面的主要困難在于,系統如何定位跟蹤及記錄。解決方案:了解目前對于相關系統的研究,參考相關的文獻和資料,了解其解決方案,學習其算法知識加以運用。主要參考文獻[1]李芙蓉.當前智能手機操作系統及其比較分析[J].甘肅科技縱橫,2008,37(5)[2]RichardFerraro.LBS應用開發(fā)[M].北京:人民郵電出版社,2012[3]馬越.Android的架構與應用[D].中國地質大學(北京),2008.[4]杜傳明.百度地圖API在小型地理信息系統中的應用[J].測繪與空間地理信息,2011,34(2):152-153.[5]施連敏,蓋之華.基于Android的百度地圖應用的搭建[J].技術與市場,2014,21(12).[6]趙哲.基于Android平臺的移動應用構建研究與設計[J].新型工業(yè)化,2013,(6).[7]劉雪.Android平臺下移動軌跡定位信息系統的設計與實現[D].浙江:浙江師范大學,2013.[8]李海勝,姚存治.基于移動終端的GPS監(jiān)控系統設計與實現[J].漯河職業(yè)技術學院學報,2014,(2):34-35.[9]劉勝前,陳立定,任志剛.基于Android移動平臺和GPS應用服務研究[J].信息技術,2012,(1):82-85.[10]趙建勛.基于Android平臺的移動位置服務的開發(fā)與實現[J].現代商貿工業(yè),2010,22(20):271-272.[11]李錚.基于Android的位置跟蹤系統設計與實現[J].承德石油高等專科學校學報,2013,15(5):33-36.[12]祝洪嬌.基于Android平臺的位置服務系統的設計與實現[D].北京:北京交通大學,2012.[13]曾宏遠,崔荔蒙.從零開始學Android編程[M].北京:電子工業(yè)出版社,2012.[14]林志偉,楊昱昺.基于Android系統的電子地圖運動軌跡繪制的研究與實現[J].科技創(chuàng)新與應用,2014,(17):20-21.[15]李瑞宣,王山東,徐志遠,等.基于Android平臺定位系統設計和實現[J].信息技術,2013,(12):187-190.[16]陳鎖柱.基于GoogleAndroid平臺移動軌跡記錄系統的研究與應用[D].內蒙古大學,2011.計劃進度2016.11.30-2016.12.10:查閱相關的文獻資料,撰寫開題報告,并提交報告。2016.12.11-2016.12.20:需求分析,確定設計方案。20
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金色的魚鉤教案范文10篇
- 半年個人工作計劃
- 元宵大班教案
- 2021北師大版三年級數學下冊教案設計
- 四年級上冊語文教學計劃4篇
- 等待高中作文(集錦15篇)
- 幼兒園畢業(yè)實習報告3篇
- 在外貿公司實習報告集合8篇
- 上半年道路交通安全工作總結
- 天宮課堂第三課300字作文10篇參考
- 2024-2025學年高二上學期期末數學試卷(提高篇)(含答案)
- 安全生產事故案例分析
- 2024年07月22208政治學原理期末試題答案
- 《客戶開發(fā)技巧》課件
- 《防范于心反詐于行》中小學防范電信網絡詐騙知識宣傳課件
- 口腔執(zhí)業(yè)醫(yī)師定期考核試題(資料)帶答案
- 2023-2024學年北京市通州區(qū)九年級(上)期末語文試卷
- 2024-2030年中國瑜伽培訓行業(yè)運營模式及投資戰(zhàn)略規(guī)劃分析報告
- 人教版七年級語文上冊《課內文言文基礎知識 》專項測試卷及答案
- 2023-2024學年廣東省深圳市龍崗區(qū)八年級(上)期末英語試卷
- DB23-T 3768-2024北方種鵝節(jié)水生態(tài)旱養(yǎng)管理技術規(guī)程
評論
0/150
提交評論