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

Lập trình ứng dụng mobile bằng java khóa luận tốt nghiệp đại học

156 13 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

Nội dung

Β ΓΙℑΟ D Χ & ℵΟ Τ Ο ΤΡ ΝΓ Ι Η Χ Μ ΤΠ.ΗΧΜ ΚΗΟΑ ΧΝΓ ΝΓΗ ΤΗΝΓ ΤΙΝ ΚΗΑ ΛΥ Ν Τ Τ ΝΓΗΙ Π τ◊ι: Λ Π ΤΡ⊂ΝΗ ΝΓ D ΝΓ ΜΟΒΙΛΕ Β ΝΓ ϑΑςΑ ΓςΗD : Τι ν σ ΝΓΥΨ Ν ς Ν ΗΙ Π ΣςΤΗ : ΝΓΥΨ Ν ΧΝΓ Η∧ΝΓ ΜΣΣς : 106Η1031 ΤΠ.Η ΧΗ⊆ ΜΙΝΗ – Ν Μ 2009 Λ ι Χ m ν! Λυ ν 〈ν đ đ χ τη χ ηι ν τρονγ m τ τη ι γιαν δ◊ι, ϖ◊ đψ λ◊ τη◊νη πη m λ ν νη τ m◊ τι τη χ ηι ν đ χ τρονγ θυ〈 τρνη η χ τ π τ ι τρ νγ Νγο◊ι σ χ γ νγ, ν λ χ χ α β ν την, χ∫ν νη ν σ γιπ đ χ α νηι υ νγ ι đ τι χ⌠ τη ηο◊ν τηι ν đ χ λυ ν 〈ν νη νγ◊ψ ναψ υ τιν, χον ξιν ϖ χνγ βι τ ν Βα Μ , đ χ⌠ χνγ σινη τη◊νη, δ ψυ ϖ◊ χη m σ⌠χ đ χηο χον χ⌠ đ χ νγ◊ψ ηm ναψ νγ δ χ, τη νγ Τι ξιν χ m ν χ〈χ τη ψ χ Κηοα Χνγ νγη τηνγ τιν ϖ◊ χ〈χ τη ψ χ τρ νγ ι Η χ Μ ΤΠ.ΗΧΜ đ τρυψ ν đ τ νη νγ κι ν τη χ, κινη νγηι m θυ β〈υ τρονγ θυ〈 τρνη η χ τ π ϖ◊ νγηιν χ υ Εm ξιν χην τη◊νη χ m ν τι ν σ Νγυψ ν ς ν Ηι π, γι νγ ϖιν Κηοα Χνγ νγη τηνγ τιν – τρ νγ ι Η χ Β〈χη Κηοα Τπ.ΗΧΜ đ τ ν τνη η νγ δ ν, đ νη η νγ, γ⌠π  τρονγ θυ〈 τρνη τη χ ηι ν λυ ν ϖ ν Τι ξιν χ m ν τ π τη νη⌠m λ π τρνη πη ν m m χνγ τψ Τιν η χ Τη ο Χη đι υ κι ν χηο τι τρονγ θυ〈 τρνη τη χ ηι ν λυν ϖ ν ν◊ψ νγ đ τ ο Τι ξιν χ m ν χ〈χ β ν đ đ νγ ϖιν χηο τι τρονγ θυ〈 τρνη τη χ ηι ν λυ ν ϖ ν Μ χ δ, τι đ ν λ χ đ ηο◊ν τη◊νη β◊ι β〈ο χ〈ο ν◊ψ ϖ◊ đ đ τ m τ σ κ τ θυ νη τ đ νη, τυψ νηιν νη νγ σαι σ⌠τ τρονγ β〈ο χ〈ο κηνγ τρ〈νη κη ι, κνη mονγ σ τηνγ χ m ϖ◊ đ⌠νγ γ π  κι ν χ α θυ τη ψ χ ϖ◊ χ〈χ β ν Ξιν χην τη◊νη χ m ν! Τπ ΗΧΜ, νγ◊ψ 07, τη〈νγ 01, ν m 2009 Νγ ι τη χ ηι ν: Νγυψ ν Χνγ Ηνγ Μ σ σινη ϖιν: 106Η1031 Λ π η χ: ΗΧΤΗ062Χ Ξιν Χ m ν! Lu n v n t t nghi p CH NG 1: 1.1 1.2 1.3 CH TÀI t v n đ M c tiêu đ t cho đ tài N i dung NG 2: 2.1 M C TIÊU VÀ N I DUNG T NG QUAN V J2ME CÁC THÀNH PH N C A J2ME 2.1.1 T ng ph n c ng thi t b (Device Hardware Layer) 2.1.2 T ng máy o Java (Java Virtual Machine Layer) 2.1.3 T ng c u hình (Configuration Layer) 10 2.1.4 T ng hi n tr ng (Profile Layer) 12 2.1.5 M t s h n ch c a J2ME so v i phiên b n khác(ch y u n m t ng Configuration này): 12 2.2 CH C N NG CÁC THÀNH PH N 13 2.2.1 Máy o Java (Kilobyte Virtual Machine - KVM) 13 2.2.2 CLDC 15 2.2.2.1 Yêu c u ph n c ng dành cho CLDC: 16 2.2.2.2 Yêu c u ph n m m dành cho CLDC: 17 2.2.2.3 S khác bi t gi a CLDC 1.0 CLDC 1.1 17 2.2.2.4 Danh sách l p mà CLDC cung c p 17 2.2.3 MIDP 20 2.2.3.1 nh ngh a: 20 2.2.3.2 Nh ng ch c n ng mà MIDP không h tr : 20 2.2.3.3 Nh ng ch c n ng mà MIDP cung c p 21 2.2.3.4 Nh ng yêu c u dành cho MIDP 21 2.2.3.5 Các d ng profile 22 2.2.3.6 S khác gi a MIDP 1.0 MIDP 2.0 22 2.2.3.7 Danh sách l p mà MIDP cung c p 23 CH NG 3: 3.1 3.2 NH NGH A: .26 CÁC D NG MIDLET 26 3.2.1 3.2.2 3.3 B MIDLET 26 ng d ng đ n (standalone application) 26 ng d ng n i m ng (networked application) 26 C U TRÚC M T B MIDLET (MIDlet suite) 26 3.3.1 C u trúc file Jar 26 3.3.2 File JAD (Java Application Descriptor File) : 27 3.3.2.1 t t 27 3.3.2.2 Các ph ng th c MIDlet 29 3.3.2.3 Xây d ng m t ng d ng MIDlet: 29 3.3.2.4 L p MIDlet: 31 CH 4.1 NG 4: GIAO DI N H A 33 QU N LÝ VI C HI N TH VÀ B T S Trang KI N 35 Lu n v n t t nghi p 4.1.1 Qu n lý vi c hi n th 35 4.1.1.1 L p Display 35 4.1.1.2 L p Displayable 36 4.1.2 Qu n lý s ki n: 37 4.1.2.1 Command CommandListener 38 4.1.2.2 Item ItemStateListener 41 4.2 GIAO DI N 4.2.1 4.2.2 4.2.3 4.2.3.1 4.2.3.2 4.2.3.3 4.2.3.4 4.2.3.5 4.2.3.6 4.2.3.7 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.7.2 4.2.7.3 4.2.8 H A C P CAO 42 Screen: 42 Form: 42 Item: 43 DateField: 44 Gauge: 45 StringItem: 47 TextField: 47 ChoiceGroup: 50 Image: 53 ImageItem: 54 TextBox 56 Alert 58 AlertType: 60 List: 61 Các d ng c a list 61 B t s ki n cho đ i t ng List 62 So sánh gi a l p List l p ChoiceGroup: 62 Ticker: 64 H A C P TH P .64 4.3 4.3.1 Canvas: 65 4.3.1.1 H t a đ 65 4.3.1.2 V đ i t ng Canvas: 66 4.3.1.3 B t s ki n đ i t ng Canvas 68 4.3.1.4 Game action: 70 4.3.2 Graphics: 72 4.3.2.1 Color: 73 4.3.2.2 Nét v : 74 4.3.2.3 Font ch : 76 4.3.2.4 V đ i t ng hình nh (Image): 78 4.3.2.5 Các ph ng th c t nh ti n c a đ i t ng: 79 4.3.2.6 Vùng xén (Clipping regions): 81 CH NG 5: L U TR THÔNG TIN VÀ L P TRÌNH M NG 82  N I DUNG TRÌNH BÀY: 82  L U TR THÔNG TIN TRONG J2ME 82  K T N I M NG V I GENERIC CONNECTION FRAMEWORK 82 Trang Lu n v n t t nghi p 5.1 L u tr thông tin v i RMS 82 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.2 RecordStore 83 RecordEnumeration 91 S p x p b ng RecordComparator 93 L c record v i RecordFilter 95 RecordListener 96 K t n i m ng v i Generic Connection Framework (GCF) 97 5.2.1 Gi i thi u GCF 97 CH NG 6: NH NG QUI TRÌNH VÀ RÀNG BU C M T NG D NG TRÊN JBUILDER CH Y C TRÊN MOBILE 117 6.1 Tìm hi u trình bày qui trình k thu t đ xây d ng m t ng d ng mobile Jbuilder 117 6.1.1 6.1.2 6.1.3 6.1.3.1 6.1.3.2 6.1.4 Cài đ t Jbuilder 117 Cài đ t SDK cho Nokia 121 Quá trình xây d ng MIDlet 127 Quá trình đ u tiên: T o m i m t project 127 Quá trình th hai: T o m t l p MIDlet 131 Các b c đ xây d ng file.Jar file.Jad: 137 6.2 Tìm hi u trình bày yêu c u ràng bu c đ m t ng d ng mobile Jbuilder có th ch y mobile 141 6.2.1 Nh ng ràng bu 6.2.1.1 Ràng bu c v 6.2.1.2 Ràng bu c v 6.2.2 Nh ng ràng bu CH NG 7: c thi t b di đ ng 141 ph n c ng 141 ph n m m 142 c đ i v i ng d ng 142 GI I THI U NG D NG DEMO 143 7.1 Gi i thi u .143 7.2 Xây d ng m t MIDlet 143 7.3 Mơ t ch ng trình 143 7.4 Các ch c n ng c a ch ng trình: 144 7.5 Th c thi ch ng trình 145 m t chi c n tho i có th ch y đ c ng d ng MIDlet tr c h t ta xem nh ng yêu c u ràng bu c đ m t ng d ng java ch y đ c mobile (v n đ đ c trình ch ng 6) .145 CH NG 8: K T QU VÀ H NG PHÁT TRI N 150 8.1 K t qu 150 8.2 Nh ng h n ch : 150 V quy n lu n v n trình bày Error! Bookmark not defined V ch ng trình Error! Bookmark not defined 8.3 H ng phát tri n 150 Trang Lu n v n t t nghi p CH  NG 1: M C TIÊU VÀ N I DUNG TÀI N i dung trình bày:  M c tiêu n i dung c a đ t i tv nđ 1.1 V i chi c máy tính đ bàn (máy PC) ngày làm đ ch uh t m i vi c t đ n gi n đ n ph c t p Nh ng mà máy PC ch làm vi c c đ nh, đó, máy tính Laptop xu t hi n v i tính n ng nh g n có th mang theo làm vi c h u nh m i n i Ngày thi t b di đ ng tr nên r t ph bi n đ r t r ng rãi t i Vi t Nam, đ c bi t lo i n tho i di đ ng Nhi u ng c s d ng i coi n tho i di đ ng nh m t v t không th thi u cu c s ng h ng ngày N m b t đ c nhu c u đó, nhà s n xu t n tho i đ y m nh v m t công ngh , t ng c ng m u mã, tích h p ch c n ng ngày nhi u vào dòng s n ph m m i, h u đem l i cho ng nh t Gi đây, ng i dùng nh ng ti n ích cao c p nh t v i công ngh tiên ti n i dùng n tho i có th nghe nh c, xem phim, ch p hình ch i game th m chí xem TV, l t web ch v i chi c n tho i bé xíu bên Chi c n tho i th c s không ch m t ph ng tiên liên l c, mà cịn mang c th gi i gi i trí, th gi i Mobile đ n v i t ng ng i m i lúc m i n i V i công ngh phát tri n không ng ng nh hi n nay, vi c đòi h i ng d ng t t h n c ng ngày tr thành m t yêu c u đôi v i s phát tri n c a công ngh M t chi c n tho i t t đòi h i nh ng ph n m m cao c p kèm v i Nh ng v n đ l i đ t có nhi u nhà s n xu t n tho i s d ng nhi u công ngh khác V y có th t o đ đó? c nh ng ng d ng ch y t t c dòng s n ph m ây qu th t m t v n đ không đ n gi n chút M t th c t đ t cho nhà phát tri n ph n m m hi n khơng có m t chu n hóa dành cho nhà s n xu t ph n c ng Các thi t b th tr ng hi n r t đa d ng c ng mang nhi u đ c m c ng nh c u hình khác Tr c th c t đó, vi c có th ch y nhi u mơi tr ngôn ng Java Nh bi t, ban đ u Java đ b n nh t, ngày đ ng m t l i th r t l n c a c xây d ng ch g m m t phiên c bi t đ n v i tên J2SE (Java Standard Edition) v i Trang Lu n v n t t nghi p ph ng châm “Write once, run anywhere” t m d ch “vi t m t l n, ch y m i môi tr ng” Java đ c hình thành ý t ng xây d ng m t ngôn ng mà l p trình viên ch c n vi t m t l n nh t nh ng ng d ng có th ch y b t c mơi tr ng có h tr Java Virtual Machine t m d ch “máy o Java” Các nhà phát tri n Java cho m t ngôn J2ME h ng đ n vi c phát tri n ph n m m cho thi t b di đ ng Ngôn ng J2ME th c s ngôn ng nh g n, d n m b t, ch t ch thích h p cho thi t b có kh n ng h n ch Các thi t b di đ ng th tr ng hi n nay, đ c bi t n tho i di đ ng h u h t đ u h tr r t t t ngôn ng J2ME J2ME th c s tr thành m t nh ng ngôn ng ph bi n nh t l nh v c l p trình di đ ng J2ME đ h c xem nh m t nhánh c a ngơn ng l p trình Java đ c phát tri n nh m ng t i vi c l p trình cho thi t b nh có b nh , kh n ng hi n th x lý h n ch 1.2 M c tiêu đ t cho đ tài  Tìm hi u ràng bu c v ph n c ng c a ch ng lo i thi t b di đ ng hi n  Hi u chi ti t v J2ME, ki n trúc nên t ng c a nh ng ng d ng c a đ l p trình thi t b di đ ng  N mđ c k thu t x lý form, âm thanh, hình nh, l u tr n tho i di đ ng  Tìm hi u qui trình k thu t đ xây d ng ng d ng mobile Jbuilder  Nh ng ràng bu c đ m t ng d ng vi t Jbuilder có th ch y mobile  ng d ng k t qu đ t đ ích ph c v nhu c u c a ng c đ xây d ng ch ng trình đ n gi n, có ti n i s d ng n tho i di đ ng  Áp d ng thành cơng m t s dịng máy n tho i di đ ng h tr Java c a hãng nh Nokia, SonyEricsson, Samsung,…  Nh ng m c tiêu đ c đ t nh m xây d ng m t quy n lu n v n t t h n, đ h n Và xa h n n a là, lu n v n trình đ y đ nh ng c n thi t đ cho m i ng i có th t vi t nh ng ng d ng riêng cho chi c n tho i c a Trang Lu n v n t t nghi p 1.3 N i dung V i nh ng m c tiêu quy n lu n v n xin trình bày nh ng n i dung sau:  Gi i thi u chung v ngôn ng J2ME: t ng configuration profile  Các v n đ liên quan đ n m t b MIDlet  L p trình thi t b di đ ng s d ng giao di n đ h a c p th p c p cao  Vi c l u tr thông tin MIDlet xu ng b ng ghi truy xu t chúng c n thi t  L p trình m ng  Các b c c n thi t đ xây d ng th c thi m t MIDlet  Nh ng ràng bu c đ m t ng d ng vi t Jbuilder ch y đ  Xây d ng ng d ng game caro đ demo Trang c Mobile Lu n v n t t nghi p CH  NG 2: T NG QUAN V J2ME N i dung trình bày:  Trình nh ng thành ph n đ c u thành nên J2ME  Máy o java  Configuration Profile  Ch c n ng c a thành ph n 2.1 CÁC THÀNH PH N C A J2ME M c tiêu c a J2ME cho phép ng i l p trình vi t 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 J2ME đ đ tđ c m c tiêu này, c xây d ng b ng t ng (layer) khác đ gi u vi c th c hi n ph n c ng kh i nhà phát tri n Sau t ng c a J2ME đ c xây d ng (2) Hình 1: Các thành ph n c a J2ME Java Enterprise Edition (J2EE) Java Standard Edition (J2SE) CDC MIDP Profile level CLDC Configuration level KVM Java Virtual Machine Java Micro Edition Khái ni m n tho i di đ ng t có kích th ng đ i r ng l n Chúng bao g m nh ng thi t b c v t lý khác nhi u l n cho dù kích th c nh ng thi t b v n có kh n ng x lý c ng nh th hi n c ng khác (nh ng chi c n tho i hi n th 12,000 pixels cho đ n nh ng chi c PDA 20000 pixels) đáp ng đ c nhu c u khác c a nh ng thi t b này, b n thân ngôn ng J2ME c ng chia thành nh ng thành ph n nh h n Trang Lu n v n t t nghi p Hình 2: C u trúc c a thi t b MID MIDP Applications OEM-Specific Applications Native Applications OEM-Specific Classes Mobile Information Device Profile (MIDP) Connected Limited Device Configuration (CLDC) Native Operating System Mobile Information Device(MID) M i t ng t ng Mobile Information Device t ng tr u t cho l p trình viên nhi u giao di n l p trình ng h n cung c p ng d ng (API-Application Program Interface) thân thi n h n 2.1.1 T ng ph n c ng thi t b (Device Hardware Layer) ây thi t b di đ ng th t s v i c u hình ph n c ng c a v b nh t c đ x lý D nhiên th t khơng ph i m t ph n c a J2ME nh ng n i xu t phát Các thi t b di đ ng khác có th có b vi x lý khác v i t p mã l nh khác M c tiêu c a J2ME cung c p m t chu n cho t t c lo i thi t b di đ ng khác 2.1.2 T ng máy o Java (Java Virtual Machine Layer) Khi mã ngu n Java đ bytecode sau đ c biên d ch đ c chuy n đ i thành mã bytecode Mã 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) 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 thi t b di đ ng, đ ng th i máy o Java s ch u trách nhi m vi c cung c p tính n ng b o m t, c p phát, thu h i b nh qu n lý vi c u ph i ti n trình T ng cung c p m t s chu n hóa cho thi t b di đ ng đ ng d ng J2ME sau biên d ch có th ho t đ ng b t k thi t b di đ ng có J2ME KVM Chính nh ng h n ch v t i nguyên c a thi t b di đ ng đ nhu c u v s đ i c a KVM ây nh ng yêu c u dành cho máy o KVM: Trang ... 5: Ti n trình xây d ng m t MIDlet Tr m phát tri n T p tin JAR T p tin ngu n java * .java T p tin l p java *.class B biên d ch b ti n ki m tra java T p tin ngu n java * .java T p tin l p java *.class... p h th ng  java. lang.Object  java. lang.Class  java. lang.Runtime Trang 17 Lu n v n t t nghi p  java. lang.System  java. lang.Thread  java. lang.Runnable  java. lang.String  java. lang.StringBuffer... (interface)  java. io.DataInputStream  java. io.DataOutputStream  java. io.Reader  java. io.Writer  java. io.InputStreamReader  java. io.OutputStreamWriter  java. io.PrintStream  L p t p h p  java. util.Vector

Ngày đăng: 12/01/2022, 22:36

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

TÀI LIỆU LIÊN QUAN