Автоматическое соединение Bluetooth с сопряженными устройствами - PullRequest
7 голосов
/ 23 сентября 2011

Я новичок здесь, и я прочитал большую часть вашего поста, и до сих пор не могу найти решение своей проблемы.

Я пишу приложение для Android 2.2, используя Bluetooth для подключения к концу-Устройство.У меня есть список сопряженных устройств, и я могу подключить свой Android-планшет к каждому из моих уже известных устройств.

Я хочу автоматически подключиться к конечному устройству, как только Android-Планшет (между прочим, Мастер во всем общении) обнаруживает, что одно из известных парных устройств находится в радиусе действия.

Одна из возможностей - постоянно опрашивать и пытаться увидеть, кто рядом со мной, но это будет стоитьдлительное время автономной работы, и если я иду в радиусе действия с одним из конечных устройств, а мой Android-планшет не находится в середине процесса опроса, я не получу автоматическое соединение;Мне пришлось бы подождать до следующего цикла опроса.

Есть ли какое-нибудь решение проблемы?

Я бы в целом работал так, как BT-гарнитуры и мой удобный: - /

Спасибо за ваши ответы и надеемся, что мы справимся!

1 Ответ

0 голосов
/ 08 апреля 2015

Я не уверен, работает ли это решение или нет.Идея состоит в том, чтобы получить все сопряженные устройства и пройти через него и попытаться подключиться, используя MAC-адрес этого устройства

    String macAddress;     
    for (BluetoothDevice device : pairedDevices) {

    BluetoothSocket bluetoothSocket = null;
    try {
        if (bluetoothSocket == null || !bluetoothSocket.isConnected()) {
        bluetoothSocket = device.createRfcommSocketToServiceRecord(MYUUID);
        mBluetoothAdapter.cancelDiscovery();
        if(!bluetoothSocket.isConnected()){
            bluetoothSocket.connect();
        }
        if (bluetoothSocket.getInputStream() != null && bluetoothSocket.getOutputStream() != null) {
            macAddress = device.getAddress();
        }
     }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...