Nội dung trình bày Tổng quan công nghệ J2ME Mô hình kết nối Client – Server cho thiết bị di động Thiết kế và xây dựng ứng dụng cho doanh nghiệp với J2ME Demo: Hệ thống tra cứu đ
Trang 1Công nghệ J2MEPresented by Giang Van Phuong
Trang 2Nội dung trình bày
Tổng quan công nghệ J2ME
Mô hình kết nối Client – Server cho thiết bị di
động
Thiết kế và xây dựng ứng dụng cho doanh
nghiệp với J2ME
Demo: Hệ thống tra cứu địa điểm giải trí qua
mạng di động
Trang 3Lịch sử phát triển
Trang 5Kiến trúc J2ME
Trang 6 CLDC (Connected Limited Device Configuration)
CDC (Connected Device Configuration)
Trang 7Các thành phần nền tảng trong J2ME (tiếp)
Profile
Profile mở rộng Configuration
bằng cách thêm vào các class
để bổ trợ tính năng cho từng
thiết bị chuyên biệt
MIDP (Mobile Information
Device Profile)
PDA Profile
Foundation Profile
Ngoài ra còn có Personal Basis
Profile, Personal Profile, RMI
Profile, Game Profile
Trang 9MIDP (tiếp)
Những chức năng MIDP cung cấp:
Các lớp và kiểu dữ liệu: đều sử dụng được
Hỗ trợ đối tượng Display
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 (RMS)
Trang 10Những cải tiến của MIDP2.0
Nâng cấp các tính năng bảo mật
Thêm các API hỗ trợ Multimedia
Mở rộng các tính năng của Form
Hỗ trợ lập trình viên Game bằng cách tung ra
Game API
Hỗ trợ kiểu ảnh RGB
Trang 11Các thành phần cơ bản của một ứng dụng MIDlet
import javax.microedition.midlet.*;
public class MIDletExample extends MIDlet
{
public MIDletExample() {}
public void startApp() {}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
}
Trang 12MIDlet Lifecycle
pauseApp()
destroyApp() StartApp()
Tạo
destroyApp()
Trang 13Các tập tin của MIDlet
Tập tin Jar
Là toàn bộ ứng dụng MIDlet
Là tập tin chứa tất cả các class, resource,
manifest.mf, …
Tập tin Jad và manifest
Là tập tin mô tả các đặc điểm của MIDlet
Điểm khác giữa 2 tập tin: manifest là một phần
của Jar, Jad thì không
Chúng ta có thể biết được đặc điểm của MIDlet mà
chưa cần có tập tin Jar
Trang 14Nội dung của tập tin Jad
Nội dung manifest.mf
Trang 15Quá trình phát triển và triển
quản lý trạng thái của ứng dụng B4: Người dụng thực thi ứng dụng B5: KVM thực thi mã bytecode,
Trang 16Đồ họa trong J2ME
Display
Displayabl e Command
Trang 17Lưu trữ bản ghi RMS
MIDlet1 MIDlet2
Lưu trữ bản ghi 1
Lưu trữ bản ghi 2
Lưu trữ bản ghi 3
MIDlet3
Trang 18Một số chức năng của RMS
Thêm bản ghi (Add Record)
Xóa bản ghi (Delete Record)
Lọc các bản ghi (Filtering Record)
Sắp xếp các bản ghi (Sort Record)
Liệt kế các bản ghi (Enumerate Record)
Trang 19Kết nối Client – Server trong J2ME
Khung mạng CLDC tổng quát (Generic
CLDC Networking Framework)
Các lớp giao diện kết nối
Kết nối HTTP
Trang 20Khung mạng CLDC tổng
quát
Trong J2ME mạng được chia làm 2 phần:
Phần đầu: khung được cung cấp bởi CLDC (kết nối được
tạo ra bằng phương thức open() của lớp Connector
trong CLDC)
Phần hai: các giao thức được định nghĩa trong profile
Một số giao thức được profile định nghĩa:
Http: Connector.open(“http://sonyericsson.com”);
Socket: Connector.open(“socket://192.168.128.69:1511”);
Comm port: (Cổng truyền thông)
Trang 21Các lớp giao diện kết nối
Stream-ConnectionNotifier
Connection co = Connector.open(url)
Datagram- Connection
Connection
Output- Connection
Connection
Input- Connection InputConnection CLDC
Trang 22 Tạo Connection: dùng phương thức open() của lớp
Connector để mở kết nối, khi đó nó đóng vai trò như HttpConnection
Các trạng thái của kết nối Http:
Thiết lập (Setup)
Trang 23Các kiểu ứng dụng MIDlet
Ứng dụng đơn (Standlone Application)
Là ứng dụng được nạp hoàn toàn vào thiết bị, có thể chạy bất cứ lúc nào và không cần tài nguyên bên ngoài
Ứng dụng nối mạng (Networked Application)
Là ứng dụng có ít nhất 2 thành phần:
Client: được triển khai trên thiết bị di động
Server: thường được đặt trong môi trường J2EE
và phục vụ bằng Web hoặc giao thức Internet
Trang 24Thiết kế ứng dụng không dây cho doanh nghiệp với J2ME
dụng
Các ràng buộc thiết kế
Truyền thông điệp
Các chiến lược trình diễn
Trang 25Mô hình kiến trúc chung của ứng dụng
1:requ est
MIDle t 2:requestServlet
3:response EJB
4:response Servlet
Trang 26 Kết nối không liên tục
Hướng giải quyết
Chỉ kết nối vào mạng khi cần thiết
Trang 27Truyền thông điệp
Http là giao thức truyền thông điệp trong hầu hết
các ứng dụng vì:
Http có tính khả chuyển
Http có khả năng bảo mật tường lửa
Java hỗ trợ các API lập trình mạng với Http
Client mã hóa App request và đóng gói vào Http request
Servlet nhận Http request và giải mã App request
Servlet mã hóa App response và đóng gói vào Http
response
Trang 28Các chiến lược trình diễn
Thực hiện kiểm tra ở phía Client
Giảm thiểu liên lạc không cần thiết từ Client – Server
Với hoạt động tốn nhiều thời gian thì ứng dụng nên có thông tin phản hồi đến người dùng
Cá nhân hóa chỉ khả năng một dịch vụ thích ứng với
thông tin mà nó biết về người dùng
Cá nhân hóa một dịch vụ làm giảm yêu cầu nhập liệu
và rút ngắn dòng chảy công việc