1. Trang chủ
  2. » Công Nghệ Thông Tin

WML và J2ME

175 235 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 175
Dung lượng 3,62 MB

Nội dung

WML và J2ME

WML J2ME Khoa Công Nghệ Thông Tin MỤC LỤC PHẦN 1: TÌM HIỂU VỀ WML J2ME 6 CH NG 1: T NG QUAN V WMLƯƠ Ổ Ề .8 1.1 WML Cards .10 1.2 Linking Cards 12 1.3 Anchor Elements .15 1.4 Formatting Text .17 1.5 Displaying Special Characters in WML .18 1.6 nh Th i Gian (Timer element)Đị ờ .19 1.7 Image Elements .20 1.8 Table element 21 1.9 Nh ng nhi m v (Tasks )ữ ệ ụ .23 1.10 The input Elements .27 1.11 The Select Elements .31 1.12 Option Groups 35 1.13 Nh ng ph n t fielsetữ ầ ử .37 CH NG 2: WMLSCRIPTƯƠ .40 2.1 Gi i thi u WMLScriptớ ệ 40 2.1.1 WMLScript with WML .40 2.1.2 WMLScript to the Rescue .41 2.1.3 WMLScript là gì? .41 2.1.3.1 Th vi n Chu n (Standard Libraries )ư ệ ẩ .42 2.1.3.2 Bytecode 42 2.1.3.3 Functions 42 2.2 Nh ng ki u d li u , bi n chuy n đ i c a WMLScript ( WMLScript ữ ể ữ ệ ế ể ổ ủ Datatypes, Variables, and Conversions) 43 2.2.1 Datatypes and Literals .43 2.2.1.1 Strings 43 2.2.1.2 Integers 44 2.2.1.3 Booleans 44 2.2.1.4 S d u ch m đ ng (Floating-Point Numbers)ố ấ ấ ộ .44 2.2.1.5 Invalid 44 2.2.2 Variables .45 2.2.3 Quá trình chuy n đ i ki u (Type Conversion )ể ổ ể .47 2.2.3.1 Quá trình chuy n đ i thành String(Conversion to String )ể ổ .47 2.2.3.2 Quá trình chuy n đ i thành Integer (Conversion to Integer )ể ổ 48 2.2.3.3 Quá trìnhh chuy n đ i thành s d u ch m đ ng (Conversion to ể ổ ố ấ ấ ộ Floating-Point Number ) .48 2.2.3.4 Quá trình chuy n thành Boolean (Conversion to Boolean )ể 48 2.3 Nh ng toán t bi u th c WMLScript (WMLScript Operators and ữ ử ể ứ Expressions ) 48 GVHD: ThS. Phan Võ Minh Th ngắ Trang 1 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin 2.3.1 Chuy n đ i toán h ng (Operand Conversions )ể ổ ạ 48 2.3.1.1 i s integer hay d u ch m đ ng (Unary Integer or Floating Đố ố ấ ấ ộ Point ) 49 2.3.1.2 Nh phân Integer hay d u ch m đ ng (Binary Integer or Floating ị ấ ấ ộ Point) .49 2.3.1.3 Integer, Floating Point hay String .49 2.3.1.4 Toán t so sánh (Comparison Operators )ử .50 2.3.2 Ch đ nh toán t (Assignment Operators )ỉ ị ử 50 2.3.3 Toán t s h c (Arithmetic Operators)ử ố ọ .50 2.3.4 Bitwise Operators .51 2.3.5 Thao tác Shift (Shift Operators) .51 2.3.6 Toán t logic (Logical Operators )ử 52 2.3.7 T ng gi m toán t (Increment and Decrement Operators )ă ả ử .53 2.3.8 Toán t so sánh (Comparison Operators )ử 53 2.3.9 Ki u toán t (Type Operators ) ể ử .54 2.3.10 Toán t đi u ki n (The Conditional Operator)ử ề ệ .55 2.3.11 D u ph y toán t (The Comma Operator )ấ ẩ ử .55 2.3.12 Th t tr c sau quan h (Precedence and Associativity)ứ ự ướ ệ .56 2.4 Nh ng câu l nh WMLScript (WMLScript Statements)ữ ệ 57 2.4.1 Bi u th c nh là câu l nh (Expressions as Statements)ể ứ ư ệ 57 2.4.2 Nh ng câu l nh kh i (Blocks of Statements)ữ ệ ố .57 2.4.3 Nh ng đi u ki n (Conditions )ữ ề ệ .57 2.4.4 Nh ng vòng l p (Loops)ữ ặ .58 2.4.4.1 Câu l nh break (The break Statement) ệ .59 2.4.4.2 Câu l nh continue (The continue Statement)ệ 59 2.4.5 Tr v t m t hàm (Returning from a Function )ả ề ừ ộ 59 2.4.6 Nh ng câu l nh khác (Other Statements )ữ ệ 60 2.5.1 L i g i hàm (Function Calls )ờ ọ .61 2.5.2 L i g i đ n t p l nh s nguyên (Calls to Other Script Units)ờ ọ ế ậ ệ ố 61 2.5.3 L i g i WMLScript t WML (Calling WMLScript from WML )ờ ọ ừ 62 2.5.3.1 S đ a vào l i g i hàm trong thao tác <go> (Embedding the Function ự ư ờ ọ Call in a <go> Task ) 62 2.5.3.1.1 S thay th bi n (Variable substitution)ự ế ế .62 2.5.3.1.2 Khai báo tham s trong task <go> ố 62 2.5.3.2 Nh ng ví d c a l i g i WMLScript t WML (Examples of Callingữ ụ ủ ờ ọ ừ WMLScript from WML) 63 2.5.4 Th Vi n chu n (Standard Libraries )ư ệ ẩ 66 2.5.5 L i g i th vi n chu n (Calling the Standard Libraries )ờ ọ ư ệ ẩ 66 2.6 WMLScript Pragmas .66 2.6.1 Truy xu t Pragma (The access Pragma)ấ 67 2.6.2 Bi n đ i Pragmaế ổ .67 2.7 Th Vi n c a WMLSCRIPTư ệ ủ 67 2.8 Nh ng ví dữ ụ .68 GVHD: ThS. Phan Võ Minh Th ngắ Trang 2 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin 2.8.1 Máy tính tay (Calculator ) 68 2.8.1.1 WMLScript đ tính toán (WMLScript for the Calculator )ể .69 2.8.1.2 K t thúcế .70 2.9 Tóm t t thao tác WMLScript (Summary of WMLScript Operators)ắ .72 CH NG 3: T NG QUAN V J2MEƯƠ Ổ Ề .75 3.2 Ki n trúc J2MEế .75 3.3 Ch ng trình J2ME ươ .80 3.3.1 Thi t l p môi tr ng l p trình:ế ậ ườ ậ .80 3.3.2 Vi t nh ng dòng code đ u tiên:ế ữ ầ 80 3.3.3 Tìm hi u chi ti t mã ngu n:ể ế ồ 82 3.4 C ch l u tr d li u RMS trong l p trình J2ME ơ ế ư ữ ữ ệ ậ 84 3.4.1 Các khái ni m chính:ệ .84 3.4.2 Các v n đ liên quan đ nấ ề ế RMS .85 3.4.3 S d ng RMSử ụ .86 3.4.4 Chuy n đ i d li u gi a Record M ng các byteể ổ ữ ệ ữ ả 90 3.4.4.1 Byte-Array Streams .90 3.4.4.2 Data Streams .91 3.4.4.3 Ghi đ c d li u ki u c b n trên Recordọ ữ ệ ể ơ ả .92 3.4.4.4 Ghi đ c các đ i t ng trên Recordọ ố ượ 93 3.4.5 Các k thu t Filter, Compare, Listen Enumeration các Recordỹ ậ .96 3.4.5.1 Giao di n RecordFilterệ .96 3.4.5.2 Giao di n RecordComparatorệ .96 3.4.5.3 Giao di n RecordListenerệ .97 3.4.5.4 Giao di n RecordEnumerationệ .98 3.5 Tìm hi u ng d ng Mobile Set trong JBuilderể ứ ụ 99 3.5.1 Môi Tr ng phát tri n Mobile trong JBuilderườ ể 99 3.5.2 Tri n khai ng d ng Mobileể ứ ụ 99 3.5.2.1 Cài đ t JDK:ặ .99 3.5.2.2 Configure JDKs dialog box .103 3.5.2.3 Project Properties dialog box .104 3.5.2.4 Thi t k MIDP UI ế ế 104 3.5.2.5 Biên d ch, ch y g l i cho ng d ng MIDPị ạ ỡ ỗ ứ ụ 105 3.5.2.6 S d ng Screen Manager:ử ụ 105 3.5.2.7 Nh ng file class obfuscating MIDletữ .106 3.5.2.8 T o qu n lý MIDP projectsạ ả 110 3.5.2.9 Xây d ng ng d ng MIDPự ứ ụ .116 3.5.2.10 T o m t MIDP giao di n ng i dùngạ ộ ệ ườ .119 3.5.2.11 Over the air (OTA) Provisioning 130 3.6 J2ME Wireless Toolkit c a Sunủ .130 3.6.1 J2ME Wireless Toolkit: Ch y KToolbarạ .130 3.6.2 T o xây d ng Projectạ ự .130 3.6.3 Tu ch n cung c p link đ n t p tin *.JAD:ỳ ọ ấ ế ậ .132 PHẦN 2: ỨNG DỤNG 134 GVHD: ThS. Phan Võ Minh Th ngắ Trang 3 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin 1. XÂY D NG WEB SITE DU L CH Ự Ị .134 1.1 Kh o sát hi n tr ngả ệ ạ 134 1.1.2 u đi m c a qu n lý TourƯ ể ủ ả 134 1.1.3 M t s nh c đi m g p ph i trong mô hình qu n lý Tourộ ố ượ ể ặ ả ả .134 1.2 N i dung trang webộ .135 1.2.1 Tra c u thông tin:ứ .135 1.3.1 User- Khách hàng 135 1.3.2 Admin - Nhân Viên c a công ty Du Lichủ 135 1.4.1 Mô t :ả 136 1.4.2.1.2 Member: .136 1.4.3 L c Activity Diagramượ Đồ .144 1.4.3.1 ng kýĐă .144 .149 150 1.4.3.9 Qu n Lý Order Tour :ả 150 1.4.3.10 Qu n Lý Tour:ả 151 1.4.4 L c Sequence diagram:ượ Đồ 153 1.4.4.1 ng Ký:Đă 153 1.4.4.2 ng Nh p:Đă ậ .153 1.4.4.3 Qu n Lý Thông Tin Cá Nhân:ả 154 1.4.4.4 Xem Catalog: .154 1.4.4.5 So Sánh Tour: 155 .155 155 1.4.4.6 Tìm Ki m Tour:ế .156 1.4.4.7 Xem Thông Tin Chi Ti t Tour:ế .156 1.4.4.8 Ch n Tour:ọ .157 1.4.4.9 ng Ký Tour:Đă 157 1.4.4.10 t Tour : Đặ .158 1.4.4.11 ng Ký T T Ch c Tour:Đă ự ổ ứ .158 1.4.4.12 Qu n Lý Tour:ả 159 1.4.4.13 Qu n Lý Order Tour: ả 159 159 1.4.4.14 Qu n Lý User:ả .160 1.4.7 M t S Màn Hình Chínhộ ố .167 2. NG D NG GAMESỨ Ụ .170 2.1 Mô hình UML 170 2.2 Ch y th b ng trình gi l p MIDletạ ử ằ ả ậ 170 2.3 Các phím ch c n ngứ ă .171 2.4 Các lu t ch iậ ơ .171 2.5 C u trúc menuấ .172 T NG K T:Ổ Ế 172 TÀI LIỆU THAM KHẢO 174 GVHD: ThS. Phan Võ Minh Th ngắ Trang 4 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin GVHD: ThS. Phan Võ Minh Th ngắ Trang 5 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin PHẦN 1: TÌM HIỂU VỀ WML J2ME CHƯƠNG MỞ ĐẦU: - Hiện nay WML là một trong những ứng dụng “nóng bỏng” nhất của XML là ngôn ngữ định dạng mạng không dây, được ứng dụng trong việc tạo các trang tài liệu hiển thị trên các thiết bị nhỏ gọn như điện thoại di động, máy tính Palm cầm tay…. WML sử dụng kết hợp với giao thức WAP(Wireless Application Protocol ): kết nối chuyển tải dữ liệu gọn nhẹ. Ứng dụng cho các thiết bị nhỏ gọn, bị hạn chế về khả năng phần cứng hoặc không gian hiển thị. Để kiểm tra tài liệu WML valid thì sử dụng phiên bản DTD của WML 1.1 hiện nay là: http://www.wapforum.org/DTD/wml_1.1.xml WML hỗ trợ cho các trang Web, có thể thay thế cho HTML. Tuy nhiên, trong các phiên bản trình duyệt hiện tại Internet Explorer 5.5 Netscape Navigator 6 vẫn chưa hỗ trợ hiển thị trên máy điện thoại di động. Ví dụ như Klondike là một trình duyệt có khả năng này. Chính vì vậy, WML được sử dụng để tạo ra các trang có khả năng hiển thị trên WAP browser. Do đó, Công nghệ WAP đang là công nghệ chuẩn chủ đạo cho các ứng dụng trên các thiết bị không dây như điện thoại di động. Nếu là người từng phát triển các ứng dụng web (web application), khi đến với WAP WML, chúng ta sẽ gặp nhiều sự tương tự cảm thấy mọi thứ đều có vẻ quen quen. Chẳng hạn, chúng ta sẽ nhanh chóng nắm vững ngôn ngữ WMLScript, ngôn ngữ kịch bản (script language) cho trang WAP để ứng phó tức thời ở phía khách (chạy trên ĐTDĐ), có vai trò từa tựa như JavaScript hay VBScript cho trang web. Tuy nhiên, điều mà chúng ta quan tâm nhất chắc chắn là khả năng sản sinh trang WAP một cách tự động theo yêu cầu người xem. Với ứng dụng web, chúng ta phải viết ASP, JSP hoặc PHP để chạy trên máy chủ web. Để xây dựng một ứng dụng WAP (WAP application), chúng ta cũng làm giông giống như vậy. WAP sử dụng WML bao gồm HDML (Handheld Device Markup Language) phát triển bởi Phone.com. WML cũng chỉ ra được nguồn gốc của nó từ ngôn ngữ đánh dấu XML (Extensible Markup Language) để đưa ra các phần tử thẻ đơn giản để định dạng các trang thông tin hiển thị nhỏ gọn trên màn hình của điện thọai di động hay các máy Palm cầm tay. . Ngôn ngữ đánh dấu là cách thêm các thông tin tới các thành phần. Ngôn ngữ đánh dấu được biết đến nhiều nhất là ngôn ngữ đánh dấu siêu văn bản HTML. Không giống như HTML, WML được xem như là ngôn ngữ Meta (Meta Language). Về cơ bản điều này có nghĩa rằng WML cho phép thiết kế ngôn ngữ của đánh dấu của chính mình. Điện thoại di động (ĐTDĐ) ngày càng phổ biến, thậm chí với nhiều người nó còn đóng vai trò thiết yếu trong cuộc sống hàng ngày. Cùng với sự gia tăng số lượng, tính năng của ĐTDĐ cũng ngày một nâng cao. Hàng loạt các tính năng cao cấp được giới thiệu như chụp hình số, nghe nhạc đặc biệt nhất là có thể nạp chạy chương trình giống như máy tính. ĐTDĐ giờ đây gần như là chiếc máy tính thu nhỏ, cho phép bạn duyệt web, đọc báo, tiểu thuyết, tra từ điển, làm việc với bảng tính nhất là mang thế giới giải trí đến bên cạnh như bản nhạc, games. Do Trang 6 WML J2ME Khoa Công Nghệ Thông Tin đó, một trong những nền tảng phát triển ứng dụng trên ĐTDĐ phổ biến nhất hiện nay: J2ME (Java 2 Platform, Micro Edition). Tuy nhiên, vấn đề trở nên khó khăn hơn đối với các loại ĐTDĐ phổ biến trên thị trường như Nokia series 40 (6100, 6800, 7210, 7250, ) hay Siemens SL45, SL55, M55, Samsung X100, V200 . Các loại ĐTDĐ này mặc dù có hỗ trợ Java (MIDP 1.0, CLDC 1.0) nhưng dung lượng lưu trữ bộ nhớ thực thi rất giới hạn (khoảng 100-300KB heap size). Một vấn đề khác là việc giới hạn kích thước tối đa của ứng dụng mà máy có thể tải về. Các ứng dụng Java trên ĐTDĐ (còn được gọi là MIDlet) được nhóm lại với nhau để tạo thành file JAR (Java archive) rồi được triển khai cài đặt trên ĐTDĐ bằng cách dùng cáp nối với máy tính hoặc thông qua mạng không dây theo phương thức OTA (Over The Air), phổ biến ở Việt nam hiện nay là thông qua mạng GPRS. Thường giới hạn dung lượng của file JAR tải về dưới 64KB, một số máy i- mode của hãng NTT DoCoMo chỉ cho phép tải file JAR dưới 30KB, thậm chí có máy dưới 10KB. Điều này gây rất nhiều khó khăn cho người lập trình trong việc thiết kế dữ liệu viết chương trình.Bằng công nghệ J2ME dựa vào ngôn ngữ Java là một trong các công nghệ tiên phong xâm nhập vào lĩnh vực ứng dụng cho thiết bị di động.Nếu chúng ta có một chiếc ĐTDĐ hỗ trợ Java, chúng ta có thể chơi game, chạy ứng dụng viết bằng Java ở bất kỳ đâu bất kỳ lúc nào. Đặc tả MIDP được xây dựng để phát triển ứng dụng cho điện thoại di động (ĐTDĐ) có thể tương thích với điện thoại của các hãng sản xuất khác nhau. Do đó, chúng ta sẽ tìm hiểu WML, J2ME, một số kỹ thuật để áp dụng trong các chương sau. GVHD: ThS. Phan Võ Minh Th ngắ Trang 7 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin CHƯƠNG 1 : TỔNG QUAN VỀ WML CHƯƠNG 1: TỔNG QUAN VỀ WML Thế nào là WML? GVHD: ThS. Phan Võ Minh Th ngắ Trang 8 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin • WML là ngôn ngữ đánh dấu được dùng cho vịêc tạo ra những trang được trình bày bởi WAP browser. Những trang WML được gọi là DECKS. DECK được xây dựng bởi việc khởi tạo của CARDS • WML đưa ra tập các phần tử thẻ đơn giản để định dạng các trang thông tin hiển thị nhỏ gọn trên màn hình của điện thoại di động hay các máy Palm cầm tay. • WML dựa trên nền tảng Extensible Markup Language (XML) vì thế nhất thiết là phải hợp khuôn dạng tuân theo chuẩn Document Type Definition (DTD). • WML pages có phần mở rộng là *.WML, cũng giống như HTML page có phần mở rộng là *.HTML Định dạng cho một WML cơ bản: Các đoạn code của một WML đều khởi đầu kết thúc bởi <wml> kết thúc bằng </wml> chú ý rằng với WML thì đòi hỏi phân biệt cả về chữ hoa chữ thường nếu không thì WAP sẽ không định dạng được. Các tags phổ thông thường sử dụng: <a> <access> <anchor> <b> <big> <br> <card> <do> <em> <fieldset> <go> <head> <i> <img> <input> <meta> <noop> <onevent> <optgroup> <option> <p> <postfield> <prev> <refresh> <select> <setvar> <small> <strong> <table> <td> <template> <timer> <tr> <u> <wml> Để bắt đầu với một trang WML bạn cần mở đầu với : <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> Vì WML là một ứng dụng của XML 1.0 nên bạn cần phải khai báo hai dòng trên. GVHD: ThS. Phan Võ Minh Th ngắ Trang 9 SVTH: H ng Trang, C m Vânươ ẩ WML J2ME Khoa Công Nghệ Thông Tin 1.1 WML Cards Cũng như HTML trang WML phải bắt đầu bằng <wml> khi kết thúc cũng phải bằng <wml> sau đó là khởi tạo các tags <card> </card>. Các card là nơi chứa các đoạn code dùng để trình bày, lưu trữ, truyền dữ liệu liên kết từ những card này qua những card khác bằng đường link. Mỗi trang hiển thị trên thiết bị gọi là một card .Mỗi card có một "id" "title", id dùng để liên kết, title sẽ được hiển thị lên trên màn hình của người sử dụng. Tài liệu WML có thể bao gồm card đơn hoặc card phức. Ví dụ sau định nghĩa một tài liệu WML căn bản với card đơn: first.wml <?xml version="1.0" encoding="iso-8859-1" ?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="index" title="Welcome"> <p> This is my first WML document. </p> </card> </wml> sẽ được hiển thị như sau: This is my first WML document. Deck / Card Elements: Start tag Purpose <access> Định nghĩa thông tin về việc quản lý tiến trình của deck <card> Định nghĩa một card bên trong một deck <head> Chứa đựng thông tin về document <meta> Định nghĩa thông tin meta về document <template> Định nghĩa một code ví dụ cho tất cả các cards bên trong một deck <wml> Định nghĩa một WML deck <!--> Dùng cho ghi chú GVHD: ThS. Phan Võ Minh Th ngắ Trang 10 SVTH: H ng Trang, C m Vânươ ẩ

Ngày đăng: 07/12/2013, 13:18

Xem thêm

w