(Post 03/07/2009) Bài viết giới thiệu một số
công cụ và cách cấu hình các công cụ này - những công cụ không thể thiếu
cho các nhà phát triển lập trình các ứng dụng chạy trên thiết bị di động...
1. NET Compact Framework
cho Windows Mobile
Để phát triển ứng dụng cho Windows Mobile, chúng ta sẽ
dùng các công cụ sau:
IDE: Visual Studio 2008 (hoặc VS 2005).
Windows Mobile SDK: Tùy vào phiên bản
của HĐH Windows Mobile sẽ phát triển, bạn cần các SDK khác nhau. SDK sẽ
cung cấp tài liệu đầy đủ về API và các ví dụ cụ thể cho thiết bị tương
ứng. Hiện nay thông dụng nhất là các bộ SDK sau:
- Windows Mobile 5.0 SDK: Bộ SDK này đã được cài đặt mặc định khi cài
Visual Studio 2008 hoặc Visual Studio 2005, được dùng để phát triển
các ứng dụng cho Pocket PC/Smartphone chạy HĐH Windows Mobile 5.0
- Windows Mobile 6.0 SDK: Có thể tải về tại trang web của Microsoft,
dùng để phát triển ứng dụng cho Windows Mobile 6.0. Bộ SDK này có các
công cụ sau:
- FakeGPS: Giả lập dữ liệu GPS thông qua các API.
- Local Server Framework (FakeServer): Giả lập Server.
- Cellular Emulator: Giả lập các tính năng như GPRS, GSM...
Quản lý thiết bị ảo: Device Emulator
Manager (được cài đặt kèm theo VS 2008).
ActiveSync: kết nối Visual Studio với
thiết bị thật để bẫy lỗi, kết nối với thiết bị ảo để hỗ trợ truy cập mạng
từ thiết bị ảo. Tùy vào hệ điều hành trên máy tính mà bạn dùng các chương
trình sau:
- Windows XP: dùng AtiveSync 4.5
- Windows Vista, WinServer 2008: dùng Windows Mobile Device Center
Chúng ta sẽ tìm hiểu cách kết nối ActiveSync/Windows
Mobile Device Center (WMDC) với thiết bị giả lập trong Device Emulator.
Bước 1: Cấu hình cho ActiveSync/WMDC
nhận kết nối.
Cài đặt ActiveSync/WMDC rồi khởi động. Ở đây minh họa
bằng WMDC, với ActiveSync cũng tương tự.
Nhấn vào Connection settings, đánh dấu chọn Allow USB
connections, trong danh sách Allow connectons to one of the following
chọn DMA, xong nhấn OK.
Như vậy WMDC đã sẵn sàng chờ kết nối với thiết bị. Tiếp
theo ta sẽ kết nối thiết bị ảo vào WMDC.
Bước 2: Mở VS2008, vào Tools > Device
Emulator Manager để khởi động Device Emulator Manager.
Bước 3: Trong cửa sổ này, chọn thiết
bị muốn khởi động. Giả sử ở đây ta dùng USA Windows Mobile 5.0 Pocket
PC R2 Emulator (trình giả lập Pocket PC chạy Windows Mobile 5.0). Nhấn
chuột phải lên đó, chọn Connect để khởi động thiết bị giả lập.
Bước 4: Sau khi đã khởi động được trình
giả lập thiết bị, trở lại của sổ Device Emulator Manager, nhấn phải vào
USA Windows Mobile 5.0 Pocket PC R2 Emulator, chọn Cradle để kết nối thiết
bị ảo với WMDC.
Nếu kết nối thành công, cửa sổ WMDC sẽ xuất hiện, nhấn
vào Connect without setting up your device để bắt đầu kết nối. (Nếu bạn
muốn đồng bộ tài liệu trên thiết bị ảo và máy tính thì có thể nhấn vào
Set up your device, nhưng thao tác này không bắt buộc).
Trở lại với thiết bị ảo, một icon hiện lên báo hiệu kết
nối thành công.
Nếu máy tính có kết nối Internet, bạn có thể duyệt web
ngay trên thiết bị ảo bằng cách vào Start > Internet Explorer.
Bây giờ chúng ta sẽ xây dựng một ứng dụng đơn giản để
giải Sudoku trên Windows Mobile 5.0.
Khởi động VS 2008. Vào File > New > Project (Ctrl
+ Shift + N). Trong danh sách bên trái chọn Visual C# > Smart Device
(bạn có thể chọn ngôn ngữ Visual Basic nếu muốn. Mã nguồn trong phần này
là C#, nhưng có thể chuyển sang VB dễ dàng). Trong danh sách bên phải,
chọn Smart Device Project. Chọn nền tảng là .NET Framework 3.5, đặt tên
Project là SudokuSolver.
Nhấn OK để tạo Project mới, trong Form 1, đặt các thuộc
tính Text = Sudoku Solver, MinimizeBox = False.
Trong thanh menu phía dưới Form1, gõ Default vào bên
trái, Solve It vào bên phải.
Đặt một TextBox lên Form, đặt các thuộc tính cho TextBox:
Name = "textBox1", Dock = "Fill", Font = "Courier
New 12pt, Bold", Multiline = "True".
Người dùng sẽ nhập ô số Sudoku vào textBox1, nhấn Solve
It để giải. Nút Default dùng để hiện một ô Sudoku mặc định nào đó.
Nhấn đúp lên nút Default và nhập đoạn code sau:
private void menuItem1_Click(object
sender, EventArgs e)
{
textBox1.Text = @"800017060
407065000
905080310
300200001
070000040
500004008
086070504
000540206
050620009";
}
Nhấn đúp vào nút Solve It và nhập đoạn code sau:
private void menuItem2_Click(object
sender, EventArgs e)
{
if (textBox1.Text.Trim() == "") return;
string s = textBox1.Text.Replace("
", "").Replace("\t", "");
char[] tA = s.Replace("\r", "").Replace("\n",
"").ToCharArray();
textBox1.Text = "";
int[] A = new int[tA.Length];
for (int i = 0; i < tA.Length; i++) A[i] = (int)(tA[i] - '0');
R(A);
}
Nhập thêm 2 hàm sau để hiển thị kết quả:
private void R(int[] A)
{
for (int i = 0; i <= 80; i++)
{
if (A[i] > 0) continue;
ArrayList aL = new ArrayList(new
int[]
{ 1, 2, 3, 4, 5, 6, 7, 8, 9 });
for (int j = 0; j <= 80; j++)
if (j / 9 == i / 9 || j % 9 == i % 9 ||
(j / 27 == i / 27 && (j % 9) / 3 == (i % 9) / 3))
aL.Remove(A[j]);
foreach (int k in aL) { A[i] =
k; R(A); }
A[i] = 0;
return;
}
print(A);
}
private void print(int[] A)
{
string s = "";
for (int i = 0; i <= 80; i++)
{
s += A[i] + " ";
if (i % 3 == 2) s += " ";
if (i % 9 == 8) s += "\r\n";
if (i % 27 == 26) s += "\r\n";
}
textBox1.Text = s;
}
Nhấn F5 để chạy chương trình, chọn USA Windows Mobile 5.0
Pocket PC R2 Emulator, rồi nhấn Deploy để triển khai chương trình này
trên thiết bị ảo.
Sau khi Deploy, chương trình đã chạy. Nhấn Default, rồi
Solve It để xem kết quả, sử dụng nút OK để thoát.
2. Xcode IDE cho iPhone
Trước tiên bạn cần có HĐH MAC OS 10.5.4 trở lên và iPhone
SDK (tải về tại đây).
Bản iPhone SDK đã có tích hợp sẵn Xcode. Bạn chỉ việc
cài đặt bộ SDK là xong. Phiên bản Xcode tôi sử dụng trong bài viết là
3.1.
Sau khi cài đặt, chạy Xcode trong thư mục /Developer/Applications.
Để tạo project mới, bạn vào menu File => New Project...
Sau đó chọn template cho ứng dụng. Ở đây tôi chọn mục
iPhone OS -> Application và chọn template View-Based Application ở
bên phải.
Nhấn Choose..., sau đó đặt tên và chọn vị trí lưu project.
Nhấn Save.
Đến đây bạn đã sẵn sàng cho việc viết mã lệnh chương
trình. Trong màn hình chính để lập trình, các file liên quan được sắp
xếp trong các thư mục tương ứng ở bên trái cửa sổ.
Mặc định các file mã nguồn được lưu trong thư mục Classes
của project. Ở góc trái phía trên cửa sổ là môi trường để chạy ứng dụng.
Ở đây mặc định sẽ chạy trên "Simulator | Debug". Bạn cũng có
thể chọn "Device" để chạy trên thiết bị thật nếu đã kết nối
iPhone với máy tính.
Bạn nhấn vào file cần soạn mã nguồn và code sẽ được hiển
thị ở phần chính của cửa sổ.
Sau khi soạn mã chương trình xong, bạn nhấn vào nút Build
and Go ở phía trên để biên dịch. Nếu không có lỗi, project sẽ được cài
đặt lên môi trường bạn đã chọn. Nếu trước đó bạn chọn Simulator | Debug,
project sẽ được nạp vào thiết bị giả lập. Bạn chạy bằng cách nhấn chuột
vào biểu tượng có chữ HelloWorld.
Mobile Labs
(theo PC World VN) |