Я разрабатываю приложение для Android. Просто общие вопросы, если это возможно, чтобы подключиться к устройству, которое не подлежит открытию публично?подключиться к не обнаруживаемому устройству Bluetooth
Заранее спасибо.
Я разрабатываю приложение для Android. Просто общие вопросы, если это возможно, чтобы подключиться к устройству, которое не подлежит открытию публично?подключиться к не обнаруживаемому устройству Bluetooth
Заранее спасибо.
По понятным причинам я предполагаю, что вы имели в виду ответ на поиск устройств с другого устройства. Некоторые производители также называют это видимым. В зависимости от производителя устройства некоторые устройства позволяют включать Bluetooth и функцию видимости/обнаружения для отключения. Итак, если вы уже знаете адрес Bluetooth (MAC-адрес) устройства, к которому вы можете напрямую подключиться, даже если устройство не доступно для обнаружения/видимости. На практике это хорошо, многие производители допускают это, когда устройство видимо только в определенные периоды, например, во время процесса анализа, или имеют явный вариант меню, чтобы включить функцию обнаружения на определенный период. Это хорошая практика с точки зрения безопасности, поскольку она препятствует отслеживанию/взлому устройства.
iPhone, например, по умолчанию не доступен для обнаружения, когда Bluetooth включен (но вы все еще можете подключиться к нему), его можно обнаружить только при входе в меню Bluetooth из меню настроек.
Если вы уже подключились к устройству, то можно подключиться к нему снова, даже если он не находится в режиме обнаружения. Смотрите этот пост: programmatically-connect-to-paired-bluetooth-device
// use paired devices or create a BluetoothDevice using a mac address
//Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
BluetoothAdapter myAdapter = BluetoothAdapter.getDefaultAdapter();
BluetoothDevice remoteDevice = myAdapter.getRemoteDevice("00:00:00:00:00:00");
BluetoothSockt btSocket = remoteDevice.createRfcommSocketToServiceRecord(UUID);
btSocket.connect();
//get input and output stream etc...
Можно по стандарту Bluetooth. Я делал это много раз, связывая два модуля от Bluegiga вместе, просто используя MAC-адрес, который я знал раньше времени.
Android позволит вам сделать это с помощью createInsecureRfcommSocketToServiceRecord