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

ứng dụng java cho điện thoại di động

16 272 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 16
Dung lượng 432,48 KB

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

Nội dung

o Thêm các API h tr Multimedia: Mobile Media API MMAPI.

Trang 1

CH NG 1 GI I THI U T NG QUAN

1.1 Lý do ch n đ án

Công ngh thông tin ngày nay có vai trò r t quan trong trong cu c 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 trong đ i

s ng giúp công vi c đ c ti n hành m t cách nhanh chóng và hi u qu h n Có r t nhi u công ngh m i phát tri n song song v i vi c phát tri n công ngh thông tin

nh Bluetooth, ADSL, Wireless, Mobile, WAP,…nh m giúp công ngh thông tin ngày càng thân thi t v i ng i dùng h n M t trong nh ng công ngh mà góp ph n không nh trong vi c đ a công ngh thông tin đ n v i ng i s d ng và góp ph n không nh trong công vi c hàng ngày c a chúng ta là công ngh di đ ng

V i t c đ phát tri n c a công ngh di đ ng ngày nay và nh ng l i ích mà nó mang l i cho chúng ta là r t l n Không gi ng nh nh ng chi c đi n tho i tr c đây – ch có nhi m v tho i, đi n tho i hi n nay không ch có nhi m v tho i mà còn h

tr r t nhi u ng d ng khác nh : g i/nh n mail, truy c p Intenet, xem phim, nghe

nh c, ch i game,… Nh ng chi c đi n tho i di đ ng hi n nay h tr r t m nh v âm thanh, hình nh, đ ho góp ph n làm t ng tính n ng gi i trí c a đi n tho i di

đ ng c ng đ ng th i tìm hi u vi c xây d ng các ng d ng trên đi n tho i di đ ng, chúng em ch n đ án là Tìm hi u v J2ME (Java 2 Micro Edition) và vi t nh ng game đ n gi n nh m khai thác các tính n ng m nh c a đi n tho i di đ ng hi n nay Qua đ án chúng em c g ng n m b t và ng d ng đ c t t các k thu t l p trình trên thi t b di đ ng Hi v ng k t qu c a đ án s là m t tài li u tham kh o có ích cho các b n sinh viên

1.2 M c tiêu

Sau khi th c hi n đ án, các m c tiêu mà chúng em c n đ t đ c là:

̇ Hi u chi ti t v J2ME và ng d ng c a nó đ l p trình trên các thi t b di

đ ng

Trang 2

̇ N m đ c các k thu t x lý âm thanh, hình nh và l u tr trên đi n tho i di

đ ng

̇ ng d ng các k t qu nghiên c u đ c xây d ng game đ n gi n khai thác các đi m m nh v âm thanh, hình nh, đ h a nh m ph c v cho nh c u

gi i trí c a ng i dùng

̇ Áp d ng thành công trên m t s máy đi n tho i di đ ng có h tr Java nh Nokia, Samsung, Sony Ericsson…

1.3 i t ng nghiên c u

xây d ng ng d ng trên đi n tho i di đ ng, đ i t ng mà chúng em c n tìm

hi u g m các ph n sau:

- Nghiên c u ngôn ng l p trình Java và công ngh J2ME ng d ng l p trình trên đi n tho i di đ ng

- Nghiên c u các k thu t x lý đ h a và ho t hình

- Nghiên c u các k thu t x lý phím trên đi n tho i di đ ng

- Nghiên c u các k thu t l u tr d li u trên đi n tho i di đ ng

- Nghiên c u các k thu t x lý âm thanh trên đi n tho i di đ ng

- K thu t x lý b nh

- Cách nén và t i u code cho ng d ng trên đi n tho i di đ ng

1.4 Ph m vi nghiên c u

Nghiên c u chi ti t v công ngh J2ME và tìm hi u các k thu t l p trình trên

đi n tho i di đ ng ng d ng k t qu nghiên c u đ xây d ng đ c ng d ng khai thác đ c các th m nh c a đi n tho i di đ ng Vì th i gian không nhi u nên chúng

em ch trình bày m t s k thu t trên đi n tho i di đ ng thu c các hãng l n nh Nokia, Samsung hay Sony Ericssion Chúng em c g ng khai thác h t các th m nh

v âm thanh, hình nh mà các nhà s n xu t cung c p

1.5 Môi tr ng th c hi n đ án

- H đi u hành Windows 2000, Windows XP

- Borland JBuiler 9, X

Trang 3

- JDK 1.4.2

- Nokia Developer’s Suite 2.1 for J2ME , Series 40 Developer SDK

- Samsung JaUmi Wireless Tookit 2.0, Samsung SDK 1.0

- Sony Ericssion Wireless Tookit 1.0, 2.0

1.6 Gi i thi u v Java và ng d ng l p trình trên thi t b

di đ ng

Công ngh di đ ng ngày càng phát tri n Chi c đi n tho i di đ ng hi n nay không còn đ n gi n th c hi n duy nh t nhi m v tho i mà ngày càng tr nên m t

tr lý không th thi u và còn là thi t b ph c v cho nhu c u gi i trí Công ngh Java là công ngh đi tiên phong trong vi c xâm nh p vào l nh v c di đ ng N u b n

có chi c đi n tho i di đ ng h tr Java, b n có th ch i game, ch y các ng d ng

vi t b ng Java b t k n i đâu và b t k lúc nào

1.6.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 thi 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à nh 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 V i s phát tri n c a Java hi n nay, các nhà phát tri n đã xây

d ng nhi u nhánh m i cho Java nh : JavaMail(th đi n t ), Java TAPI( vi n thông), Java3D (đ ho 3 chi u), J2ME ( ng d ng cho thi t b di đ ng) Java có các phiên b n sau:

J2EE TM (Java 2 Platform, Enterprise Edition): phiên b n dành cho máy ch

l n v i s c m nh x lý và dung l ng b nh l n

J2SE TM (Java 2 Platform, Standard Edition): phiên b n chu n ch y trên các

máy PC và laptop v i m t s MB b nh 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

Trang 4

J2ME (Java 2 Platform, Micro Edition): 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ý

1.6.2 Gi i thi u v J2ME và ng d ng l p trình cho đi n tho i di đ ng

1.6.2.1 Gi i thi u v J2ME

J2ME đ c phát tri n t ki n trúc Java Card, Embeded Java và Personal Java

c a phiên b n Java 1.1 n s ra đ i c a Java 2 thì Sun quy t đ nh thay th Personal Java và đ c g i v i tên m i là Java 2 Micro Edition, hay vi t t t là J2ME úng v i tên g i, J2ME là n n t ng cho các thi t b có tính ch t nh , g n (Micro có ngh a là nh trong ti ng Anh)

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:

M i t ng trên t ng ph n c ng là t ng tr u t ng, nó cung c p cho l p trình viên nhi u giao di n l p trình ng d ng thân thi n h n

MIDP – Mobile

Imfomation

Device Profile

Các API khác

C u hình CLDC – Connected

Limited Device Configuration

Máy o JAVA

Ph n c ng thi t b

Trang 5

o T ng ph n c ng thi t b (Device Hardware Layer): đây là thi t b di

đ ng th t s v i c u hình ph n c ng (b nh và t c đ x lý) c th Các thi t b di đ ng có th có b vi x lý khác nhau và các t p 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

o 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 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 các thi t b di đ ng T ng này cung c p m t s chu n hoá cho các thi t b di đ ng đ ng d ng J2ME sau khi đã biên d ch có th ch y

đ c trên b t k thi t b di đ ng nào có h tr J2ME KVM

o T ng c u hình (Configuration Layer): 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à các 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)

o T ng hi n tr ng (profile layer): cung c p t p các hàm API h u d ng h n

cho l p trình M c đích c a t p hi n tr ng là xây d ng nê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 B ng mô t m t s thi t b s d ng J2ME:

PCs JDKTM 1.1.x JavaTM 2 Platform Standard Edition

(J2SE TM) PDAs and

Communicators

Personal JavaTM JavaTM 2 Platform, Micro Edition

(J2ME TM) / CDC

Embedded Devices Embedded JavaTM J2ME/CLDC

Smart Cards JavaCardTM JavaCard

Trang 6

1.6.2.2 Lý do ch n J2ME

Java ban đ u đ c thi t k dành cho các máy v i tài nguyên b nh h n ch Th

tr ng c a J2ME đ c m r ng ra cho nhi u ch ng lo i thi t b nh :

- Các l ai th cá nhân nh Java Card

- Máy đi n tho i di đ ng

- Máy PDA (Personal Digital Assistant - thi t b tr giúp cá nhân)

- Các h p đi u khi n dành cho tivi, thi t b gi i trí gia d ng …

1.6.2.3 Gi i thi u các thành ph n trong n n t ng J2ME

nh ngh a v Configuration (C u hình): là đ c t đ nh ngh a m t môi tr ng

ph n m m cho m t dòng các thi t b đ c phân lo i b i t p h p các đ c tính, ví d

nh :

• Ki u s l ng b nh

• Ki u và t c đ b vi x lý

• Ki u m ng k t n i

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 qui đ 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 là CDDC và CDC

CLDC (Connected Limited Device Configuration-C u hình thi t b k t n i gi i

h n): đ 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

Trang 7

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

CDC - Connected Device Configuration (C u hình thi t b k t n i): 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 th ng là trên 2MB) và có b x lý m nh h n Các s n

ph m này có th k đ n nh các máy PDA c p cao, đi n tho i web, các thi t b gia

d ng trong gia đình …

C 2 d ng C u hình k trên đ u ch a máy o Java (Java Virtual Machine) và

t p h p các l p (class) Java c b n đ cung c p m t môi tr ng cho các ng d ng J2ME Tuy nhiên, b 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 t t c các tính

n ng nh v i máy o c a J2SE, ví d , các thi t b thu c CLDC không có ph n c ng yêu c u các phép tính toán d u ph y đ ng, nên máy o thu c CLDC không đ c yêu c u h tr ki u float và double

nh ngh a v Profile

Profile 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 Chúng ta s đi m qua các profile tiêu bi u:

- Mobile Information Device Profile (MIDP): profile này s b sung các tính

n ng nh h tr k t n i, các thành ph n h tr giao di n ng i dùng … vào CLDC Profile này đ c thi t k ch y u đ nh m vào đi n th ai di đ ng v i đ c tính là màn hình hi n th h n ch , dung l ng ch a có h n Do đó MIDP s cung c p m t giao di n ng i dùng đ n gi n và các tính n ng m ng đ n gi n d a trên HTTP Có

Trang 8

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)

Hi n nay, MIDP có hai phiên b n là MIDP 1.0 và MIDP 2.0 Nh ng ch c

n ng mà MIDP cung c p:

o Các l p và các ki u d li u: ph n l n các l p quen thu c v i các l p trình viên trong Java v n gi l i, ví d : các l p trong gói java.util nh Stack, Vector, Hastable,…

o H tr đ i t ng Display: m t ch ng trình MIDP s h tr duy nh t m t

đ i t ng Display, là đ i t ng qu n lý vi c hi n th d li u trên màn hình

đi n tho i

o H tr Form và giao di n ng i dùng

o H tr Timer và Alert

o Record Management System (RMS) cho vi c l u tr d li u

MIDP 2.0 đ c SUN cho ra đ i vào tháng 11/2003 v i hàng lo t tính n ng m i (hi n nay m t s lo i đi n tho i h tr MIDP 2.0 nh Nokia 6600, Sony Ericssion P900) ây là b ng mô t nh ng tính n ng n i b t c a MIDP 2.0 so v i MIDP 1.0:

o Nâng c p tính n ng b o m t: doanload qua m ng an toàn h n qua vi c h tr giao th c HTTPS Ki m soát vi c k t n i gi a máy di đ ng v i Server: ví d các ch ng trình s không th k t n i đ n server n u không có s ch p nh n

c a ng i dùng

o Thêm các API h tr Multimedia: Mobile Media API (MMAPI)

o 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, nh ng thay đ i l n nh t là trong Form và Item

o H tr l p trình game v i Game API: Tr c đây v i MIDP 1.0, l p trình viên

ph i t vi t code cho hành đ ng c a nh n v t và đ h a Vi c này làm t ng kích th c ch ng trình c ng nh kh n ng l i V i Game API trong MIDP 2.0, công vi c này tr nên nh nhàng h n nhi u Ý t ng c b n c a Game API là gi đ nh m t màn hình game nh là t p h p các l p (layer) Ví d :

Trang 9

trong game đua xe thì màn hình n n là m t layer, con đ ng là m t layer và chi c xe là m t layer khác

o 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à bi u di n hình nh d i d ng m ng các s nguyên, cho phép thao tác v i d li u hình nh m t cách tr c ti p

Trong đ án chúng em ch t p trung vào MIDP 1.0 vì hi n nay các đi n tho i

h tr MIDP 1.0 là r t nhi u nh ng h tr MIDP 2.0 thì t ng đ i ít

- PDA Profile: t ng t MIDP, nh ng v i th tr ng là các máy PDA v i màn hình

và b nh l n h n

- Foundation Profile: cho phép m r ng các tính n ng c a CDC v i ph n l n các

th vi n c a b Core Java2 1.3

1.7 MIDlet

Các ng d ng J2ME đ c g i là MIDlet (Mobile Imformation Device Applet)

M t MIDlet là m t l p Java m r ng (extend) c a l p tr u t ng

java.microedition.midlet.MIDlet và th c thi (implement) các ph ng th c

startApp(), pauseApp() và destroyApp().

Hình sau bi u di n b khung yêu c u t i thi u c a m t ng d ng MIDlet

Import javax.microedition.midlet.*;

Public class exampleMIDlet extends MIDlet { Public exampleMIDlet(){}

Public void startApp(){}

Public void pauseApp(){}

Public void destroyApp(boolean unconditional){}

}

- Các phát bi u import đ c dùng đ include các l p c n thi t t các th vi n CLDC và MIDP

- Ph n chính c a MIDlet: đ c đ nh ngh a nh là l p m r ng c a l p MIDlet, trong ví d này là exampleMIDlet

Trang 10

- Hàm t o (Constructor): hàm t o ch đ c th c thi m t l n khi MIDlet kh i

t o l n đ u tiên, hàm t o s không đ c g i l i tr khi MIDlet thoát và sau đó

kh i đ ng l i

- startApp(): ph ng th c startApp() đ c g i b i b qu n lý ng d ng khi MIDlet đ c kh i t o hay khi MIDlet tr v tr ng thái t m d ng

- pauseApp(): ph ng th c pauseApp() đ cg i b i b qu n lý ng d ng

m i khi ng d ng c n đ c t m d ng

- destroyApp(): ph ng th c này đ c g i khi thoát MIDlet

1.8 Chu k s ng c a MIDlet

S đ bi u di n chu k s ng c a Midlet

Khi ng i dùng yêu c u th c thi ng d ng, b qu n lý ng d ng s th c thi MIDlet Khi ng d ng th c thi, nó s đ c xem là tr ng thái t m d ng, b qu n lý

ng d ng s g i hàm t o và hàm startApp(). Hàm startApp() có th đ c g i nhi u l n trong quá trình th c thi ng d ng Hàm destroyApp() ch có th g i khi

ng d ng tr ng thái ho t đ ng ho c t m d ng

destroyApp(

)

startApp() pauseApp()

T m d ng

Ho t đ ng

H y

Ch ng trình đ c

Ngày đăng: 15/10/2016, 05:36

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w