• Thứ Sáu, 11/06/2004 03:34 (GMT+7)

    Hướng dẫn sử dụng Samsung JSDK 1.0

    Samsung JSDK 1.0 là công cụ giả lập điện thoại di động (ĐTDĐ) Samsung cho phép chạy ứng dụng Java di động, hỗ trợ  các loại SGH-X100, SGH-X600, SGH-E700. 

    Cài đặt

    Tải về Samsung JSDK 1.0 tại địa chỉ ở cuối bài viết, dung lượng 7.75 MB. Hiện tại chỉ có phiên bản dành cho Windows. Chương trình cài đặt được đóng gói thành một file .exe duy nhất, JSDKv1_0.exe. Để cài đặt, bạn chỉ cần nhấn đúp chuột vào file này.

    Samsung JSDK 1.0 đã bao gồm KVM (K Virtual Machine) - máy ảo Java dành cho thiết bị có cấu hình phần cứng giới hạn. Bạn không cần cài đặt thêm bất kỳ JDK hay JRE nào khác mà vẫn có thể chạy các ứng dụng Java di động.

    Chạy ứng dụng


    Hình 1: Màn hình khởi động của Samsung JSDK 1.0

    Samsung JSDK 1.0 là công cụ dùng để chạy thử, kiểm tra lỗi và các tính năng đặc biệt (âm thanh, rung, đèn, SMS) của điện thoại Samsung và sự tương thích của các ứng dụng MIDlet trên các loại ĐTDĐ Samsung. Samsung JSDK 1.0 hỗ trợ MIDP 1.0.3 và CLDC 1.0.3. (Tham khảo bài "J2ME: Thật đơn giản" trong số này).

    Để tạo ra các ứng dụng MIDlet, bạn có thể sử dụng bất kỳ Java IDE nào có hỗ trợ J2ME (chẳng hạn như Borland JBuilder). Sau khi đóng gói ứng dụng thành file .jad và .jar, bạn tải ứng dụng lên Samsung JSDK 1.0 để chạy thử. Nếu bạn đã có cài đặt J2ME Wireless Toolkit phiên bản 1.0.4 về trước (tham khảo địa chỉ tải về ở cuối bài viết), bạn cũng có thể dùng nó để chạy thử các ứng dụng đã đóng gói. Sau đây là các bước thực hiện để chạy ứng dụng.

    1. Khởi động Samsung JSDK 1.0

    Trong Windows, vào menu Start->Programs->Samsung JSDK, và chọn Java SDK v1.0. Màn hình sẽ xuất hiện như hình 1. Trong cửa sổ console (DOS prompt), bạn sẽ thấy có các thông báo dạng "java.lang.IndexOutBoundsException...". Bạn đừng lo vì đó không phải là lỗi của chương trình mà là ngoại lệ (exception) do KVM xuất ra vì workspace (không gian làm việc) chưa có ứng dụng. Khi workspace đã có ít nhất một ứng dụng, ngoại lệ nầy sẽ không xuất ra nữa.

    2. Tạo workspace

    Workspace là nơi lưu trữ thông tin của ứng dụng, tương tự như bộ nhớ trên ĐTDĐ thực. Workspace cũng là nơi chứa cấu hình loại ĐTDĐ mà bạn muốn sử dụng (SGH-X600, SGH-E700...). Bạn cần phải tạo workspace trước khi chạy một ứng dụng.

    Vào menu File->New Workspace. Chương trình sẽ hỏi bạn có lưu workspace hiện tại hay không, hãy chọn No. Chọn thư mục để lưu workspace đang tạo. Nhập tên vào ô workspace, xong nhấn nút New. Hộp thoại Open skin file xuất hiện yêu cầu bạn chọn một kiểu điện thoại (skin). Hãy đến thư mục {$Thư_Mục_Cài_Đặt_JSDK1.0}\skins, và chọn một skin, ví dụ SGH-X600.ski, nhấn nút Open. Lúc này bạn đã có workspace để chạy ứng dụng. Vào menu Option->Restart Emulator để thay đổi skin.

    3. Mở ứng dụng

    Vào menu File->Import MIDlet. Chọn thư mục chứa ứng dụng. Trong ô Files of type, chọn kiểu jar file *.jar. Chọn file .jar muốn mở và nhấn nút Open. Lúc này, trong màn hình của ĐTDĐ giả lập sẽ xuất hiện ứng dụng bạn vừa nạp. (Hình 2)

    Bạn cũng có thể mở ứng dụng với file .jad. Tuy nhiên, Samsung JSDK 1.0 không hiểu đường dẫn tương đối được chỉ ra trong file .jad. Bạn cần phải mở file .jad bằng một chương trình soạn thảo văn bản, chẳng hạn NotePad, sau đó sửa đường dẫn của file .jar thành đường dẫn tuyệt đối. Lưu ý cách này chỉ để chạy ứng dụng trên Samsung JSDK 1.0. Khi muốn đưa ứng dụng vào ĐTDĐ thực, bạn cần phải sửa lại đường dẫn tương đối như lúc đầu.

    Samsung JSDK 1.0 còn có thể chạy được file class với điều kiện lớp đó phải là lớp chính của ứng dụng, tức là lớp kế thừa từ lớp javax.microedition.midlet.MIDlet.

     

    Hình 2: Ứng dụng xuất hiện trên màn hình ĐTDĐ giá lập

    4. Chạy ứng dụng

    Bạn hãy chuyển qua cửa sổ chứa hình ĐTDĐ để chạy ứng dụng. Nhấn chuột vào các phím trên ĐTDĐ để điều khiển như trên ĐTDĐ thật.

    5. Xóa ứng dụng khỏi workspace

    Trên ĐTDĐ giả lập, chọn ứng dụng bạn muốn xoá. Bấm nút Info, cửa sổ Info sẽ hiện ra, bấm nút Delete để xóa ứng dụng.

    Các chức năng quản lý

    1. Quản lý ĐTDĐ giả lập:

    Để thay đổi kiểu điện thoại, bạn hãy vào menu File->Change skin rồi chọn kiểu điện thoại muốn đổi. Để cửa sổ giả lập luôn nổi, vào menu Options->Always on top. Để nạp lại ĐTDĐ giả lập, vào menu Options->Restart emulator.

    2. Quản lý workspace

    Một workspace khi đang làm việc, cũng tương tự một chiếc ĐTDĐ thật đang sử dụng. Có những lúc bạn phát triển nhiều ứng dụng, bạn có thể kết hợp một ứng dụng với một workspace và chuyển đổi qua lại giữa chúng. Bạn cũng có thể kiểm tra ứng dụng trên nhiều kiểu ĐTDĐ khác nhau, hãy tạo nhiều workspace, mỗi workspace chứa một skin bạn muốn.

    Phần trên đã hướng dẫn chi tiết cách tạo một workspace. Để lưu một workspace đang làm việc, vào menu File->Save Workspace. Để mở một workspace, vào menu File->Open Workspace. Chuyển đổi qua lại giữa các workspace, vào menu File->Recent Workspaces.

    3. Quản lý sự kiện

    Trên ĐTDĐ thật, các sự kiện bên ngoài có thể ảnh hưởng đến quá trình thực thi ứng dụng. Để kiểm tra sự ổn định của ứng dụng khi các sự kiện không đồng bộ xuất hiện, Samsung JSDK 1.0 cho phép bạn phát ra 2 loại sự kiện: hết chỗ lưu trữ (File System Full) và mất kết nối mạng (Lose Connection) thông qua menu Events->File System Full và Events->Lose Connection.

    4. Theo dõi quá trình thực thi ứng dụng

    Samsung JSDK 1.0 cung cấp công cụ Trace để bạn theo dõi dấu vết của toàn bộ quá trình thực thi ứng dụng. Các loại hành vi của ứng dụng được theo dõi bao gồm: truy xất file, kết nối mạng, sự kiện phím.

    Đối với mỗi loại hành vi, bạn có thể đặt chế độ theo dõi chỉ đơn giản ở mức các sự kiện của hệ thống hay một cách chi tiết đến từng bước thực thi phương thức trong máy ảo KVM.

    Để hiển thị thông tin trace trong workspace đang làm việc, bạn phải có một file trace để lưu trữ các thông tin đó. Vào menu Traces->New để tạo mới một file trace chứa các thông tin theo dõi. Muốn theo dõi loại hành vi nào và mức độ chi tiết của nó, vào menu Traces->Filters để chọn hành vi và mức độ theo dõi. Nếu cửa sổ trace chưa hiển thị, vào menu Traces ->Show. Để bắt đầu theo dõi, vào menu Traces->Start. Bạn có thể dừng quá trình theo dõi bất kỳ lúc nào bằng cách vào menu Traces->Stop. 


    Hình 3: Cửa sổ trace.

    5. Các chức năng giả lập đặc biệt

    Mỗi loại ĐTDĐ có một vài chức năng đặc trưng khác nhau. Nhà sản xuất thường cung cấp các API đính kèm để bạn có thể điều khiển các tính năng của ĐTDĐ trong ứng dụng của mình.

    Có vài chức năng chỉ có thể thực hiện khi chạy với thiết bị thật. Trên ĐTDĐ Samsung có các chức năng đặc biệt như đèn màn hình, rung, gửi tin nhắn SMS, nhạc chuông đa âm điệu... Khi chạy ứng dụng trên Samsung JSDK 1.0, các chức năng này được thể hiện bằng cách hiển thị thông tin trong cửa sổ console để bạn biết chức năng nào của ĐTDĐ đã được thực thi.

    6. Kết nối mạng

    Samsung JSDK hỗ trợ việc kết nối mạng bằng socket để thiết lập giao tiếp giữa ứng dụng và server. Tất cả các chức năng về mạng trong CLDC/MIDP đều có thể thực hiện được trên ĐTDĐ giả lập của Samsung JSDK 1.0.

    7. Quản lý lỗi

    Khi chạy ứng dụng, Samsung JSDK 1.0 sẽ quản lý 3 loại lỗi sau đây:

    a) Cảnh báo (warning): Một cửa sổ thông báo sẽ được hiển thị để cảnh báo người sử dụng khi một vài thao tác trong ứng dụng đang chạy bị trục trặc. Tuy nhiên, ứng dụng có khả năng kiểm soát được vấn đề này.

    b) Thông tin (information): Một cửa sổ thông báo sẽ được hiển thị để thông báo với người sử dụng nếu thao tác hiện tại không được phép thi hành trong lúc này.

    c) Lỗi (error): Một cửa sổ thông báo sẽ được hiển thị để thông báo với người sử dụng nếu ứng dụng sẽ bị đóng.

    Khi lỗi xuất hiện, thông báo được hiển thị báo nguyên nhân gây lỗi. Ứng dụng sẽ quay về trạng thái trước đó.

    Trên đây là các chức năng chính của Samsung JSDK 1.0. Trong quá trình sử dụng, bạn sẽ khám phá thêm nhiều tính năng thú vị khác. Chúc bạn thành công. ÿ

    Ngô Văn Khoa
    billkhoa@yahoo.com

       Tham khảo:

      

      

       

     

    1.  Samsung JSDK 1.0 User Guide        (http://uk.samsungmobile.com/club/developers_club/cl_de_sdk_02.jsp)
    2.  Java 2 Micro Edition (http://java.sun.com/j2me)
    3.  Chuyên mục J2ME trên JavaVietnam (http://www.javavietnam.org/
    Địa chỉ download (miễn phí):
    1.  Samsung JSDK 1.0 (http://uk.samsungmobile.com/club/developers_club/cl_de_sdk_02.jsp)  2.  J2ME Wireless Toolkit 1.0.4 (http://java.sun.com/products/j2mewtoolkit/download.html) 

     

    ID: A0406_125