Phát triểnứngdụng trên SymbianOSvớiCarbide.c++Express
Hiện có một số công cụ phát triểnứngdụng trên Symbian như Visual Studio C++ 6 .0,
CodeWarrior Development Studio, Borland C++ BuilderX, Nokia Development Suite
(NDS) và thành viên mới nhất là Carbide C++ Express 1.0. Trong đó NDS và Carbide do
chính Nokia phát triển.
Khác với các công cụ Visual C++ và Code Warrior đều phải trả tiền bản quyền khi sử
dụng, NDS thực chất chỉ là plug-in trên Visual Studio .NET (cũng có bản quyền),
Carbide Express hoàn toàn miễn phí và là một môi trường phát triểnứngdụng hoàn chỉnh
(IDE) được xây dựng dựa trên IDE rất quen thuộc đó là Eclipse, có công cụ mô phỏng và
hỗ trợ bẫy lỗi (debug) trực tiếp trên PC trước khi triển khai ứng dụng.
Tải về và cài đặt
Bạn vào trang web www.forum.nokia.com/carbide để tải Carbide cũng như các SDK
(Software Development Kit) dành cho dòng điện thoại S60, S80 và S90, hay vào
http://developer.uiq.com để tải SDK dành cho dòng Symbian UIQ. File cài đặt có dung
lượng khoảng 84 MB, khi cài đặt xong sẽ chiếm khoảng 160 MB trên ổ cứng.
Carbide hỗ trợ tốt S60 SDK 2nd , SDK S60 2nd phiên bản FP 2 hay FP3 hay SDK S60
3rd MR.
Bạn cũng cần cài đặt ActivePerl version 5.6.1.x (miễn phí). Điều này là cần thiết cho việc
“build” các project trong Carbide.
Bộ cài đặt Carbide được đóng gói bằng trình InstallShield, cho phép dễ dàng cài đặt trên
PC. Carbide.c++Express được thiết kế để chạy trên Windows XP SP2.
Lưu ý: khi cài trên phiên bản hệ điều hành khác Windows XP SP2, chúng ta sẽ thấy hộp
thoại cảnh báo, bạn chỉ việc nhấn OK để đóng lại và tiếp tục quá trình cài đặt.
Sử dụng
GUI đầu tiên khi bạn vào Carbide là màn hình Welcome, bạn đóng nó bằng cách nhấn
dấu X trên tab vì hiện giờ chưa cần đến. Giao diện Carbide như hình.
Carbide hỗ trợ nhiều wizard, giúp tạo ra một bộ khung cho project mới, rất tiện lợi cho
người mới làm quen với lập trình trên Symbian.
Bây giờ chúng ta hãy cùng tạo ra một S60 Project đơn giản để xem Carbide làm việc như
thế nào.
Trước hết chúng ta kiểm tra xem Carbide có nhận diện ra các SDK mà chúng ta đã cài
trước đây không. Vào menu Window/ References.
Chọn Carbide.c++, chọn tiếp SDK Preferences, bạn sẽ thấy Carbide tự động nhận ra các
SDK đã được cài đặt. Những SDK không được hỗ trợ sẽ được hiển thị bằng màu đỏ. Nếu
Carbide không nhận ra các SDK đã được cài đặt, bạn nhấn nút Rescan để Carbide tự tìm
các SDK đã được cài đặt trên máy.
Carbide có một nhược điểm là nếu bạn chọn đường dẫn đến thư mục Workspace có
khoảng trắng, Carbide khi build sẽ báo lỗi. Do thư mục Workspace mặc định của Carbide
có chứa khoảng trắng nên bạn bắt buộc phải thay đổi. Chọn menu File/Switch Workspace
để thay đổi Workspace.
Bây giờ là lúc chúng ta tạo một Project mới. Chọn menu File/New/Project, hộp thoại
New Project xuất hiện cho phép chúng ta chọn loại project muốn tạo.
Chọn S60 Project, nhấn Next, đặt tên cho Project. Nhấn Next tiếp.
Tiếp tục nhấn Next.
Ở đây có vài điều cần giải thích. Như bạn thấy, trong Carbide ứngvới một project bất kỳ
đều có 3 lựa chọn:
- S60 2.8 Emulator Debug: cho phép bẫy lỗi trên PC trước khi cài ứngdụngtrên thiết bị
thật.
- S60 2.8 Phone (ARMI) Release: dùng để tạo ứngdụng cho thiết bị sử dụng CPU 32 bit.
- S60 2.8 Phone (Thumb) Release: dùng để tạo ứngdụng cho thiết bị sử dụng CPU 16 bit.
Chọn SDK phù hợp vớiứngdụng mà bạn muốn viết, sau đó nhấn Finish để Carbide tự
động tạo cho chúng ta 1 bộ khung ứngdụng như hình sau:
Sau đây là những công dụng của các thư mục chính:
- Includes: chứa file header của Symbian cần để build ứng dụng.
- Src: chứa file nguồn (.cpp).
- Inc: chứa file header (.h).
- Data: chứa file tài nguyên (.rss).
- Sis: chứa file đóng gói (.pkg). Nếu bạn chọn build ở chế độ release thì đây cũng chính là
thư mục sẽ chứa file .sis.
- Aif (Application Information): chứa file .aif (hầu như bạn không cần phải đụng đến file
này).
Bây giờ chọn menu Project/Build All. Carbide sẽ giúp ta build project này.
Bạn mở cửa sổ Problems xem có lỗi nào không (nếu không thấy cửa sổ Problems, bạn
vào menu Window/Show View/Problems), thường bạn sẽ nhìn thấy Carbide hiển thị một
lỗi “CTags not install or not in path”, bạn đừng quan tâm đến nó, đây chỉ là “warning”
của Carbide.
Chuẩn bị chạy ứngdụng đầu tiên của chúng ta trên Emulator xem sao. Chọn menu
Run/Run, nhấn New để tạo mới phiên debug nếu bạn không thấy tên project của mình
hiện ra trong danh sách bên trái.
Và nhấn Run để chạy ứngdụng này trên Emulator.
Cuộn màn hình cho tới khi thấy ứngdụng của mình; chạy ứngdụng bằng nút trên
Emulator như các phím trên ĐTDĐ.
Sau khi kiểm tra ứngdụng chạy hoàn hảo trên Emulator, bước tiếp theo là tạo ra file .sis
để cài lên thiết bị thật. Muốn vậy chúng ta cần chọn lại cấu hình build cho bản release. Ví
dụ để build cho máy Nokia 6600 (dùng CPU 32 bit), chúng ta chọn ARMI Release. Thực
hiện như sau:
- Mở Build Configuration, chú ý hình chữ i, kế bên có nút tam giác, nhấn vào đó để đổi
chế độ build. Chọn option S60.2.8 Phone (ARMI) Release.
- Sau đó chọn menu Project/Build project. Nếu thành công bạn sẽ thấy file .sis được đặt
trong thư mục sis của project.
Lưu ý: khi chuyển từ chế độ debug sang các chế độ build khác và ngược lại, bạn nên
dùng chức năng Clean (menu Project/Clean) để xóa các file trung gian. Quá trình clean
không xóa file sis.
Bạn dùng Bluetooth hay đầu đọc thẻ nhớ, chép file này vào thiết bị, cài đặt và chạy thử.
Ứng dụng của bạn sẽ chạy y như trên Emulator.
Vài điều khó chịu
- Thứ nhất là tốc độ khởi động Emulator, Carbide mất trung bình khoảng 1 phút cho việc
nạp và hiển thị Emulator (CPU 3GHz HT, RAM 512 MB).
- Thứ hai, tốc độ “chấm và xổ” (hỗ trợ coding) trong Carbide hơi chậm. Bạn có thể hiệu
chỉnh thời gian chờ khi hiển thị “xổ”, tuy nhiên không cải thiện mấy (vào menu
Window/Preference/, chọn C/C++/Editor/Code Assist và giảm thời gian delay trong mục
Auto Activation).
- Quá trình build hơi chậm, dù chỉ xóa 1 dòng trống, khi build vẫn mất chút ít thời gian.
- Khai báo hằng chuỗi bằng cách dùng macro __LIT bị Carbide gán lỗi warning.
- Cửa sổ Problems thỉnh thoảng hiển thị lỗi không đúng, đôi khi bạn cần phải xem qua
cửa sổ Console để xác định lỗi của project. Ví dụ khi bạn build bản release, nếu bạn quên
khai báo file thư viện lib, việc build sẽ không thành công, vì vậy Carbide không tạo được
file .sis, nhưng hiển thị trên cửa sổ Problems lại là một lỗi khác (“file not found” chẳng
hạn chứ không phải là “undefined xxx symbol ” như bạn mong đợi đâu).
- Cửa sổ Build Configuration đôi khi không hiển thị được. Nhưng đừng lo, bạn chỉ việc
đóng Carbide rồi mở lại, và thế là vấn đề được giải quyết.
- Đôi khi menu Project/Build bị disabled mặc dù bạn đã thay đổi vài dòng code, bạn phải
chuyển qua cửa sổ con khác thì menu Project/Build mới enabled. Nhưng đừng lo, bạn có
thể dùng luôn Build All (khi dùng chức năng này chỉ nên mở 1 project trong workspace
thôi).
- Một điều hơi khó chịu nữa: NDS Nokia cho phép tạo ra các resource (text query dialog,
number query dialog, ) theo kiểu wizard chỉ bằng vài nhấn chuột, nhưng với Carbide thì
bạn phải gõ bằng tay. Thật bất tiện.
Những thiếu sót trên chỉ là chuyện nhỏ, có thể giải quyết bằng chính kinh nghiệm sử
dụng của bạn và nó không ảnh hưởng nhiều đến quá trình xây dựngứng dụng. Và
Carbide vẫn là lựa chọn sáng giá cho việc phát triểnứngdụng trên Symbian OS.
Hiện nay Nokia cũng đã cho ra mắt 2 bản Carbide thương mại là Carbide.c++ Developer
Edition và Carbide.c++ Professional Edition. Với 2 bản thương mại này, bạn có thể
debug trên thiết bị thật, hỗ trợ triển khai ứngdụng nhanh.
(pcworld.com.vn)
. Phát triển ứng dụng trên Symbian OS với Carbide. c++ Express
Hiện có một số công cụ phát triển ứng dụng trên Symbian như Visual Studio C++ 6 .0,. xây dựng ứng dụng. Và
Carbide vẫn là lựa chọn sáng giá cho việc phát triển ứng dụng trên Symbian OS.
Hiện nay Nokia cũng đã cho ra mắt 2 bản Carbide thương