Đồ án tốt nghiệp Khoa Công nghệ thông tin Xây dựng ứng dụng MobileGIS

80 533 0
Đồ án tốt nghiệp  Khoa Công nghệ thông tin Xây dựng ứng dụng MobileGIS

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

B Giáo Dc và ào To Trng i Hc M Tp.HCM Khoa Công Ngh Thông Tin KHÓA LUN TT NGHIP  tài: Xây Dng ng Dng MobileGIS. GVHD : TS. Phan t Phúc SVTH : Cao Xuân Bo Lc MSSV : 10400071 TP.HCM – Nm 2009 Khóa lun tt nghip Xây dng ng dng MobileGis i Li cám n Em xin cám n quý thy cô trong khoa Công ngh thông tin trng i hc M đã tn tình dy bo em nhiu kin thc b ích trong sut thi gian hc tp ti trng. Kính chúc thy cô luôn di dào sc khe và thành công trong cuc sng. c bit, em xin chn thành cám n đn thy Phan t Phúc, và công ty Dolsoft trong thi gian va qua đã tn tình hng dn chúng em trong sut thi gian thc hin đ tài này. ã h tr to cho em điu kin, c hi và tích ly nhiu kin thc sut trong thi gian thc hin đ tài, cng nh đóng góp nhiu ý kin quý báu, qua đó, đ em có th hòan thành đc tt đ tài nay. Mc dù đã hòan thành đ tài, nhng chc chn đ tài vn còn nhiu thiu điu thiu sót. Em mong nhn đc s góp ý ca quý thy cô, anh ch và các bn. Mt ln na, em xin chân thành cám n! TP H chí minh, tháng 1 nm 2009 Ngi thc hin Cao Xuân Bo Lc Khóa lun tt nghip Xây dng ng dng MobileGis ii Mc lc CHNG 1: GII THIU 1 1.1. Khái quát v công ngh di đng: 1 1.2. Gii thiu đ tài: 1 1.3. Đi tng và phm vi nghiên cu chính: 3 CHNG 2: TÌM HIU V CHUN J2ME 5 2.1. Gii thiu v java 5 2.1. Kin trúc j2me 6 2.2. Các thành phn chính trong j2me 8 2.2.1. Confiuration 8 2.2.2. Profiler. 10 2.2.3. Optional package. 10 2.3. Mobile Information Device Profile (MIDP) 11 2.3.1. Đnh nghĩa: 11 2.3.2. Yêu cu phn cng: 11 2.3.3. Yêu cu phn mm: 11 2.3.4. Nhng hn ch 11 2.3.5. Nhng tính năng MIDP cung cp 12 CHNG 3: LP TRÌNH ĐIN THOI VI MIDP 14 3.1. MIDP là gì? 14 3.1.1. Đnh nghĩa 14 3.1.2. Thành phn c bn. 14 3.1.3. Chu kì sng. 15 3.1.4. Đóng gói chng trình 15 3.2. Giao din. 16 3.2.1. Đ ha mc cao 17 3.2.2. Đ hc mc thp. 17 3.3. Âm thanh 18 3.4. MIDP là gì? 18 3.4.1. S kin hành đng 18 3.4.2. S kin phím. 18 Khóa lun tt nghip Xây dng ng dng MobileGis iii 3.5. Lu tr d liu. 19 3.5.1. Record Management System 19 3.5.2. Hn ch. 20 3.5.3. Tc đ truy xut 21 3.5.4. C ch lung 21 CHNG 4: LP TRÌNH MNG 22 4.1. Khái quát. 22 4.2. Khái quát v dch v Web (Webservice), Soap và WSDL 23 4.2.1. Webservice. 23 4.2.2. SOAP và WSDL 23 4.3. Webservice và Soap. 23 CHNG 5: ĐNH V THIT B DI ĐNG 25 5.1. Mng đin thoi GSM 25 5.2. Thit b đnh v GPS 26 5.2.1. Thit b tích hp GPS. 26 5.2.2. Thit b dùng kèm vi BT-GPS 27 ¬ Khái quát 27 ¬ Hin thc. 27 CHNG 6: PHÂN TÍCH THIT K NG DNG 30 6.1. Kho sát hin trng 30 6.2. Phân tích và xác đnh yêu cu. 30 6.3. Thit k ng dng 31 6.3.1. V bn đ. 31 6.3.2. Di chuyn bn đ 32 6.3.3. Phóng to, thu nh 33 6.3.4. Tìm đng đi ngn nht gia hai đim. 33 6.3.5. Hng dn đng đi 35 6.3.6. Tìm đa đim xung quanh 36 6.3.7. Kt ni vi thit b GPS 37 6.3.8. Chn đi tng trên bn đ 38 6.3.9. Thêm đa đim cá nhân trên bn đ. 38 Khóa lun tt nghip Xây dng ng dng MobileGis iv 6.3.10. Hng dn s dng 39 6.3.11. Lu thông tin làmvic 39 6.3.12. Np thông tin làm vic c 40 6.3.13. S đ giao din thit k chính ca màn hình. 41 6.1. Đc t các gói lp trong ng dng 43 6.1.1. Data Package 43 6.1.2. GPRS Package 47 6.1.3. GPS Package. 48 6.1.4. Library Package 51 6.1.5. Sound Package 52 6.1.6. MobileGIS Package. 52 CHNG 7: CI TIN VÀ TI U HÓA 59 7.1. Ni dung 59 7.2. Ti u hóa kích thc chng trình. 59 7.2.1. Nguyên tc. 60 7.2.2. Obfuscator 61 7.3. Ti u hóa tc đ. 62 7.3.1. Khái quát. 62 7.3.2. Nguyên tc. 62 7.3.3. Công c h tr 63 7.4. Ti u hóa vic s dng b nh. 64 7.4.1. Nguyên tc. 64 7.4.2. Công c h tr 65 CHNG 8: TNG KT ĐÁNH GIÁ 66 8.1. Kt qu đt đc. 66 8.1.1. Kin thc đt đc 66 8.1.2. Chng trình 66 8.2. Đánh giá chng trình 66 8.2.1. u đim. 66 8.2.2. Khuyt đim 67 8.3. Hng phát trin. 67 Khóa lun tt nghip Xây dng ng dng MobileGis 1 CHNG 1: GII THIU 1.1. Khái quát v công ngh di đng: Công ngh thông tin ngày nay, đóng vai trò quan trng trong đi sng hng ngày ca chúng ta. Vic ng dng công ngh thông tin vào các lnh vc vào trong đi sng giúp cho công vic đc tin hành mt cách thun li, nhanh chóng và hiu qu hn. Cùng vi phát trin ca công ngh thông tin, nhiu công ngh mi ra đi nh BlueTooth, ADSL, Wireless, Mobile, WAP … làm cho công ngh thông tin càng tr nên gn gi thân thit vi con ngi. Và mt trong chúng, là công ngh di đng.  thi đim hin nay, trên th gii cng nh  Vit Nam, khi th trng đin thoi di đng đang tr nên sôi đng hn bao gi ht. Ta có th thy, không ging nh nhng chic đin thai trc đây ch đn gin nhim v là thoi, mà chic đin thoi ngày nay còn thc hin nhiu chc nng khác nh: gi nhn mail, truy cp Internet, xem phim, nghe nhc, chi game, … qua đó, chic đin thoi dn tr nên quen thuc vi con ngi và tr thành mt phn không th thiu trong cuc sng hin đi ca chúng ta ngày nay. Mt khác, do các nhà sn xut đin thoi di đng nm bt đc nhu cu ca gii tr là u chung sn phm công ngh cao, luôn cho ra đi nhng loi sn phm đin thoi di đng hin đi vi nhng tính nng đa dng và ni tri hn trc. Song hành vi s phát trin ca phn cng, là nhu cu phát trin phn mm ng dng trên đin thoi di đng, nhm phc v tt hn cho ngi s dng đin thoi. Phn mm cho các thit b di đng cng rt đa dng, t nhng ng dng mang tính gii trí nh game, xem phim, chat đn nhng ng dng làm vic nh t đin, word, dit virus, gi nhn mail … Vì vy, ngày càng có nhiu sinh viên các trng đi hc, tham gia nghiên cu tìm hiu công ngh di đng vi mong mun tìm đc cho mình mt c hi vic làm tt sau này. 1.2. Gii thiu đ tài: Trong nhng nm gn đây, khi mà hot đng sn xut phn mm trên đin thoi di đng phát trin khá mnh m, vi s ra đi ca nhiu phm mm hu ích trên đin thoi di đng . Mà trong đó phi k đn là phn mm bn đ trên đin thoi đi đng đã và đang thu hút nhiu ngi s dng vi nhng tin ích thit thc mà nó mang đn. Khóa lun tt nghip Xây dng ng dng MobileGis 2 Tuy nhiên, đ tài v phát trin mt ng dng bn đ trên đin thoi di đng có th nói là không mi m gì. Vì trong my nm qua, đã có nhiu khóa lun ca các sinh viên ngành CNTT nghiên cu, tìm hiu v đ tài này. Là nhng đ tài xây dng bn đ dng Vector, thng b hn ch v mt d liu, ch th hin bn đ ca mt thành ph nào đó, do d liu chính thng đi kèm vi chng trình, nm trc tip trên đin thai. Do đó, khi mun cp nht thêm thông tin d liu trên bn đ, ngi dùng phi ti v phin bn mi v và cài đt.  tránh tình trng này, ta xây dng phn mm hot đng theo c ch Client- Server.  đó chng trình thành 2 phn c bn: - Phn d liu nm  phía Server. - Phn chng trình nm  phía Client. ây là mt phng pháp đc s dng khá ph bin, khi d liu ca chng trình có kích thc ln, mang tính toàn cu. Ví d nh chng trình goolge map ca hng google, s dng nh v tinh đ hin th bn đ. Tuy nhiên, đy là chng trình do ngi nc ngoài làm, Vì vy, vi nguyn vng xây dng mt chng trình thun vit do ngi Vit làm em chn đ tài “Xây dng ng dng MobileGIS”. Mc tiêu là xây dng mt phn mm trên đin thai th hin bn đ chi tit ca tng vùng min Vit Nam, và tài nguyên đc ly trc tip trên mng do công ty Vit bn đ cung cp ( Webservices ). Chng trình hoàn chnh s có th chy trên nhiu loi đin thoi khác nhau, và thc hin nhng chc nng c bn nh sau: Ü Xem bn đ. Ü Xác đnh v trí hin ti ca ngi dùng trên bn đ. Ü Tìm đng đi ngn nht gia hai đim. Ü Hng dn đng đi. Ü Tìm kim các đa đim xung quanh nh ch, trng hc, khách sn. Chng trình này nu đc thc hin tt s tr thành mt ng dng ha ích, thit thc và tin dng đi vi nhiu ngi, đc bit là các bn tr trong vic đi li. Khóa lun tt nghip Xây dng ng dng MobileGis 3 1.3. i tng và phm vi nghiên cu chính: Hin nay có rt nhiu la chn đ vit ng dng cho đin thoi di đng, có th k đn 5 môi trng phát trin ph bin nht: Java 2 Platform Micro Edition (J2ME), BREW, Sysmbian OS, Openwave và Microsoft Windows CE 3.0. Xem hình sau. Trong đó phi k đn đu tiên J2ME, đc cho là nn tng phát trin ng dng ph bin nht. Vì ban đu Java đc thit k đ chy trên các thit b có b nh hn ch và thách thc v nng lc x lý. Ngoài ra, J2ME còn có kh nng kt hp vi các “đi th” BREW, Symbian OS và Openwave. Mt khác, thách thc ln nht ca J2ME và cng chính là u đim, là s nht quán cho nhiu loi thit b. Hu ht các hãng sn xut TD hàng đu đu ng h Java, và Java còn nhn đc s ng h rng rãi ca các nhà cung cp dch v di đng. Nói đn lp trình trên đin thoi di đng, chúng ta có th hình dung đc nhng tr ngi ln trong quá trình phát trin ng dng là: - Nng lc ca b vi x lý trên đin thoi là rt yu. - Dung lng b nh là rt nh. - Tc đ đng truyn mng ( GPRS ) rt hn ch. Và đ thc hin nhng yêu cu chính đc nêu trong phn gii thiu, trong lun vn này, em s tp trung tìm hiu nhng vn đ chính sau: Ü Công ngh Java, mà trng tâm chính là nghiên cu, tìm hiu v J2ME. Khóa lun tt nghip Xây dng ng dng MobileGis 4 Ü Các k thut lp trình trên đin thai vi J2ME. Ü Các vn đ liên quan đn mng trong J2ME( truy cp Webservices, ti nh trên mng). Ü Cách xác đnh v trí ca đin thoi. Ü Cách ti u hóa kích thc và tc đ ca chng trình. Khóa lun tt nghip Xây dng ng dng MobileGis 5 CHNG 2: TÌM HIU V CHUN J2ME 2.1. Gii thiu v java. Vào nhng nm 1990, java đc ra đi t d án xanh ( Green Project ) và ban đu đc xây dng đ kim soát các thít b dân dng nh TV, VCR, đèn, đin thoi và mt s thit b cm tay, Java đc xây dng ch yu da trong b công c phát trin ( Java Development Kit – JDK ) nh là th vin chun trong đó cha trình biên dch, trình thông dch, giúp đ, tài liu, … ây chính là nn tng cho vic phát trin ng dng Java. Tuy nhiên, ngày nay Sun nhn ra rng vic to ra mt nn tng chung đ chy trên tt c môi trng là điu không th thc hin đc,do đó công ty đã quyt đnh chia công ngh java ca mình thành 3 phiên bn, mi phiên bn đc ng dng trong mt lnh vc riêng bit, các phiên bn đó là: Ü Java 2 Platform, Enterprise Edition (J2EE TM ) phc v cho các nhu cu v thng mi phc v khách hàng, các vn đ phân phi, các vn đ v nhân s. Phiên bn này dành cho các máy ch ln ( server ) vi sc mng x lý và dung lng b nh ln. Ü Java 2 Platform, Standard Edition (J2SE TM ) đc cung cp cho các th trng máy tính đ bàn, máy tính gia đình hay máy tính vn phòng. Các máy tính này, mc dù không mnh bng các máy ch nhng vn mnh hn nhiu so vi các thit b di đng. Ü Java 2 Platform, Micro Edition (J2ME TM ) là mt phiên bn rút gn ca java cho các thit b di đng gii hn v b nh và b x lý. J2ME đc chia thành 2 loi: mt loi cho các thit b cao cp ( Máy PDA , ) và mt loi cho các thit b cp thp hn ( đin thai di đng và PDA vi khang 512 KB b nh ). Hình v sau minh ha các phiên bn hin có ca java và lnh vc ng dng ca chúng, bt đu t bên trái là các nn tng cao cp sang bên phi là các nn tng cp thp hn. [...]... kê khai là m t ph n c a t p tin JAR còn t p tin JAD không thu c t p tin JAR u i m c a t p tin JAD là các c i m c a MIDlet có th 15 Khóa lu n t t nghi p Xây d ng ng d ng MobileGis c xác nh tr c khi download t p tin JAR Nói chung, c n ít th i gian download m t t p tin v n b n nh h n là download m t t p tin JAR N i dung c a t p tin JAR: - Manifest-Version // Phiên b n t p tin Manifest - MIDlet-Name //... HTTP client thông th ng s dùng c hai ph ng th c HTTP GET và POST c t MIDP 2.0 phát bi u r ng c HTTP và HTTPS b t bu c ph i ch tr ¬ Thân c a thông i p HTTP: Thông tin g i trong thân thông i p HTTP request và response n gi n là m t lu ng byte MIDlet và servlet ch n ki u nh d ng thông tin mã hóa các byte này ¬ Thân c a thông i p SOAP/HTTP: Các i m cu i d ch v Web d a trên SOAP trao i các thông i p SOAP... trong m t t p tin JAR (Java Archive File) ây chính là t p tin JAR c download xu ng i n tho i di ng T p tin JAR ch a t t c các t p tin class t m t hay nhi u MIDlet, c ng nh các tài nguyên c n thi t Hi n t i, MIDP ch h tr nh d ng hình png (Portable Network Graphics) T p tin JAR c ng ch a t p tin kê khai (manifest file) mô t n i dung c a MIDlet cho b qu n lý ng d ng Nó c ng ph i ch a các t p tin d li u mà... c n Do ó t p tin JAR là toàn b ng d ng MIDlet, MIDlet có th load và g i các ph ng th c t b t k l p nào trong t p tin JAR, trong MIDP, hay CLDC và không th truy xu t các l p không ph i là b ph n c a t p tin JAR hay vùng dùng chung c a thi t b di ng T p tin kê khai (manifest.mf) và t p tin JAD (Java Application Descriptor) mô t các c i m c a MIDlet S khác bi t c a hai t p tin này là t p tin kê khai là... dùng truy n thông i p SOAP Thông i p SOAP ch a d li u theo nh d ng XML Thông i p XML có th dùng c UTF-8 hay UTF-16 làm b ng mã và mã hóa 22 Khóa lu n t t nghi p Xây d ng ng d ng MobileGis 4.2 Webservice 4.2.1 nh ngh a Thu t ng “D ch v Web” (Web service) nói n truy n thông ng d ngn- ng d ng (application-to-application) M t d ch v Web n gi n là m t d ch v trên Internet có kh n ng c truy xu t thông qua... ã có trên máy, v lên màn hình - H th ng ki m tra xem, vùng b n trên màn hình ã hoàn ch nh ch a - N u ch a có, yêu c u webservices cung c p thông tin vùng b n v trí hi n t i - H th ng phân tích thông tin nh n c - T i nh ng nh ch a có v và v lên màn hình - V thông tin v a i m tìm ki m, a i m cá nhân, ng i ng n nh t, … n u có L c : 31 ... b di ng, m t i t ng Command gi thông tin v s ki n ó Thông tin này bao g m lo i hành ng th c thi, nhãn c a m nh l nh và u tiên c a chính nó Trong J2ME, các hành ng nói chung c th hi n d i d ng các nút trên thi t b N u có quá nhi u hành ng c hi n th trên thi t b , thi t b s t o ra m t th c n ch a các hành ng Trong MIDP thì các l nh c bi u di n b ng l p Command và c x lý thông qua giao ti p CommandListener... ph i s d ng thêm tài nguyên h th ng hi n ang s d ng cho các d ch v khác 25 Khóa lu n t t nghi p 5.2 Thi t b Xây d ng ng d ng MobileGis nh v GPS H th ng nh v tòan c u (GPS), s d ng 24 v tinh bay trên qu o trái t GPS xác nh v trí c a thi t b tính toán s khác bi t trong th i gian tín hi u t các v tinh i ti p c n v i ng i nh n Tín hi u GPS c mã hóa, do ó, các thi t b di ng ph i c trang b máy thu GPS GPS... JSR 179 V i JSR 179 ta có th d dàng th c hi n vi c l y thông tin v trí GPS nh sau: // Set criteria for selecting a location provider: // accurate to 500 meters horizontally Criteria cr= new Criteria(); cr.setHorizontalAccuracy(500); // Get an instance of the provider LocationProvider lp= LocationProvider.getInstance(cr); // Request the location, setting a one-minute timeout Location l = lp.getLocation(60);... J2SE không có ( nh các thành ph n giao di n ) 9 Khóa lu n t t nghi p Xây d ng ng d ng MobileGis Quan h gi a J2ME và J2SE ¬ S khác nhau gi a ngôn ng Java trên CLDC v i Java thông th ng - Kh n ng x lý s th c: Các phép toán trên s th c th ng c n nhi u th i gian x lý h n Ngoài ra, ph n l n các thi t b không có ph n c ng h tr cho vi c tính toán s th c, do ó CLDC không h tr s th c c vi t b ng J2SE, chúng ta . di đng: Công ngh thông tin ngày nay, đóng vai trò quan trng trong đi sng hng ngày ca chúng ta. Vic ng dng công ngh thông tin vào các lnh vc vào trong đi sng giúp cho công vic. hiu qu hn. Cùng vi phát trin ca công ngh thông tin, nhiu công ngh mi ra đi nh BlueTooth, ADSL, Wireless, Mobile, WAP … làm cho công ngh thông tin càng tr nên gn gi thân thit. trên bn đ. 38 Khóa lun tt nghip Xây dng ng dng MobileGis iv 6.3.10. Hng dn s dng 39 6.3.11. Lu thông tin làmvic 39 6.3.12. Np thông tin làm vic c 40 6.3.13. S đ giao

Ngày đăng: 01/06/2015, 16:27

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan