Tôi đang cố gắng tạo một ứng dụng sử dụng API năng lượng thấp của Bluetooth mới của Android. Đối với điều này, tôi đã bắt đầu với mẫu BLE đi kèm với API cấp 18 .
Khi tôi đọc được rằng Android không thể hoạt động như một Thiết bị ngoại vi, tôi đặt điện thoại Android ở chế độ trung tâm, quét các thiết bị BLE xung quanh nó. Vì mục đích này, tôi đã thực hiện một số thử nghiệm với Nền tảng Bắc Âu mô phỏng Cảm biến tim. Mọi thứ hoạt động một cách hoàn hảo!
Sau đó, tôi thử chọn một chiếc iPhone (iOS 7 beta 4) và đặt nó ở chế độ Ngoại vi và mô phỏng cảm biến Nhịp tim như thử nghiệm trước. Ứng dụng Android có thể nhìn thấy thiết bị và kết nối với thiết bị đó. Nhưng sau khi kết nối hoạt động, 2 thiết bị sẽ ngắt kết nối với nhau trong 3-4 giây. Ngoài ra, khi tôi gọi DiscoverServices () ở phía Android, không có lệnh gọi lại nào được kích hoạt! Trong một số trường hợp, thiết bị Android nhận được sự kiện "Đã kết nối" ngay cả khi chip Bluetooth iOS đang Tắt. Điều này rất lạ. Để chứng minh điều đó, tôi đã đặt Nordic Board ở chế độ Trung tâm và tôi đã có thể kết nối chính xác với thiết bị iOS mà không gặp vấn đề gì.
Nó có thể là gì? Có một số hạn chế trên Android hoặc iOS không cho phép kết nối từ Android với iOS hoặc viceversa?
Cảm ơn.
CHỈNH SỬA: Sau một số thử nghiệm khó, tôi đã nêu ra một vấn đề trên trang AOSP. Nó có thể được kiểm tra ở đây