9

После нескольких часов исследований по теме BLE и Android, единственное, что я нашел, это большой беспорядок. Разработка приложения для iOS, использующего BLE, была довольно простой - одна структура и несколько документов. Теперь я должен написать приложение для Android Jelly Bean 4.2.2 (приложение может работать только на одном устройстве, которое в настоящее время поставляется только с 4.2.2), которое должно обнаруживать и подключаться к устройствам BLE.API с низкой энергией Bluetooth для Jelly Bean 4.2

Я выяснил, что до 4.1 стек bluetooth на android называется BlueZ, но с 4.2 Google изменен на стек от Broadcom. Я знаю, что с 4.3 есть официальная и встроенная поддержка Bluetooth Low Energy в Android, но приложение должно работать под 4.2.2.

После большого исследования я не нашел никакой документации о стеке Broadcom. Может ли кто-нибудь указать мне ссылку (которая все еще работает и не заканчивается ошибкой 303)? Имеет ли стек поддержку BLE и кто-то знает учебник по этому поводу или может предоставить несколько строк кода примера?

Большое спасибо за любые входы! Я действительно потерял в этом беспорядке

Linard

+0

Ровно. С 4.3 это не проблема, и SDK очень похож на CoreBlutooth от Apple для iOS. Я сделал тестовое приложение для 4.3, которое должно сканировать устройства, но у меня еще нет устройства с 4.3. Но в конце приложение должно работать под 4.2.2. –

+1

Я не понимаю, почему кто-то поставил чип BLE на устройство, на котором установлена ​​ОС, которая не может его использовать. – njzk2

+1

И я не понимаю, почему Google не выпустил BLE SDK 1 или 2 года назад вместо того, чтобы сменить стек 3 раза в 3 версиях Android –

ответ

11

После 3/4 года, и многие взгляды, которые я хочу ответить на вопрос себе:

Мы говорим с китайским производителем, но они не могли дать нам дату выхода JB 4.3 (на данный момент это выглядит что требуется обновление оборудования). Поэтому мы искали другое решение, и мы нашли одно: BlueKitchen GmbH (http://bluekitchen-gmbh.com), небольшая компания, которая разработала BTStack, стек Bluetooth с открытым исходным кодом для взломанных iOS-устройств и встроенных систем, изменила свой существующий стек, чтобы сделать его совместимым с нашими определенного Android-устройства. Участие в решении - это укоренение устройства, замена исходного стека Bluetooth на наш пользовательский, выключение устройства, а затем доставка его нашим клиентам. Поскольку стек работает как системная служба, независимая от приложения, приложение не нуждается в каких-либо правах root и может быть легко установлено и обновлено через Google Play Store или консоль ADB без укоренения. Приложение разговаривает со стеком через соединение сокета и поэтому может использовать простой Java-код. Внутри приложения нужно различать пользовательский стек и устройство под управлением JB 4.3+ с нативным стеком BLE. Но поскольку протокол BLE диктует API, все очень похоже.

Не стесняйтесь спрашивать меня о реализации этого стека внутри приложения и обратитесь в компанию BlueKitchen, если вас интересует эта версия стека для устройства iSafe Innovation 2.0 или Ruggear RG220 или если вы хотите, чтобы стек для другого устройства Android (с BLE чип)

Я надеюсь, что вы можете найти решение слишком

Linard

1

Вы могли бы работать с Samsung BLE SDK, который теперь осуждается AFAIK. Если я помню, он использовал либо TI, либо Broadcom. Конечно, это будет работать только на некоторых устройствах Samsung.

Я написал обертку для BLE, которая переключилась между SDK от Samsung до 4.3 + SDK в зависимости от доступности, но это было для клиента, поэтому я не могу его отпустить.

+0

Спасибо за ваш быстрый комментарий. Устройство своеобразное: http://www.ruggear.com.sg/products/isafe-innovation-2-0 , и я не думаю, что он поддержит SDK Samsung. Где я могу найти дополнительную информацию о TI и Broadcom SDK? –

+0

эта ссылка упоминает 4.1.2 как версию для Android, кстати, не 4.2.2 – njzk2

+0

Я знаю. Производитель подтвердил, что устройство поставляется с 4.2.2, но спасибо @ njzk2 за ваши комментарии –