Вот сценарий:
Мне нужно написать приложение для Android для создания гнезда RFCOMM для ПК с Bluetooth-ключом (я тоже собираюсь написать сервер).
Мое требование заключается в том, что пользователю не нужно вручную подключать устройство.
На самом деле, с большим взломом, я использую createInsecureRfcommSocket .
Небольшой сценарий : у меня есть приложение Android, которое обменивается информацией с Linux-боксом с открытым сокетом RFCOMM. Я могу вручную установить PIN-код на устройствах (жесткое кодирование это опция)
Я ищу разные дороги:
Написать упаковщик JNI
Как было сделано здесь Максом Келлерманом, я могу написать слой JNI, чтобы сделать всю фазу спаривания. Это должно быть хорошим вариантом, но есть проблема:
NDK 4b не предоставляет библиотеки libbluetooth, поэтому -lbluetooth не работает, а также NDK v.3.
Параметры:
- Найдите NDK 1.5 (который включает в себя lib bluetooth). После нескольких дней поиска в Интернете я не смог узнать. Кто-нибудь имеет или знает, где я могу его найти?
- Скомпилируйте libbluetooth для Android самостоятельно и используйте их для -lbluetooth. Не повезло, я не могу их построить. Любой намек?
Использовать что-то, открываемое API-интерфейсами
Кто-нибудь знает, как я могу использовать createRfcommSocketToServiceRecord и заставить пользователя не связывать устройство вручную? Является ли это возможным? Как мне написать сервер?
Что-то, чего я не знаю
Может быть (конечно!) Есть кое-что, чего я не знаю. Может быть, я могу использовать что-то еще? Не RFCOMM? SDP
Может быть, я смогу выполнить сопряжение вручную с Android API?
Я надеюсь, что все было достаточно ясно, если не просто спросить. И опять же, так как это не первый раз, я в ваших руках:)
Спасибо за поддержку, ребята!