Xây dựng bản đồ thái nguyên trên điện thoại di động có hỗ trợ java

80 486 0
Xây dựng bản đồ thái nguyên trên điện thoại di động có hỗ trợ java

Đ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

MỤC LỤC LỜI NÓI ĐẦU DANH SÁCH HÌNH VẼ VÀ BẢNG BIỂU Chương TÌM HIỂU VỀ J2ME 1.1 Giới thiệu J2ME 1.1.1 Lịch sử 1.1.2 Lý chọn J2ME 1.1.3 Kiến trúc J2M 1.1.4 Sự khác ngôn ngữ Java CLDC với Java thông thường 1.1.5 Giới thiệu MIDP 1.1.6 Môi trường phát triển J2ME 10 1.2 Các thành phần giao diện mức cao ứng dụng MIDP 11 1.2.1 Đối tượng Display, Displayable Screens 12 1.2.2 Thành phần Form Items 13 1.2.3 Thành phần List, TextBox, Alert Ticker 18 1.3 Các thành phần giao diện mức thấp ứng dụng MIDP 20 1.3.1 Các hàm API mức thấp 20 1.3.2 Lớp Canvas 21 1.3.3 Lớp Graphics 26 1.3.4 Các hàm API dùng để lập trình game 32 1.4 Xử lý kiện 33 1.4.1 Đối tượng Command 33 1.5 Record Management System 34 1.5.1 Persistent Storage Through the Record Store 34 1.5.2 Các vấn đề liên quan đến RMS 36 1.5.3 Các hàm API RMS 37 1.5.4 Duyệt Record với RecordEnumeration 38 1.5.5 Sắp xếp record với interface RecordComparator 40 1.5.6 Searching with RecordFilter 41 Chương PHÂN TÍCH, THIẾT KẾ ỨNG DỤNG 43 2.1 Khảo sát trạng .43 2.2 Phân tích toán 44 2.2.1 Mô tả hoạt động 44 2.2.2 Phân tích xác định yêu cầu 44 2.3 Thiết kế ứng dụng 45 2.3.1 Lược đồ sử dụng 45 2.3.2 Đặc tả Ucase 46 2.3.3 Các biểu đồ hoạt động 51 2.3.4 Thiết kế lớp 55 2.4 Sản phẩm .65 KẾT LUẬN 68 CÁC THUẬT NGỮ ĐƯỢC SỬ DỤNG 70 TÀI LIỆU THAM KHẢO 72 LỜI NÓI ĐẦU Có thể nói đề tài đồ giao thông không Trong năm qua, có nhiều người nghiên cứu đề tài này, sản phẩm ứng dụng thực tế có nhiều đánh giá tốt Tuy nhiên ứng dụng đồ giao thông điện thoại di động lại chưa có nhiều lắm, chương trình ứng dụng chủ yếu xây dựng đồ cho thành phố lớn Hà Nội, thành phố Hồ Chí Minh Còn ứng dụng đồ giao thông thành phố Thái Nguyên điện thoại di động gần chưa có Trong thời điểm nay, giới Việt Nam, thị trường cho điện thoại di động trở nên sôi động hết Đó thu nhập người dân ngày nâng cao với nhu cầu trao đổi thông tin ngày tăng khiến cho nhu cầu sử dụng phương tiện thông tin liên lạc tăng theo, số lượng người dân sử dụng điện thoại di động tăng nhiều Các nhà sản xuất điện thoại di động nắm bắt nhu cầu người dân, đặc biệt giới trẻ ưa chuộng sản phẩm công nghệ cao, yêu cầu cạnh tranh hãng sản xuất với nên liên tục tung nhiều sản phẩm với nhiều tính năng, cấu hình ngày nâng cao, vài năm trở lại xuất dòng điện thoại xem máy tính xách tay bỏ túi, giá thành mà nhà sản xuất đưa ngày giảm Chiếc điện thoại di động ngày hàng xa xỉ ngày có nhiều người sở hữu phương tiện trao đổi thông tin hữu ích Cùng với phát triển thị trường điện thoại di động phát triển mạnh mẽ xu hướng lập trình phần mềm ứng dụng cho thiết bị Phần mềm cho điện thoại di động đa dạng mà chủ yếu trò chơi, chương trình tiện ích đo lường, từ điển, nghe nhạc, xem phim Với lý em chọn đề tài “Xây dựng đồ Thái Nguyên điện thoại di động có hỗ trợ Java” với mục tiêu xây dựng đồ thành phố Thái Nguyên ngôn ngữ lập trình Java, thực thi nhiều điện thoại di động khác Nhờ vào phần mềm người sử dụng có thể: xem đồ, tra cứu tên đường, tên địa điểm, công trình công cộng bệnh viện, trường học, chợ , đặc biệt giúp người sử dụng xác định lộ trình ngắn để từ địa điểm tới địa điểm khác Đây nói ứng dụng hữu ích, thực tế tiện dụng nhiều người, đặc biệt bạn trẻ, người bận rộn việc lại Nói đến lập trình cho điện thoại di động, tất dùng điện thoại di động, lập trình viên, thấy trở ngại khả xử lý vi xử lý điện thoại yếu dung lượng nhớ nhỏ Tuy nhiên, với phát triển khoa học công nghệ nay, hãng sản xuất điện thoại di động tung thị trường dòng điện thoại có thẻ nhớ, nâng cấp nhớ điện thoại lớn 1GB Song trở ngại gây khó khăn không nhỏ đến việc tổ chức liệu cho phần mềm, thông tin đồ giao thông lớn, việc lưu trữ truy xuất chúng phức tạp Thêm vào đó, thư viện hàm ngôn ngữ Java hỗ trợ cho điện thoại bị hạn chế, lược bỏ Chính hạn chế trên, đề tài em không sử dụng việc hiển thị đồ cách vẽ thành phần đồ đường, điểm mà em sử dụng ảnh tĩnh quét để làm phần hiển thị đồ Các liệu đồ xây dựng đặt vào file Nội dung báo cáo chia thành chương sau: Chương 1: Tìm hiểu J2ME Chương nêu kiến thức tổng quan J2ME phương thức xây dựng lập trình J2ME Chương 2: Phân tích, thiết kế toán Phân tích yêu cầu nghiệp vụ, đặc tả chi tiết ứng dụng mức phân tích, thiết kế Cuối chương mô tả sản phẩm xây dựng Kết luận: Đánh giá kết đạt được, trình bày ưu điểm khuyết điểm hướng phát triển mở rộng cho phần mềm Các thuật ngữ sử dụng: Liệt kê giải thích thuật ngữ sử dụng Em xin chân thành cảm ơn thầy, cô khoa Công nghệ thông tin Trường đại học Thái Nguyên tận tình dạy bảo, truyền đạt kinh nghiệm quý báu cho em suốt thời gian học tập trường Em xin kính chúc thầy cô luôn mạnh khỏe ngày thành công Đặc biệt em xin bày tỏ lòng biết ơn sâu sắc đến cô Phạm Thị Thương, người tận tình hướng dẫn em suốt thời gian thực đề tài Mặc dù em cố gắng nhiều trình thực hiện, chắn đề tài nhiều thiếu sót Em mong nhận nhiều góp ý phê bình thầy cô, bạn Một lần nữa, em xin chân thành cảm ơn! Thái Nguyên, tháng năm 2008 DANH SÁCH HÌNH VẼ VÀ BẢNG BIỂU DANH SÁCH HÌNH VẼ Tên Mô tả Trang hình 1.1 Các phiên khác Java lĩnh vực ứng dụng 1.2 Kiến trúc tổng quát J2ME 1.3 Giao diện chương trình Wireless Toolkit 2.5.2 11 1.4 Minh họa vòng đời MIDlet 12 1.5 Mối quan hệ Display, Displayable, Screen 13 1.6 Cây phân cấp lớp hiển thị mức cao 19 1.7 Minh họa dạng List 19 1.8 Hệ tọa độ hình điện thoại di động 21 1.9 Vị trí điểm neo drawString() 29 1.10 Mô tả kết hàm drawString() 30 1.11 Vị trí điểm neo drawImage() 32 1.12 Mô tả truy cập RecordStore MIDlet 36 2.1 Lược đồ sử dụng 45 2.2 Sequence Diagram SeachStreets 52 2.3 Collaboration Diagram SearchStreets 53 2.4 Sequence Diagram SeachPlaces 54 2.5 Collaboration Diagram SearchPlaces 55 2.6 Thiết kế lớp MapMIDlet 57 2.7 Thiết kế lớp MapCanvas 58 2.8 Thiết kế lớp IndexList 61 2.9 Thiết kế lớp Index 61 2.10 Thiết kế lớp GroupList 62 2.11 Thiết kế lớp ShortestForm 63 2.12 Thiết kế lớp XMLAttribute 63 2.13 Thiết kế lớp SettingsForm 64 2.14 Sơ đồ lớp mức thiết kế (các lớp biên) 65 2.15 Giao diện ban đầu khởi chạy ứng dụng 66 2.16 Giao diện tìm kiếm tên địa điểm 66 2.17 Kết tìm kiếm địa điểm 67 2.18 Form thiết lập tùy chọn riêng cho người dùng 67 DANH SÁCH BẢNG BIỂU Tên bảng Mô tả Trang 1-1 Phân loại CDC CLDC 1-2 Danh sách số hàm Gauge 15 1-3 Mô tả lưu trữ RMS 35 1-4 Các hàm API RMS 37-38 1-5 Các phương thức RecordEnumeration 39-40 2-0 Danh sách yêu cầu nghiệp vụ 2-1 Danh sách số lớp 2-2 Danh sách thuộc tính lớp MapMIDlet 56 2-3 Danh sách phương thức lớp MapMIDlet 57 2-4 Danh sách thuộc tính lớp MapCanvas 59 2-5 Danh sách phương thức lớp MapCanvas 60 2-6 Danh sách thuộc tính lớp IndexList 61 2-7 Danh sách phương thức lớp IndexList 61 2-8 Danh sách thuộc tính lớp Index 62 2-9 Danh sách phương thức lớp Index 62 2-10 Danh sách thuộc tính lớp GroupList 62 2-11 Danh sách phương thức lớp GroupList 62 2-12 Danh sách thuộc tính lớp ShortestForm 63 2-13 Danh sách phương thức lớp ShortestForm 63 2-14 Danh sách thuộc tính lớp XMLAttribute 64 2-15 Danh sách phương thức lớp XMLAttribute 64 45 55-56 2-16 Danh sách thuộc tính lớp SettingsForm 64 2-17 Danh sách phương thức lớp SettingsForm 65 Chương TÌM HIỂU VỀ J2ME 1.1 Giới thiệu J2ME 1.1.1 Lịch sử Khi Sun Microsystems nhận việc tạo tảng chung để chạy tất môi trường điều thực được, công ty định chia công nghệ Java thành phiên bản, phiên ứng dụng lĩnh vực riêng biệt, là:  Java Platform, Enterprise Edition (J2EETM) phục vụ cho nhu cầu thương mại phục vụ khách hàng, nhu cầu phân phối, vấn đề nhân Phiên chạy máy server  Java Platform, Standard Edition (J2SETM) cung cấp cho thị trường máy tính để bàn máy tính phục vụ văn phòng hay gia đình  Java Platform, Microedition (J2METM) chạy máy với tài nguyên hạn chế Hình vẽ minh họa phiên có Java lĩnh vực ứng dụng chúng Hình 1.1 Các phiên khác Java lĩnh vực ứng dụng J2ME phát triển từ kiến trúc Java Card, Embeded Java Personal Java phiên Java 1.1 Đến đời Java Sun định thay Personal Java gọi với tên Java Micro Edition, viết tắt J2ME Đúng với tên gọi, J2ME tảng cho thiết bị có tính chất nhỏ, gọn 1.1.2 Lý chọn J2ME a) Java ban đầu thiết kế dành cho máy tính với tài nguyên nhớ hạn chế b) Thị trường J2ME mở rộng cho nhiều chủng loại thiết bị như:  Các loại thẻ cá nhân 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 ti vi, thiết bị giải trí gia dụng, 1.1.3 Kiến trúc J2M Kiến trúc J2ME thiết kế để hỗ trợ thiết bị nhúng khác thị trường Để làm thế, môi trường J2ME cung cấp nhiều loại máy ảo Java (Java Virtual Machine) khác Với thiết bị cấp thấp, tài nguyên hạn chế, môi trường J2ME cung cấp cấu hình máy ảo nhỏ thư viện Java gồm gói lớp cần thiết cho thiết bị Hình 1.2: Kiến trúc tổng quát J2ME  Lớp MapCanvas MapCanvas browser : MapMIDlet selectionIndex : Index selection : Location screenWidth, screenHeight : int blinkTask : BlinkTask repeatTask : RepeatTask cacheSize : int currSelection : int cx, cy : int focusWidth, focusHeight : int focusX, focusY : int focusX0, focusY0 : int font : Font fontHeight : int imageCache : Image[] imageCachePtr : int imageSize : int imageUrl : Image scale : int zoom : int MapCanvas() paint() buildImageUrl() check() cursorInCenter() findObject() getImage() keyAction() keyPressed() keyReleased() nextPoint() pointerDragged() pointerPressed() pointerReleased() pointInfo() setFocus() setPositions() startBlinking() stopBlinking() zoomIn() zoomOut() commandAction() Hình 2.7: Thiết kế lớp MapCanvas STT Thuộc tính Ý nghĩa browser 58 selectionIndex Đối tượng lựa chọn kiểu đối tượng selection Mảng vị trí screenWidth Chiều rộng hình hiển thị, tính pixel screenHeight Chiều cao hình hiển thị, tính pixel blinkTask Lớp dùng cho việc hiển thị hiệu ứng nhấp nháy trỏ hiển thị vị trí repeatTask Lớp dùng cho việc xử lý ấn giữ phím cacheSize Vùng nhớ cache 10 currSelection Giá trị trỏ chọn đối tượng đồ 12 cx, cy Tọa độ tâm hình hiển thị 13 focusWidth, Chiều rộng, chiều cao tiêu điểm hiển thị vùng focusHeigh chọn đồ 14 forcusX, forcusY Tọa độ tiêu điểm 15 forcusX0, forcusY0 Tọa độ bắt đầu tiêu điểm 16 font Đối tượng hiển thị tên vị trí lựa chọn đồ 17 fontHeigh Chiều cao font chữ hiển thị 18 imageCache Tập ảnh chờ xử lý 19 imageCachePtr Số lượng ảnh đưa vào imageCache 20 imageSize Kích thước ảnh 21 imageUrl Địa ảnh 22 scale Tỉ lệ phóng to, thu nhỏ đồ 23 zoom Giá trị phóng to đồ lớn Bảng 2-4: Danh sách thuộc tính lớp MapCanvas STT Phương thức Ý nghĩa MapCanvas Hàm khởi tạo MapCanvas paint Hàm vẽ đồ, vẽ vị trí lựa chọn đồ buildImageUrl Xây dựng địa ảnh check Cập nhật hệ thống thông số đồ vẽ lại đồ sau lần có thay đổi 59 currsorInCenter Thiết lập vị trí trỏ tâm hình hiển thị findObject Cờ cho biết đối tượng có chọn hay không getImage Trả ảnh có vị trí x, y tập ảnh đồ keyAction Phương thức xử lý phím nhấn keyPressed Phương thức xử lý kiện nhấn phím 10 keyReleased Phương thức xử lý kiện buông phím 11 nextPoint Cờ cho biết có chuyển sang đối tượng hay không 12 pointerDragged Phương thức xử lý kiện kéo trỏ 13 pointerPressed Phương thức xử lý kiện nhấn trỏ 14 pointerReleased Phương thức xử lý kiện buông trỏ 15 pointInfor Cờ cho biết có hiển thị thông tin đối tượng chọn hay không 16 setFocus Thiết lập tiêu điểm 17 setPosition Vị trí hiển thị đối tượng chọn đồ 18 startBlinking Khởi tạo hiệu ứng nhấp nháy 19 stopBlinking Kết thúc hiệu ứng nhấp nháy 20 zoomInt Phương thức xử lý thu nhỏ đồ 21 zoomOut Phương thức xử lý phóng to đồ 23 commandAction Phương thức xử lý kiện Bảng 2-5: Danh sách phương thức lớp MapCanvas 60  Lớp IndexList: IndexList canvas : MapCanvas index : Index parent : Displayable prefix : String IndexList(MapCanvas canvas, Index index, String prefix, Displayable parent) commandAction() Hình 2.8: Thiết kế lớp IndexList STT Thuộc tính Ý nghĩa canvas Đối tượng hiển thị đồ index Danh sách đối tượng thẻ file index.xml parent Đối tượng hiển thị danh sách vị trí prefix Chuỗi hỗ trợ việc tìm kiếm Bảng 2-6: Danh sách thuộc tính lớp IndexList STT Ý nghĩa Phương thức IndexList Phương thức khởi tạo IndexList commandAction Phương thức xử lý kiện Bảng 2-7: Danh sách phương thức lớp IndexList  Lớp Index: Index objects : Location[] type : int Index() Index(XMLElement elem) Hình 2.9: Thiết kế lớp Index 61 STT Thuộc tính Ý nghĩa Mảng đối tượng thẻ nằm thẻ objects tương ứng Kiểu đối tượng nằm thẻ type Bảng 2-8: Danh sách thuộc tính lớp Index STT Ý nghĩa Phương thức Phương thức khởi tạo Index Index Index(XMLElement) Bảng 2-9: Danh sách phương thức lớp Index  Lớp GroupList: GroupList canvas : MapCanvas GroupList(MapCanvas canvas) commandAction() Hình 2.10: Thiết kế lớp GroupList STT Thuộc tính Ý nghĩa Đối tượng hiển thị đồ canvas Bảng 2-10: Danh sách thuộc tính lớp GroupList STT Phương thức Ý nghĩa GroupList Phương thức khởi tạo GroupList commandAction Phương thức xử lý kiện Bảng 2-11: Danh sách phương thức lớp GroupList 62  Lớp ShostestForm ShortestForm canvas : MapCanvas cgText1 : TextField cgText2 : TextField ShortestForm(MapCanvas canvas) commandAction() Hình 2.11: Thiết kế lớp ShostestForm STT Thuộc tính Ý nghĩa canvas Đối tượng hiển thị đồ cgText1 Vị trí bắt đầu cgText2 Vị trí đến Bảng 2-12: Danh sách thuộc tính lớp ShortestForm STT Ý nghĩa Phương thức ShortestForm Phương thức khởi tạo ShortestForm commandAction Phương thức xử lý kiện Bảng 2-13: Danh sách phương thức lớp ShorstestForm  Lớp XMLAttribute: Xác định thuộc tính đối tượng XMLAttribute name : String value : String XMLAttribute(String name, String value) getIntValue() : int getName() : String getValue() : String Hình 2.12: Thiết kế lớp XMLAttribute 63 STT Thuộc tính Ý nghĩa name Tên thuộc tính value Giá trị thuộc tính Bảng 2-14: Danh sách thuộc tính lớp XMLAttribute STT Ý nghĩa Phương thức XMLAttribute Phương thức khởi tạo XMLAttribute getValue Phương thức lấy giá trị thuộc tính kiểu String Phương thức chuyển giá trị lấy kiểu getInValue String sang kiểu Integer Phương thức lấy tên thuộc tính getName Bảng 2-15: Danh sách phương thức lớp XMLAttribute  Lớp SettingsForm SettingsForm canvas : MapCanvas cacheSize : Gauge choice : ChoiceGroup language : ChoiceGroup search : ChoiceGroup selected : Boolean searchmark : Boolean SettingsForm() commandAction() Hình 2-13: Thiết kế lớp SettingsForm STT Thuộc tính Ý nghĩa canvas Đối tượng hiển thị cacheSize Vùng nhớ Cache language Ngôn ngữ sử dụng choice Các tùy chọn hiển thị đồ search Lựa chọn tìm kiếm 64 selected Cờ cho biết có chọn hay không searchmark Cờ đánh dấu lựa chọn Bảng 2-16: Danh sách thuộc tính SettingsForm STT Phương thức Ý nghĩa SettingsForm Khởi tạo SettingsForm commandAction Phương thức xử lý kiện Bảng 2-17: Danh sách phương thức SettingsForm  Sơ đồ lớp mức thiết kế (các lớp biên) Location Index Locale SearchForm MapMIDlet MapCanvas IndexList HelpForm ShortestForm SettingsForm Hình 2.14: Sơ đồ lớp mức thiết kế 2.4 Sản phẩm Dưới hình ảnh thể số chức đề tài mà em xây dựng thời gian qua, chương trình chạy trình giả lập chuẩn Sun Microsystems 65 Hình 2-15 : Giao diện ban đầu khởi chạy ứng dụng Giả sử người sử dụng muốn tìm vị trí khách sạn Dạ Hương, vào Menu  Tim kiem  Tìm tên địa điểm , hình đưa danh sách đây: Hình 2-16 : Giao diện tìm tên địa điểm Sau chọn Nhà nghỉ - Khách sạn  Khách sạn Dạ Hương, kết việc tìm kiếm sau: 66 Hình 2-17: Kết việc tìm kiếm địa điểm Tương tự người sử dụng tìm kiếm địa điểm khác tìm kiếm tên đường Hình 2-18 : Form thiết lập tùy chọn riêng cho người dùng 67 KẾT LUẬN Trên báo cáo sơ lược trình xây dựng đề tài em, qua em tự rút số điểm sau: Ưu điểm: Nhìn chung, chương trình cài đặt hoàn thành yêu cầu đặt Phần mềm hỗ trợ cho người sử dụng xem đồ, tra cứu tên đường, tên địa điểm công cộng giúp người dùng xác định lộ trình ngắn hai điểm Hiệu chương trình tương đối khá, việc đọc liệu, hiển thị đồ, tốc độ tìm đường chấp nhận Ngoài ra, việc bố trí phím chức với giao diện hỗ trợ hai ngôn ngữ tiếng Anh tiếng Việt giúp cho người dùng dễ dàng làm quen với chương trình Khuyết điểm: Do trình thực đề tài có cá nhân thực tất giai đoạn xây dựng ứng dung, thân cá nhân chưa có kinh nghiệm lập trình, với hạn chế thời gian thực đề tài kết hợp với hạn chế thiết bị nên chương trình nhiều điểm thiếu sót, hạn chế cần khắc phục như:  Bản đồ thể đồ tĩnh, quét từ ảnh giấy vào, tốc độ xử lý kiện chưa đạt mức tối ưu Một số chức đồ chưa thực triệt để như: chức phóng to đồ dừng lại việc hiển thị ảnh cỡ lớn hơn, người sử dụng phóng to lần  Cơ sở liệu đồ thiếu sót nhiều Do sở liệu đồ lưu file index.xml nên vấn đề truy xuất liệu phức tạp, thông qua nhiều khâu Đặc biệt người sử dụng tự cập nhật đường hay địa điểm trình sử dụng Các liệu công trình công cộng chưa đầy đủ  Người thực điều kiện chạy thử nhiều dòng điện thoại nhiều hãng khác nên đưa vào thực tế chương trình có số lỗi tiềm ẩn (mỗi hãng sản xuất có cách cài đặt chuẩn J2ME khác nhau) 68  Do sử dụng đồ hình ảnh quét từ đồ giấy nên khiến cho kích thước chương trình lớn nên không dễ áp dụng chương trình với máy điện thoại di động có cấu hình thấp Hướng phát triển mở rộng: Để chương trình hoàn thiện nữa, ta mở rộng vấn đề sau:  Xây dựng đồ cách vẽ trực tiếp trực tiếp đối tượng đồ, điều có nghĩa ta gọi đến chức hiển thị đồ, chương trình thực vẽ đường đi, địa điểm, vùng phường xã với sở liệu xây dựng ban đâu mà hiển thị đồ dạng ảnh quét Việc tạo việc tìm kiếm đồ có độ xác cao hơn, sở liệu xây dựng hoàn chỉnh  Bổ sung sở liệu hoàn chỉnh cách đưa thêm chức cập nhật sở liệu người dùng gõ vào địa danh sách hiển thị, nhiên việc cập nhật phải kết hợp với thiết bị định vị, đồ xây dựng phải đồ số  Có thể kết hợp với trang WAP để nhận thông tin điểm kẹt xe, đoạn đường sửa chữa, nâng cấp đoạn đường gây nguy hiểm cho người tham gia giao thông vào thấp điểm đánh dấu đồ, thông báo cho người sử dụng biết đưa gợi ý tuyến đường để tránh điểm 69 CÁC THUẬT NGỮ ĐƯỢC SỬ DỤNG command: đại diện cho hành động người dùng configuration: đặc tả Java bao gồm tập đặc tính máy ảo Java API cho họ thiết bị Connected Device Configuration (CDC): đặc tả J2ME hỗ trợ cho thiết bị di động Connected Limited Device Configuration (CLDC): đặc tả J2ME hỗ trợ cho thiết bị di động cá nhân với tài nguyên event listener: lớp Java định nghĩa MIDP, lớp sử dụng để lắng nghe kiện từ người dùng Nếu kiện xảy ra, MID gọi phương thức đối tượng để báo tin foundation profile: profile thiết kế để cài đặt CDC Internationalization: làm cho chương trình máy tính có khả thực thi nhiều ngôn ngữ, nhiều văn hóa Java Micro Edition (J2ME): Java định nghĩa Sun Microsystem, hỗ trợ cho thiết bị di động Kilobyte Virtual Machine (KVM): máy ảo Java thiết kế để dùng với CLDC Nó hỗ trợ tập máy ảo Java chuẩn Listener: xem event listener MIDlet: ứng dụng cần MIDP để chạy MIDlet suite: nhóm MIDlet dùng chung tài nguyên, MIDlet phải đóng gói với để cung cấp cho thiết bị Mobile Independent Device Profile (MIDP): profile J2ME cài đặt CLDC personal pfofile: profile J2ME thiết kế để cài đặt CDC profile: đặc tả cho tập lớp mức cao họ thiết bị Một profile cài đặt theo cấu hình J2ME property: thuộc tính định nghĩa vài đặc điểm môi trường Java thiết bị di động 70 record comparator: lớp định nghĩa MIDP để cài đặt chức so sánh hai dòng liệu lưu MID RMS record filter: lớp định nghĩa MIDP để cài đặt chức tìm kiếm liệu MID RMS theo tiêu chuẩn Bộ lọc dòng liệu phù hợp với điều kiện đưa vào Record Management System (RMS): chế lưu trữ liệu đơn giản dành cho ứng dụng Cơ chế hỗ trợ lưu trữ cho nhiều bảng, bảng chứa nhiều dòng liệu Wriless Application Protocol (WAP): giao thức dùng hệ thống hệ không dây thứ 71 TÀI LIỆU THAM KHẢO [1] Trương Mĩ Dung, Bài giảng Lý thuyết đồ thị, Đại học Khoa học tự nhiên TP.HCM, 2002 [2] Đoàn Văn Ban, Lập trình Java nâng cao, Nhà xuất Khoa học Kĩ thuật, 2006 [3] Roger Riggs - Antero Taivalsaari - Jim Van Peursem, Programming Wriless Devices with the JavaTM Platform Micro Edition - Second Edition, Addison Wesley, 2003 [4] John W.Muchow, Core J2METM Technology & MIDP, Prentice Hall PTR, 2001 [5] Sun Microsystems Inc, http://www.sun.com [6] Sun Developer Network, http://developers.sun.com [7] Nokia, http://forum.nokia.com 72 [...]... (interface) java. io.DataOutputStream java. io.InputStream java. io.InputStreamReader java. io.OutputStream java. io.OutputStreamWriter java. io.PrintStream 6 java. io.Reader java. io.Writer  Calendar and Time Classes java. util.Calendar java. util.Date java. util.TimeZone  Utility Classes java. lang.Math java. util.Random  Exception Classes java. io.EOFException java. io.InterruptedIOException java. io.IOException java. io.UnsupportedEncodingException... java. lang.Thread java. lang.Throwable  Data Type Classes java. lang.Boolean java. lang.Byte java. lang.Character java. lang.Integer java. lang.Long java. lang.Short  Collection Classes java. util.Enumeration (interface) java. util.Hashtable java. util.Stack java. util.Vector  Input/output Classes java. io.ByteArrayInputStream java. io.ByteArrayOutputStream java. io.DataInput (interface) java. io.DataInputStream java. io.DataOutput... lớn các lớp quen thuộc vẫn còn được giữ lại như các lớp trong gói Java. until: Stack, Vector, Hastable, Enumeration  Hỗ trợ đối tượng Display: Đúng như tên gọi 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 lên màn hình điện thoại  Hỗ trợ Form và các giao di n người dùng  Hỗ trợ Timer và Alert  Cung cấp tính năng Record Management System... vào CLDC Profile này được thiết kế chủ yếu để nhắm vào điện thoại 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ó 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  PDA Profile: tương tự MIDP, nhưng với thị trường... java. io.UnsupportedEncodingException java. io.UTFDataFormatException java. lang.ArithmeticException java. lang.ArrayIndexOutOfBoundsException java. lang.ArrayStoreException java. lang.ClassCastException java. lang.ClassNotFoundException java. lang.Exception java. lang.IllegalAccessException java. lang.IllegalArgumentException java. lang.IllegalMonitorStateException java. lang.IllegalThreadStateException java. lang.IndexOutOfBoundsException... java. lang.IndexOutOfBoundsException java. lang.InstantiationException java. lang.InterruptedException java. lang.NegativeArraySizeException java. lang.NullPointerException 7 java. lang.NumberFormatException java. lang.RuntimeException java. lang.SecurityException java. lang.StringIndexOutOfBoundsException java. util.EmptyStackException java. util.NoSuchElementException  Error Classes java. lang.Error java. lang.OutOfMemoryError java. lang.VirtualMachineError... 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áy hỗ trợ cho một profile khác Cũng với lí do đó, ta không thể lấy một ứng dụng viết trên J2SE hoặc J2EE để chạy trên các máy hỗ trợ J2ME Sau đây là 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... khởi động lại máy, trong trường hợp này các lập trình viên không thể xử lý lỗi được vì đã quá trễ  Các lớp kế thừa từ J2SE: CLDC yêu cầu khoảng 160KB để 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:  System Classes java. lang.Class java. lang.Object java. lang.Runnable (interface) 5 java. lang.Runtime java. lang.String java. lang.StringBuffer java. lang.System java. lang.Thread... thư viện của bộ Core Java2 1.3 4 Ngoài ra còn có Personal Basis Profile, Personal Profile, RMI Profile, Game Profile 1.1.4 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ý 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 trên số thực, do đó CLDC không hỗ trợ số thực  Finalization:... Internationalization java. io.InputStreamReader java. io.OutputStreamWriter  Các đặc tính được hỗ trợ Có rất ít đặc tính về hệ thống mà chúng ta có thể xem được Sau đây là danh sách các đặc tính có được và các câu lệnh để truy xuất chúng:  Lấy thông tin về platform của thiết bị: System.getProperty(“microedition.platform”)  Lấy bảng mã kí tự: System.getProperty(“microedition.platform”)  Lấy tên và phiên bản của

Ngày đăng: 04/08/2016, 09:38

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan