Android: Доступ к уже парному соединению

У меня уже есть вопрос на доступе к существующим парным подключениям Bluetooth...

Как удаленный сервис может обнаружить уже парное соединение и ждать передачи файлов от него?

Во всех комментариях stackoverflow, на учебных руководствах, там всегда показывают электронные книги или на Google, как создать новое соединение с помощью сокетов и так далее, но никакого слова о доступе к существующему.

Действительно ли это возможно вообще? Если да, можно также говорить/показывать мне как? В данный момент у меня нет подсказки, как начать с ним.

Было бы большим, если кто-то может помочь мне начать :)

6
задан poeschlorn 26 May 2010 в 09:21
поделиться

1 ответ

Сопряжение просто означает, что два устройства аутентифицировали друг друга. Это не означает открытого сокетного соединения.

После создания пары происходит соединение: одна сторона создает серверный сокет, а другое устройство может затем подключиться к нему с помощью клиентского сокета.

Я думаю, что путаница возникает из-за смешения двух понятий: «уже соединено» с «уже связано». Сопряжение просто означает, что они аутентифицированы. Устройства не могут подключиться без первого спаривания, но спаривание не соединяет устройства.

Чтобы заставить приложение ждать передачи файла, нужно сделать что-то вроде этого:

  • Сделать устройство A сопоставляемым.
  • На устройстве B выполните поиск ближайших устройств и, когда вы найдете A, выполните сопряжение с ним (здесь вы вводите секретный PIN-код, который должен совпадать на двух устройствах).
  • Теперь, когда устройства сопряжены, запустите ваш файловый сервер на устройстве A или B (затем он создает серверный сокет и ожидает входящих подключений)
  • Затем инициируйте подключение к файловому серверу с другого устройства.
  • Когда сокеты открыты, данные могут передаваться.
2
ответ дан 17 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: