1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

80 535 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 80
Dung lượng 1,81 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các thành ph n chính trong j2me.. Mobile Information Device Profile MIDP..... Các thành ph n chính trong j2me... Mobile Information Device Profile MIDP... Nó cung c p các thành ph n nh t

Trang 1

Khoa Công Ngh Thông Tin

KHÓA LU N T T NGHI P

tài:

GVHD : TS Phan t Phúc SVTH : Cao Xuân B o L c MSSV : 10400071

TP.HCM – N m 2009

Trang 2

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

Trang 3

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

Trang 4

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

Trang 5

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

Trang 6

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

Trang 7

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 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 )

Trang 8

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

Trang 9

Ü 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

Trang 10

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

Ü Java 2 Platform, Micro Edition (J2ME TM

Trang 11

Ki n trúc java

2.1 Ki n trúc j2me

M c tiêu c a J2ME là cho phép ng i l p trình vi t các ng d ng đ c l p v i thi t b di đ ng, không c n quan tâm đ n ph n c ng th t s đ t đ c m c tiêu này, J2ME đ c xây d ng b ng các t ng (layer) khác nhau đ gi u đi vi c th c

hi n ph n c ng kh i nhà phát tri n Sau đây là các t ng c a J2ME đ c xây d ng trên CLDC

Ki n trúc j2me

M i t ng trên t ng hardware là t ng tr u t ng h n cung c p cho l p trình viên nhi u giao di n l p trình ng d ng (API-Application Program Interface) thân thi n h n

Ü T ng ph n c ng thi t b ( Device Hardware Layer ): ây chính là thi t

b di đ ng th t s v i c u hình ph n c ng c a nó v b nh và t c đ x lý

D nhiên th t ra nó không ph i là m t ph n c a J2ME nh ng nó là n i xu t

Trang 12

phát Các thi t b di đ ng khác nhau có th có các b vi x lý khác nhau v i các t p mã l nh khác nhau M c tiêu c a J2ME là cung c p m t chu n cho

t t c các lo i thi t b di đ ng khác nhau

Ü T ng máy o Java ( Java Virtual Machine Layer ):

Khi mã ngu n Java đ c biên d ch nó đ c chuy n đ i thành mã bytecode Mã bytecode này sau đó đ c chuy n thành mã ngôn ng máy

c a thi t b di đ ng T ng máy o Java bao g m KVM (K Virtual Machine)

là b biên d ch mã bytecode có nhi m v chuy n mã bytecode c a ch ng trình Java thành ngôn ng máy đ ch y trên thi t b di đ ng T ng này cung

c p m t s chu n hóa cho các thi t b di đ ng đ ng d ng J2ME sau khi

đã biên d ch có th ho t đ ng trên b t k thi t b di đ ng nào có KVM Vai trò c a máy o Java hay KVM là d ch mã bytecode đ c sinh ra t ch ng trình Java đã biên d ch sang ngôn ng máy Chính KVM s chu n hóa output c a các ch ng trình Java cho các thi t b di đ ng khác nhau có th

có b vi x lý và t p l nh khác nhau Không có KVM, các ch ng trình Java ph i đ c biên d ch thành t p l nh cho m i thi t b di đ ng Nh v y

l p trình viên ph i xây d ng nhi u đích cho m i lo i thi t b di đ ng

Ü T ng c u hình ( Configuration Layer ): T ng c u hình c a CLDC đ nh

ngh a giao di n ngôn ng Java (Java language interface) c b n cho phép

ch ng trình Java ch y trên thi t b di đ ng Cung c p các hàm API c b n

là nhân c a J2ME L p trình viên có th s d ng các l p và ph ng th c

c a các API này tuy nhiên t p các API h u d ng h n đ c ch a trong t ng

hi n tr ng (profile layer)

Ü T ng hi n tr ng ( Profile Layer ):T ng hi n tr ng hay MIDP (Hi n tr ng

thi t b thông tin di đ ng-Mobile Information Device Profile) cung c p t p các API h u d ng h n cho l p trình viên M c đích c a hi n tr ng là xây

d ng trên l p c u hình và cung c p nhi u th vi n ng d ng h n

MIDP đ nh ngh a các API riêng bi t cho thi t b di đ ng C ng có th có các

hi n tr ng và các API khác ngoài MIDP đ c dùng cho ng d ng Ví d , có th có

hi n tr ng PDA đ nh ngh a các l p và ph ng th c h u d ng cho vi c t o các ng

d ng PDA (l ch, s h n, s đ a ch ,…) C ng có th có m t hi n tr ng đ nh ngh a các API cho vi c t o các ng d ng Bluetooth Th c t , các hi n tr ng k trên và

t p các API đang đ c xây d ng Chu n hi n tr ng PDA là đ c t JSR - 75 và

Trang 13

chu n bluetooth API là đ c t JSR - 82 v i JSR là vi t t t c a Java Specification Request

2.2 Các thành ph n chính trong j2me

2.2.1 Confiuration

Trong môi tr ng J2ME, m t ng d ng đ c vi t cho m t profile riêng

bi t nào đó Profile này l i đ c m r ng t m t configuration Vì th t t c các đ c đi m c a m t configuration s đ c gi l i trong profile có th

đ c s d ng b i ng d ng vi t cho profile này

M t configuraion đ nh ngh a m t n n Java cho các thi t b có các đ c tính t ng t nhau( nh s l ng b nh , t c đ x lý, ki u k t n i m ng)

M t configuration s xác đ nh

- Các tính n ng c a ngôn ng Java đ c h tr

- Các tính n ng c a máy o Java đ c h tr

- Th vi n chu n và các API

Do đây là đ c t nên các nhà s n xu t thi t b nh Samsung, Nokia…

b t bu c ph i th c thi đ y đ các đ c t do Sun quy đ nh đ các l p trình viên có th d a vào môi tr ng l p trình nh t quán và thông qua s nh t quán này, các ng d ng đ c t o ra có th mang tính đ c l p thi t b cao

nh t có th Ví d nh m t l p trình viên vi t ch ng trình game cho đi n tho i Samsung thì có th s a đ i ch ng trình c a mình m t cách t i thi u

nh t đ có th ch y trên đi n th ai Nokia Qua đây ta th y kh u hi u “Write Once, Run Everywhere” c a Java đã không còn đúng n a, nh ng ta c ng

ph i đánh giá cao s n l c c a Sun trong vi c t o ra m t môi tr ng ph n

m m chung cho vô s ch ng lo i thi t b di đ ng có trên th tr ng Hi n nay Sun đã đ a ra 2 d ng Configuration

¬ CLDC - Connected Limited Device Configuration

CLDC đ c thi t k đ nh m vào th tr ng các thi t b c p th p (low-end), các thi t b này thông th ng là máy đi n th ai di đ ng

và PDA v i kho ng 512 KB b nh Vì tài nguyên b nh h n ch nên CLDC đ c g n v i Java không dây (Java Wireless ), d ng nh cho phép ng i s d ng mua và t i v các ng d ng Java, ví d nh

là Midlet

Trang 14

¬ CDC - Connected Device Configuration.

CDC đ c đ a ra nh m đ n các thi t b có tính n ng m nh h n dòng thi t b thu c CLDC nh ng v n y u h n các h th ng máy đ bàn s d ng J2SE Nh ng thi t b này có nhi u b nh h n (thông

tr ng cho các ng d ng J2ME Tuy nhiên, chú ý r ng đ i v i các thi t b

c p th p, do h n ch v tài nguyên nh b nh và b x lý nên không th yêu c u máy o h tr các tính n ng gi ng máy o c a J2SE Ví d , các thi t b thu c CLDC không có ph n c ng h tr các phép tính toán d u

ph y đ ng, nên máy o thu c CLDC không đ c h tr ki u float và double

Ram >=32K, <=512K >=256K Rom >=128k, <=512k >=512k Ngu n N ng L ng Có Gi i h n (ngu n pin) Không gi i h n

Network Ch m Nhanh

B ng so sánh CLDC và CDC

Hình v sau minh h a quan h gi a CLDC, CDC và Java 2 Standard Edition ( J2SE ) Theo đó chúng ta th y m t ph n l n các ch c n ng trong CLDC và CDC có đ c do k th a J2SE M i l p đ c k th a t J2SE

ph i gi ng ho c g n gi ng v i l p t ng ng trong J2SE Thêm vào đó, CLDC và CDC có m t s đ c tính khác đ c thi t k cho các thi t b nhúng

mà J2SE không có ( nh các thành ph n giao di n )

Trang 15

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

- Finalization: trong các l p đ c vi t b ng J2SE, chúng ta th ng đ nh ngh a m t ph ng th c có tên là finalize() Ph ng th c này s đ c

g i tr c khi b thu gom rác ( garbage collector ) thu gom đ i t ng

Ph ng th c này là n i chúng ta đ t các mã l nh đ gi i phóng tài nguyên đã s d ng Tuy nhiên, CLDC không h tr ph ng th c finalize()

- Các l p k th a t J2SE: CLDC yêu c u kho ng 160 KB đ ch y máy

o java và các th vi n c b n Do đó, ch có m t s l p trong J2SE là

đ c gi l i trong CLDC

2.2.2 Profiler

Là m r ng Configuration b ng cách thêm vào các class đ b tr các tính n ng cho t ng thi t b chuyên bi t C 2 Configuration đ u có nh ng profile liên quan và t nh ng profile này có th dùng các class l n nhau

n đây ta có th nh n th y do m i profile đ nh ngh a m t t p h p các class khác nhau, nên th ng ta không th chuy n m t ng d ng Java vi t cho m t profile này và ch y trên m t máy h tr m t profile khác C ng

v i lý do đó, b n không th l y m t ng d ng vi t trên J2SE hay J2EE và

ch y trên các máy h tr J2ME

2.2.3 Optional package

Là các API có th s d ng trong nhi u thi t b hay m t h các thi t b

M t J2me option package là m t t p các API n m trên m t profile M t

Trang 16

optional package th ng ch a các ch c n ng đ c l p v i các thi t b M c đính chính c a các optional package này là cho phép b sung các API trên các profiles M t thi t b có th h tr nhi u optional package khác nhau

2.3 Mobile Information Device Profile (MIDP)

2.3.1 nh ngh a:

Là Profile đ c đ nh ngh a dành riêng cho các thi t b di đ ng và là thành ph n chính trong J2ME MIDP cung c p các ch c n ng c b n cho

h u h t các dòng thiêt b di đ ng ph bi n nh t nh các máy đi n tho I di

đ ng và các máy PDA Tuy nhiên MIDP không ph i là cây đ a th n cho

m i l p trình viên vì nh chúng ta đã bi t, MIDP đ c thi t k cho các máy

di đ ng có c u hình r t th p Có th nói MIDP là profile n i ti ng nh t b i

vì nó là ki n th c c b n cho l p trình Java trên các máy di đ ng (Wireless Java)

Do h đi u hành thay đ i tùy theo m i lo i thi t b , nên MIDP không qua

kh c khe trong các yêu c u ph n m m

- H đi u hành trên thi t b cung c p kh n ng x lý ng ai l , x lý ng t,

Trang 17

- H tr t khóa finalize() nh trong J2SE: Vi c “d n d p“ tài nguyên

tr c khi nó b xóa đ c đ y v phía các l p trình viên

- H tr h n ch thao tác b t l i

- Ph n l n các th vi n API cho Swing và AWT không th s d ng đ c

trong MIDP

- Không h tr các tính n ng qu n lý file và th m c: ây có th làm b n

ng c nhiên nh ng th c t là các thi t b J2ME không có h tr các thi t

b l u tr thông th ng nh c ng v.v Tuy nhiên, đi u đó không có ngh a là b n ph i m t đi m i d li u quan tr ng m i khi t t máy, Sun đã cung c p m t ch c n ng khác t ng đ ng g i là Record Management system (RMS) đ cung c p kh n ng l u tr cho các thi t b này

2.3.5 Nh ng tính n ng MIDP cung c p

- Các l p và ki u d li u: Ph n l n các l p mà các l p trình viên Java quen thu c v n còn đ c gi l i ví d nh các l p trong gói java.util nh

Stack, Vector và Hastable c ng nh Enumeration

- H tr đ i t ng Display: úng nh tên g i m t ch ng trình MIDP s

- Thêm các API h tr Multimedia M t trong nh ng c i ti n h p d n nh t

c a MIDP 2.0 là t p các API media c a nó Các API này là m t t p con

ch h tr âm thanh c a Mobile Media API (MMAPI)

Trang 18

- M r ng các tính n ng c a Form Nhi u c i ti n đã đ c đ a vào API javax.microedition.lcdui trong MIDP 2.0, nh ng các thay đ i l n nh t

(ngoài API cho game) là trong Form và Item

- H tr các l p trình viên Game b ng cách tung ra Game API: Có l Sun

nh : trong m t game đua xe thì màn hình n n là m t layer, con đ ng là

m t layer và chi c xe đ c xem nh đang n m trên layer khác V i Game API nhà phát tri n còn đ c cung c p các tính n ng nh qu n lý

các thao tác bàn phím

- H tr ki u nh RGB: m t trong nh ng c i ti n h p d n cho các nhà phát tri n MIDP là vi c bi u di n hình nh d i d ng các m ng s nguyên,

cho phép MIDlet thao tác v i d li u hình nh m t cách tr c ti p

Trang 20

3.1.3 Chu kì s ng

Chu kì s ng c a m t MIDlet

Khi ng i dùng yêu c u kh i đ ng ng d ng MIDlet, b qu n lý ng

d ng s th c thi MIDlet (thông qua l p MIDlet) Khi ng d ng th c thi, nó

s đ c xem là đang tr ng thái t m d ng B qu n lý ng d ng g i hàm

t o và hàm startApp() Hàm startApp() có th đ c g i nhi u l n trong su t chu k s ng c a ng d ng Hàm destroyApp() ch có th g i t tr ng thái

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à MIDlet 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à 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

Trang 21

đ 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 // Tên b MIDlet (MIDlet suite)

- MIDlet-Version // Phiên b n b MIDlet

ph n nào s đ c hi n th lên trên thi t b

Ta có th chia các l p MIDP thành hai m c đ h a: đ h a m c th p và đ

h a m c cao h a m c cao dùng cho v n b n hay form h a m c th p dùng cho các ng d ng trò ch i, ph i v lên màn hình

Giao di n đ h a trong MIDP

C hai l p đ h a m c th p và m c cao đ u là l p con c a l p Displayble Trong MIDP, ch có th có m t l p displayable trên màn hình t i m t th i

đi m Có th đ nh ngh a nhi u màn hình nh ng m t l n ch hi n th đ c m t màn hình

Trang 22

3.2.1 h a m c cao

h a m c cao là l p con c a l p Screen Nó cung c p các thành ph n nh text box, form, list, và alert Ta ít đi u khi n s p x p các thành ph n trên màn hình Vi c s p x p th t s ph thu c vào nhà s n xu t

- TextBox cho phép nh p nhi u dòng Thành ph n TextBox và TextField có

nh ng ràng bu c gi ng nhau trong vi c ch đ nh lo i n i dung đ c phép

nhâp vào Ví d ANY, EMAIL, URI…

- M t Alert đ n gi n là m t h p tho i r t nh Có 2 lo i Alert:

o Modal: là lo i h p tho i thông báo đ c trình bày cho đ n khi ng i dùng n nút đ ng ý

o Non-modal: là lo i h p tho i thông báo ch đ c trình bày trong m t s giây nh t đ nh

3.2.2 h a m c th p

M c dù các hàm API c p cao cung c p m t t p đ y đ các thành ph n đ xây d ng giao di n ng d ng ng i dùng Tuy nhiên các thành ph n c p cao không cung c p ph ng ti n đ v tr c ti p lên thi t b th hi n Vì thi u kh n ng này nên các ng d ng đ c t o ra s g p nhi u gi i h n Ví

d h u h t các nhà phát tri n game di đ ng d a trên kh n ng v các đ ng

th ng và các hình d ng nh là m t ph n tích h p quá trình phát tri n

N u các hàm API c p cao cho phép chúng ta t o ra giao di n cho các ng

d ng theo chu n, thì các hàm API c p th p cho phép chúng ta có th th

hi n các ý t ng c a mình

Canvas và Graphics là 2 l p trái tim c a các hàm API c p th p Canvas

là m t khung v cho phép ng i phát tri n có kh n ng v lên thi t b trình bày c ng nh là vi c x lý s ki n Còn l p Graphics cung c p các công c

th t s đ v nh drawRoundRect() và drawString()

Trang 23

3.3 Âm thanh

Trong phiên b n MIDP 1.0, các l p trình viên trên đi n th ai di đ ng g p khó

kh n trong vi c x lý âm thanh, vì MIDP 1.0 không h tr vi c x lý âm thanh nên các nhà s n xu t ph i cung c p thêm các hàm API chuyên d ng cho vi c này

ây là c g ng c a nhà s n xu t đ c i ti n ch t l ng các đi n th ai tuy nhiên

nó l i gây khó kh n đ i v i l p trình viên khi ph i t o ra nhi u phiên b n khác nhau cho t ng l ai máy c a th

phiên b n MIDP 2.0, đi u này đã đ c SUN c g ng kh c ph c b ng vi c

h tr 2 b th vi n API:

- MIDP 2.0 Sound API

- Mobile Media API ( MMAPI )

Vi c chia thành hai b API, n y sinh t th c t là nh ng thi t b đang có m t

s r t tài nguyên-ch Nó có th không đ c kh thi đ h tr m t lo t các lo i hình đa ph ng ti n, ch ng h n nh video, trên m t s đi n tho i di đ ng Tuy nhiên, không ph i t t c các MIDP 2.0 h tr đ y đ Mobile Media API Và trong đ tài này, g n ti n trong vi c l p trình, em ch y u s d ng gói th vi n này

3.4 MIDP là gì?

3.4.1 S ki n hành đ ng

Khi m t đ i t ng x y ra trên thi t 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 ho c ItemCommandListener

- CommandListerner dùng cho các thành ph n nh Form, List, và TextBox và Canvas

- ItemCommandListener dùng cho các thành ph n item trong Form 3.4.2 S ki n phím

Ta có th d dàng ki m soát thao tác phím trên đ i t ng canvas Khi

ng i dùng nh n m t phím trên đi n th ai, m t s ki n đ c l p t c g i

Trang 24

cho ng d ng, ng d ng s nh n s ki n, phân tích phím nh n và x lý hành đ ng t ng ng

i t ng Canvas cung c p các ph ng th c sau:

- void keyPressed(int keyCode)

- void keyReleased(int keyCode)

- void keyRepeated(int keyCode)

- boolean hasRepeatEvents()

- String getKeyName(int keyCode)

3.5 L u tr d li u

MIDP không s d ng h th ng file đ l u tr d li u Thay vào đó MIDP

l u toàn b thông tin vào non-volatile memory b ng h th ng l u tr g i là Record Management System (RMS)

3.5.1 Record Management System

RMS là h th ng đ c t ch c và qu n lý d i d ng các record (b n ghi) M i b n ghi (sau này g i là Record) có th ch a b t k lo i d li u nào, chúng có th là ki u s nguyên, chu i ký t hay có th là m t nh và

k t qu là m t Record là m t chu i (m ng) các byte N u b n mã hoá d

li u c a b n d i d ng nh phân (binary), b n có th l u tr d li u b ng Record sau đó đ c d li u t Record và khôi ph c l i d li u ban đ u T t nhiên kích th c d li u c a b n không đ c vu t quá gi i h n qui đ nh

c a thi t b di đ ng RMS l u d li u g n nh m t c s d li u, bao g m nhi u dòng, m i dòng l i có m t s đ nh danh duy nh t:

M t t p các b n ghi (sau này g i là RecordStore) là t p h p các Record

đ c s p x p có th t M i Record không th đ ng đ c l p mà nó ph i thu c vào m t RecordStore nào đó, các thao tác trên Record ph i thông qua RecordStore ch a nó Khi t o ra m t Record trong RecordStore, Record

đ c gán m t s đ nh danh ki u s nguyên g i là Record ID Record đ u tiên đ c t o ra s đ c gán Record ID là 1 và s t ng thêm 1 cho các Record ti p theo C n chú ý r ng Record ID không ph i là ch m c (index), các thao tác xóa Record trong RecordStore s không gây nên vi c tính toán

l i các Record ID c a các Record hi n có c ng nh không làm thay đ i Record ID c a các Record đ c t o m i, ví d : khi ta xóa record id 3 khi thêm m t record m i s có id là 4 Data là m t dãy các byte đ i di n cho d

Trang 25

li u c n l u c t MIDP không đ nh ngh a chuy n gì x y ra khi đ t đ n s

ID b n ghi t i đa, đi u này ph thu c vào ng d ng

Tên đ c dùng đ phân bi t các RecordStore trong b các MIDlet (MIDlet suite) C n chú ý khái ni m MIDlet suite là t p các MIDlet có chung không gian tên (name space), có th chia s cùng tài nguyên (nh RecordStore), các bi n t nh (static variable) trong các l p và các MIDlet này s đ c đóng gói trong cùng m t file jar khi tri n khai N u ng d ng

c a b n ch có m t MIDlet thì các RecordStore đ c s d ng c ng phân

bi t l n nhau b ng các tên Tên c a RecordStore có th dài đ n 32 ký t Unicode và là duy nh t trong m t MIDlet suite

Nh trong hình, các MIDlet có th có nhi u h n m t t p l u tr b n ghi, chúng ch có th truy xu t d li u l u tr b n ghi ch a trong b MIDlet c a chúng Do đó, MIDlet 1 và MIDlet 2 có th truy xu t d li u trong Record Store 1 và Record Store 2 nh ng chúng không th truy xu t d li u trong Record Store3 Ng c l i, MIDlet 3 ch có th truy xu t d li u trong Record Store 3 và không th truy xu t d li u d li u trong Record Store 1

và Record Store 2

3.5.2 H n ch

Dung l ng vùng nh (non-volatile memory) dành riêng cho vi c l u

tr d li u trong RMS thay đ i tùy theo thi t b di đ ng c t MIDP yêu

c u r ng các nhà s n xu t thi t b di đ ng ph i dành ra vùng nh có kích

th c ít nh t 8K cho vi c l u tr d li u trong RMS c t không nêu gi i

h n trên cho m i Record RMS cung c p các API đ xác đ nh kích th c

Trang 26

c a m i Record, t ng dung l ng c a RecordStore và kích th c còn l i

c a vùng nh này Do đó trong quá trình phát tri n các ng d ng J2ME

ph i cân nh c trong vi c s d ng vùng nh này

3.5.3 T c đ truy xu t

Các thao tác trên vùng nh này (non-volatile memory) t t nhiên s ch m

h n nhi u khi b n truy xu t d li u trên b nh RAM (volatile memory)

N u RecordStore c a b n ch đ c s d ng b i m t MIDlet, b n không

ph i lo l ng v v n đ này vì RMS s dành riêng m t Thread đ th c hi n các thao tác trên RecordStore Tuy nhiên n u có nhi u MIDlet và Thread cùng chia s m t RecordStore thì ph i chú ý đ n k thu t l p trình Thread

đ đ m b o không có s xung đ t d li u

L u tr b n ghi cho phép l u d li u khi ng d ng thoát, kh i đ ng l i

và khi thi t b di đ ng t t hay thay pin D li u l u tr b n ghi s t n t i trên thi t b di đ ng cho đ n khi ng d ng th t s đ c xóa kh i thi t b di

đ ng Khi m t MIDlet b xóa, t t c các l u tr b n ghi c a nó c ng b xóa

Trang 27

CH NG 4: L P TRÌNH M NG

4.1 Khái quát

c t MIDP 1.0 phát bi u r ng các tri n khai c a MIDP trên thi t b di

đ ng b t bu c ph i h tr ít nh t là k t n i HTTP 1.1 s d ng khung k t n i chung (GCF – Generic Connection Framework) S d ng k t n i client HTTP 1.1 ngh a là thi t b g i m t yêu c u (request) và server g i v m t h i đáp (response) t ng ng

B ng cách ch dùng k t n i HTTP client ngh a là server không th thi t l p liên l c v i thi t b ngo i tr b ng cách h i đáp m t request M t MIDlet 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 đ c h

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 v i nhau HTTP là m t c ch m c

đ nh 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

Trang 28

c a nó đ c đ nh ngh a và mô t b ng XML nh ngh a c a nó có th

đ c nh n ra b ng các h th ng ph n m m khác Các h th ng này sau đó

có th t ng tác v i d ch v Web theo ph ng cách đ c mô t trong đ nh ngh a c a nó, s d ng các thông đi p theo XML đ c chuy n b ng các giao th c Internet

4.2.2 Các đ c t trong webservice

Hai đ c t quan tr ng v d ch v Web là Ngôn ng mô t d ch v Web (Web Services Description Language – WSDL) và Giao th c truy xu t đ i

t ng đ n gi n (Simple Object Access Protocol – SOAP)

- WSDL đ c dùng đ mô t m t d ch v Web đã đ c tri n khai

- SOAP đ c dùng đ đ nh ngh a đ nh d ng c a thông đi p đ c trao đ i

gi a các đi m cu i (thí d nh client và server) c a d ch v Web trong

c t MIDP 1.0 và MIDP 2.0 không xác đ nh b t k h tr nào cho XML hay SOAP Các nhà phát tri n MIDP mu n s d ng XML hay SOAP th ng

ph i s d ng các th vi n bên ngoài i u này r t b t l i vì m i MIDlet ph i

ch a các th vi n này Các th vi n nh v y th ng kho ng 25 đ n 50 KB

Trang 29

(kích th c file class) i u này có kh n ng s làm gi m không gian cho ng

d ng MIDlet

Lu n v n này, em s d ng các th vi n m KXML và KSOAP Ngoài ra,

m t vài th vi n XML và SOAP khác nh m đ n thi t b J2ME c ng có th d dàng đ c tìm th y, và có th đ c s d ng theo ph ng cách t ng t .

Trang 30

CH NG 5: NH V THI T B DI NG

xác đ nh v trí c a đi n th ai di đ ng ta có nhi u công ngh khác nhau

đ th c hi n Sau đây là 2 công ngh c b n nh t

Ü S d ng m ng đi n th ai di đ ng GSM

Ü S d ng thi t b đ nh v GPS

5.1 M ng đi n tho i GSM

ây là cách đ n gi n và khá ph bi n trong l nh v c xác đ nh v trí c a đi n

th ai u đi m c a ph ng pháp này là có th s d ng cho t t c các đi n tho i

di đ ng Tuy nhiên đ làm đ c này ta c n có s h p tác và cho phép c a nhà cung c p d ch v đi n th ai đ có th s d ng h th ng GSM c a h Vì lý do

đó trong lu n v n này em không th th c hi n ph ng pháp này

GSM hi n đang là h th ng thông tin di đ ng đ c s d ng r ng rãi nh t trên th gi i Trong h th ng GSM ch c n ng qu n lý kh n ng di đ ng (MM-Mobility Management) đ c th c thi khá đ y đ V trí các thuê bao trong

m ng GSM có th đ c xác đ nh ngay thông qua c ch qu n lý v trí trong

ch c n ng MM Có th t c h tr đ th c hi n đi u này đó là: C p nh t v trí (Location Update) và Paging V trí qu n lý trong h th ng GSM có th sau đó tham chi u v i t a đ th c và đ a ra v trí đ a lý c a thuê bao v i đ chính xác không cao Bên c nh đó n u các th t c này đ c đ a vào s d ng nh m t

d ch v cho t t c ng i dùng thì s 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

Trang 31

5.2 Thi t b đ 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 có kh n ng là ph ng pháp chính xác nh t (gi a 4 và 40 mét, n u nh n GPS có m t l n xem c a b u

Trong tr ng h p này, ta s d ng gói JSR 179 - JavaLocationAPI

JSR 179 đ nh ngh a các l p và các giao di n cho vi c xây d ng các ng

d ng đ nh v trên n n các thi t b di đ ng phát tri n ng d ng đ nh v v i JSR 179 yêu c u thi t b di đ ng đ c thi t k h tr JSR 179 Hi n t i Sun có cung c p b công c WTK h tr l p trình cho các ng d ng JSR 179 v i yêu

c u CLDC t 1.1 tr lên vì các phiên b n CLDC tr v tr c không h tr d u

ph y đ ng Hi n t i m i nh t WTK 2.5.2 h tr đ y đ các specification c a 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();

Trang 32

double lon = c.getLongitude();

Trong cách này ta ch y u s d ng gói JSR 82 – Bluetooth API đ

th c hi n các thao tác liên quan v BlueTooth

đ c thông tin t m t thi t b GPS, ta c n th c hi n các giai đo n sau:

ki m, k t n i v i thi t b BlueTooth

Trang 33

b c 3 này, ngoài vi c thi t b BlueTooth th c hi n vi c g i d

li u liên t c dó do ta c ng ph i th c hi n thao tác đ c liên t c d li u

nh n đ c và ghép chúng thành nh ng câu hoàn ch nh C n chú ý r ng, thi t b GPS g i tr v r t nhi u lo i câu GPS khác nhau nh :

$GPBOD - Bearing, origin to destination

$GPBWC - Bearing and distance to waypoint, great circle

$GPGGA - Global Positioning System Fix Data

$GPGLL - Geographic position, latitude / longitude

$GPGSA - GPS DOP and active satellites

$GPGSV - GPS Satellites in view

$GPHDT - Heading, True

$GPR00 - List of waypoints in currently active route

$GPRMA - Recommended minimum specific Loran-C data

$GPRMB - Recommended minimum navigation info

$GPRMC - Recommended minimum specific GPS/Transit data

$GPRTE - Routes

$GPTRF - Transit Fix Data

$GPSTN - Multiple Data ID

$GPVBW - Dual Ground / Water Speed

$GPVTG - Track made good and ground speed

$GPWPL - Waypoint location

$GPXTE - Cross-track error, Measured

$GPZDA - Date & Time

Tùy vào yêu c u c a ch ng trình mà ta s phân tích chu i nào và

lo i b chu i nào lu n v n này, do c a ch ng trình l ch l y thông

tin v trí, nên em ch ph n tích 2 chu i c b n GPGGA và GPRMC

6 = GPS quality indicator (0=invalid; 1=GPS fix; 2=Diff GPS fix)

7 = Number of satellites in use [not those in view]

8 = Horizontal dilution of position

9 = Antenna altitude above/below mean sea level (geoid)

10 = Meters (Antenna height unit)

11 = Geoidal separation (Diff between WGS-84 earth ellipsoid and mean sea level -=geoid is below WGS-84 ellipsoid)

12 = Meters (Units of geoidal separation)

13 = Age in seconds since last update from diff reference station

Trang 34

14 = Diff reference station ID#

15 = Checksum

Ü Chu i GPRMC

$GPRMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,ddmmyy,x.x,a*hh

1 = UTC of position fix

2 = Data status (V=navigation receiver warning)

3 = Latitude of fix

4 = N or S

5 = Longitude of fix

6 = E or W

7 = Speed over ground in knots

8 = Track made good in degrees True

Trang 35

CH NG 6: PHÂN TÍCH THI T K NG D NG

6.1 Kh o sát hi n tr ng

Hi n nay, khi chi c đi n tho i di đ ng đang đ c s d ng r ng rãi h n

Chúng tuy nh bé nh ng h t s c ti n l i, ngoài ch c n ng liên l c, nó còn là

m t ph tá không th thi u trong công vi c và là ph ng ti n gi i trí lý thú

Hi n nay ph n m m b n đ trên đi n tho i di đ ng là không thi u, nh ng chúng th ng b h n ch c b n v m t d li u ( d li u n m kèm theo ch ng

trình ) Còn nh ng ph n m m b n đ ho t đ ng theo c ch Client-Server là r t

ít, do t c đ truy n d li u gi a Server và đi n tho i di đ ng còn h n ch Tuy

nhiên v i vi c các nhà cung c p d ch v di đ ng chay đua v i nhau cung c p

d ch v 3G, h a h n t c đ truy n t i d li u gi a Server và đi n tho i di đ ng

s c i thi n h n

Trong b i c nh Vi t Nam đang h i nh p v i th gi i Vi c cho ra đ i m t

s n ph m b n đ trên đi n tho i di đ ng hi n th b n đ c a 64 t nh thành c a

Trang 36

- H th ng l y nh đã 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

Trang 37

2: Paint

3: Check Map

4: Call Webservice get map information

Trang 38

6.3.4 Tìm đ ng đi ng n nh t gi a hai đi m

• Mô t : Ng i dùng mu n tìm đ ng đi ng n nh t gi a 2 đi m trên b n

- N u ch a xác đ nh đi m đ u hay đi m cu i k t thúc s ki n

- H th ng y u c u webservices cung c p thông tin v đ ng đi ng n

nh t theo các tham s trên

2: Check zoom level

3: Set zoom value

4: Paint

Trang 39

- N u webservice tr v null k t thúc s ki n, hi n th thông báo

- Ng c l i, h th ng phân tích đ i t ng tr v đ l y thông tin

- Hi n th k t qu đ ng đi

- V đ ng đi lên b n đ

Trang 40

- Ch ng trình tính toán v trí c a ng i dùng v i t a đ trên đ ng đi

đ ch ra h ng d n ( h ng d n g m: âm thanh và m i tên ch d n

đ ng đi )

User

1: Select begin point

2 Select end point

3 Find shorstest path

7 Paint

4: Get.ShortestPath

ShortestPathRecord ShortestPathList

6: Show result.

5: ParseInformation

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

HÌNH ẢNH LIÊN QUAN

Hình v  sau minh h a quan h  gi a CLDC, CDC và Java 2 Standard  Edition ( J2SE ). Theo  đ ó chúng ta th y m t ph n l n các ch c n ng trong  CLDC và CDC có  đ c do k  th a J2SE - Đồ án tốt nghiệp  Khoa Công nghệ thông tin Xây dựng ứng dụng MobileGIS
Hình v sau minh h a quan h gi a CLDC, CDC và Java 2 Standard Edition ( J2SE ). Theo đ ó chúng ta th y m t ph n l n các ch c n ng trong CLDC và CDC có đ c do k th a J2SE (Trang 14)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm