Tôi đã gặp sự cố với tính toàn vẹn dữ liệu bằng cách sử dụng ổ cắm RFCOMM qua Bluetooth trong Android. Tôi không gặp bất kỳ sự cố nào khi kết nối nhưng dữ liệu tôi nhận được bị cắt xén và không giống như dữ liệu được gửi. Dữ liệu được gửi bởi thiết bị RS232 qua bộ điều hợp Bluetooth, mà điện thoại kết nối với. Không có sự cố với bộ điều hợp vì dữ liệu được nhận đúng cách nếu tôi kết nối với máy tính xách tay.Lỗi Transmisison dữ liệu bằng SPP qua Bluetooth trên Android
Kết nối Bluetooth của tôi được xử lý dựa trên ứng dụng mẫu BluetoothChat được tìm thấy tại trang web dành cho nhà phát triển Android (http://developer.android.com/resources/samples/BluetoothChat/index.html), không có thay đổi. Dữ liệu được gửi là văn bản thuần và các ký tự điều khiển (được xóa bỏ trước khi hiển thị cho người dùng). Vấn đề cụ thể mà tôi có là một số văn bản bị thiếu, một số văn bản được lặp lại, v.v. Điều thú vị là nếu tôi kết nối với máy tính bằng ứng dụng đầu cuối và nhập vào đó, dữ liệu được truyền đi tốt. Ngoài ra, nếu tôi kết nối với thiết bị bằng ứng dụng GetBlue, dữ liệu sẽ được nhận tiền phạt.
Vì vậy, tôi đoán vấn đề là gì GetBlue có thể làm khác để xử lý việc truyền dữ liệu Bluetooth của nó, hoặc có cách nào khác nhận dữ liệu Bluetooth qua ổ cắm RFCOMM trên Android không?
Tôi nghĩ rằng một phần của vấn đề phải làm với luồng, vì chức năng đọc trong luồng nằm trên một chuỗi riêng biệt. Ngoài ra, dữ liệu đang được gửi nhanh chóng. – MortalToaster