Xây dựng chương trình trao đổi phonebook giữa điện thoại di động với máy tính, và với điện thoại di động thông qua Bluetooth.
83
- Phân tích và xác định yêu cầu
Mục đích chính của ứng dụng là thực hiện các kết nối và trao đổi dữ liệu qua Bluetooth, cho phép người dùng trao đổi phonebook (sổ danh bạ trên điện thoại) giữa hai điện thoại di động thuộc Series 60, hoặc trao đổi phonebook giữa điện thoại và máy tính để lưu trữ trên máy tính.
Ứng dụng PbkExchange gồm hai phần : phần ứng dụng chạy trên điện thoại và phần ứng dụng chạy trên máy tính.
Các yêu cầu của ứng dụng:
+ Thực hiện các kết nối Bluetooth.
+ Trao đổi sổ danh bạ giữa điện thoại và máy tính + Trao đổi sổ danh bạ giữa hai điện thoại.
+ Thực hiện các thao tác quản lý sổ danh bạ : thêm, xóa, sửa các phần tử.
- Qui trình kết nối và gửi nhận dữ liệu
Trong một phiên kết nối Bluetooth điểm nối điểm giữa hai thiết bị Bluetooth thông qua giao thức Serial port , thường sẽ có một thiết bị khởi tạo Bluetooth trước và thực hiện quảng bá dịch vụ Bluetooth Serial Port tới thiết bị
Bluetooth khác, sau đó lắng nghe các yêu cấu kết nối từ thiết bị khác, ta gọi đó là Server, thiết bị còn lại sẽ thực hiện việc tìm kiếm các thiết bị Bluetooth xung quanh, chọn thiết bị cần kết nối và gửi yêu cầu kết nối tới thiết bị là server, ta gọi thiết bị đó là client.
Qui trình thực hiện kết nối và truyền nhận dữ liệu giữa hai thiết bị được thể hiện như sơ đồ UML sau :
84
85
- Xây dựng phần ứng dụng trên điện thoại
* Phần ứng dụng PbkExchange trên điện thoại có hai vai trò : Server và Client + Khi thực hiện kết nối với máy tính : điện thoại đóng vai trò client : nó sẽ gửi yêu cầu kết nối tới máy tính, và máy tính đóng vai trò Server.
+ Khi thực hiện kết nối giữa hai điện thoại : một điện thoại sẽ đóng vai trò server : nó sẽ khởi tạo Bluetooth và lắng nghe yêu cầu kết nối từ điện thoại khác, một điện thoại sẽ đóng vai trò client : gửi yêu cầu kết nối tới server.
* Các chức năng của phần ứng dụng trên điện thoại :
• Cho phép thực hiện các thao tác trên phonebook của điện thoại: thêm xóa, sửa các contact.
• Thực hiện khởi tạo và thiết lập các kết nối Bluetooth
• Sau khi đã thực hiện kết nối thành công, cả server và client đều có khả năng gửi và nhận dữ liệu : thực hiện việc trao đổi phonebook thông qua Bluetooth.
• Xử lý dữ liệu nhận được.
Các lớp chính của PbkExchange phần trên điện thoại :
86
STT Tên lớp Chức năng
1 CPbkExchangeAppUi Đây là lớp xử lý chính của chương trình, là lớp nhận và xử lý các sử kiện từ người dùng, lớp này cũng có nhiệm vụ giao tiếp với các lớp gửi và nhận dữ liệu qua Bluetooth , thao tác với lớp RFile, xử lý dữ liệu nhận được.
2 CMessageClient Thực hiện tìm kiếm thiết bị server, gửi yêu cầu kết nối, quản lý kết nối, nhận và gửi dữ liệu khi đóng vai trò là client.
3 CMessageServer Thực hiện khởi tạo Bluetooth, chấp nhận kết nối và thực hiện các thao tác trao đổi dữ liệu, quản lý kết nối. 4 CPbkExchangeMainView Quản lý các menu và phần giao diện
của ứng dụng. 5 CPbkExchangeMainContainer Hỗ trợ cho lớp
CPbkExchangeMainView trong việc quản lý giao diện của ứng dụng. 6 CMessageServiceSearcher,
CBTServiceSearcher
Tìm thiết bị và dịch vụ Bluetooth, lấy Port hỗ trợ CMessageClient thực hiện kết nối
7 MSdpAttributeNotifier, TSdpAttributeParser
Hỗ trợ việc lấy, phân tích thuộc tính các record của dịch vụ
8 CMessageServiceAdvertiser Hỗ trợ lớp CMessageServer trong việc quảng bá dịch vụ Bluetooth Serial Port.
87