Mỗi đối tượng BluetoothDevice trở lại thông qua các chương trình phát sóng phát hiện một thiết bị Bluetooth từ xa phát hiện ra.
Trong các phần sau, bạn sẽ sử dụng đối tượng thiết bị Bluetooth để tạo ra một kết nối, trái phiếu, và cuối cùng là chuyển dữ liệu giữa Adapter Bluetooth cục bộ và các thiết bị Bluetooth từ xa.
Bluetooth Truyền
Android API truyền Bluetooth là hàm bao quanh RFCOMM, giao thức truyền thông tần số vô tuyến Bluetooth. RFCOMM hỗ trợ RS232 giao tiếp nối tiếp qua các lớp khiển logic Link và thích ứng Protocol (L2CAP).
Trong thực tế, súp bảng chữ cái này cung cấp một cơ chế cho việc mở ổ cắm giao tiếp giữa hai thiết bị Bluetooth đã ghép nối.
(//) Trước khi ứng dụng của bạn có thể giao tiếp giữa các thiết bị, các các thiết bị phải được ghép nối (ngoại quan). Nếu người dùng cố gắng để kết nối hai thiết bị lẻ, họ sẽ được nhắc nhở để ghép chúng trước khi kết nối được thiết lập.
Bạn có thể thiết lập một kênh thông tin liên lạc RFCOMM cho thông tin liên lạc hai chiều bằng cách sử dụng các lớp học sau.
^ BluetoothServerSocket - Được sử dụng để thiết lập một ổ cắm lắng nghe để bắt đầu một liên kết giữa các thiết bị. Để thiết lập một cái bắt tay, một thiết bị hoạt động như một máy chủ để lắng nghe, và chấp nhận, yêu cầu kết nối đến.
^ BluetoothSocket - Được sử dụng để tạo ra một khách hàng mới để kết nối với một máy chủ nghe Bluetooth Socket. Cũng được trả về bởi Bluetooth server socket sau khi một kết nối được thiết lập. Khi một kết nối được thiết lập, Bluetooth Sockets được sử dụng bởi cả hai máy chủ và máy khách để chuyển dòng dữ liệu.
Khi tạo một ứng dụng sử dụng Bluetooth như một tầng peer-to-peer, bạn sẽ cần phải thực hiện cả một Socket Bluetooth Server lắng nghe cho các kết nối và một socket Bluetooth để bắt đầu một kênh mới và xử lý các thông tin liên lạc.
Khi kết nối, Bluetooth server socket trả về một socket Bluetooth đó là sau đó được sử dụng bởi các thiết bị máy chủ để gửi và nhận dữ liệu. Đây server-side Bluetooth socket được sử dụng trong cách chính xác giống như các ổ cắm khách hàng. Các kiểu của máy chủ và máy khách chỉ liên quan đến cách thức connec¬tion được thành lập; họ không ảnh hưởng đến cách các luồng dữ liệu sau khi kết nối được thực hiện.
Mở một Bluetooth server socket Listener
Một Bluetooth server socket được sử dụng để lắng nghe cho đến yêu cầu kết nối Bluetooth socket từ thiết bị Bluetooth từ xa. Để cho hai thiết bị Bluetooth được kết nối, người ta phải hành động như một máy chủ (lắng nghe và chấp nhận yêu cầu đầu vào) và người kia là một khách hàng (bắt đầu các yêu cầu kết nối đến máy chủ). Sau hai được kết nối, thông tin liên lạc giữa máy chủ và thiết bị lưu trữ được xử lý thông qua một Socket Bluetooth ở cả hai đầu.
Để có hành động Bluetooth Adapter của bạn như một máy chủ, gọi phương thức listenUsingRfcommWithServiceRecord của mình để lắng nghe yêu cầu kết nối đến. Pass trong một tên để xác định máy chủ của bạn và nhận dạng uni¬versally duy nhất (UUID). Phương pháp này sẽ trả về một đối tượng BluetoothServerSocket - lưu ý rằng các khách hàng Bluetooth Ổ cắm kết nối với người nghe này sẽ cần phải biết UUID của nó để kết nối.
Gọi chấp nhận trên Socket Server, tùy chọn đi qua trong một thời gian chờ, để có nó bắt đầu nghe cho kết nối. Socket Server bây giờ sẽ chặn cho đến khi một khách hàng Bluetooth socket từ xa với một nỗ lực hợp UUID để kết nối.
Nếu một yêu cầu kết nối được làm từ một thiết bị điều khiển từ xa mà chưa được ghép nối với các adapter Bluetooth cục bộ, người dùng sẽ được nhắc nhở để chấp nhận một kết nối yêu cầu trước khi chấp nhận trả lại cuộc gọi. Nhắc nhở này được thực hiện thông qua một thông báo, hoặc một hộp thoại, như thể hiện trong hình 16-3.
đang được dịch, vui lòng đợi..
