Bluetooth Düşük Enerji desteğini belirleme


11

Ticari uygulamalar için Android tabletler üzerinde bir fizibilite çalışması yapıyorum. Bluetooth Düşük Enerji bağlantısı gerektiren bir ürünüm var.

BLE'yi desteklemesi gereken bir Nexus 7 tabletim var, ancak bu konuda fazla bilgi bulamadım. Tabletin BLE olup olmadığını ve etkinleştirilip etkinleştirilmediğini kontrol etmenin bir yolu var mı?


Teardown raporlarına ve wikipedia'ya göre Nexus 7, BTLE özellikli bir Broadcom yongasına (AzureWave AW-NH665 ile eşleştirilmiş Broadcom BCM4330) * sahiptir. Ama tüm gerekli SW katmanlarının orada olduğunu bilmiyorum. Broadcom ayrıca açık kaynak olarak bir BT API yayınladı, ancak bilmiyorum ki paket Nexus'a dahil. Biraz uzun bir atış, ancak Nexus 7 kontrolüne sahip biri com.broadcom.bt.le.api -package dahil olabilir mi? Ben de duymak

Geçen hafta com.broadcom.bt.le paylaşılan kütüphanesinin üzerinde olmasını umduğum bir Google Nexus 7 aldım ancak paylaşılan uygulamaların eksik olduğu için örnek uygulamaların Nexus 7'de çalışmadığını bulmak hayal kırıklığına uğradı. SDK ve ASUS'un sahibine yanıt vermeden e-postayla gönderdim. Daha sonra google play desteğini e-postayla gönderdim ve bana söyleyebileceği tek şey zaten bildiğim bilgilerdi, Nexus 7'nin kağıt üzerinde Bluetooth 4.0 olan ve iPhone 4s ve yeni iPad'de kullanılan aynı yonga seti olan bir Broadcom BCM4330 yonga setine sahip olduğunu ve Bluetooth 4.0 uyumlu olduğunu unutmayın. Yanıt vermedim si

Yanıtlar:


7

Şu andan itibaren, BLE desteğinin kontrolü spesifikasyonları inceleyerek ve Google'da (bildiğim kadarıyla) arama yaparak manuel olarak yapılmalıdır.

Android 4.0'da Stackoverflow: Bluetooth Smart (4.0) / GATT desteği ile ilgili bu soruya bakın.

Android'in Bluetooth 4.0'ı (LE) Android-4.0'a kadar desteklemediğini belirtiyor (belki Jelly Bean 4.1 sonrası, Nexus 7 sekmesi bunu öneriyor). Üreticiler BT LE'ye erişime izin vermek için kendi API'larını eklemelidir (örneğin, bu uygulama Motorola ile sınırlıdır). Bu nedenle, kilometreniz 4.0'a kadar farklı telefonlarda değişebilir. Casio'nun Bluetooth LE özellikli saati de sınırlı (resmi) uyumluluğa bir örnektir (bu arada iPhone 4S'den bile bahsedilmiyor).

En iyi tahminim 4.1'e sahip daha fazla cihazla sorunun kendi kendine çözeceği ve bunu gösteren uygulamaları bulabileceğinizdir.

İşte üreticilerin listeleri:


Bilgi için teşekkürler, bu beni araştırmamı başlatmalı.
dijital

FYI Nexus 7'de Broadcom'un BCM4330'u (iPhone 5'teki ile aynı yonga seti) var, ancak yerel kitaplık olmadığı için Broadcom'un BLE SDK'sından örnek uygulamalar yüklenmeyecek.
Barend

Android 4.2'de bazı haberler var: Android 4.2, Android cihazlarla kullanım için optimize edilmiş yeni bir Bluetooth yığını sunuyor. Google ve Broadcom işbirliği ile geliştirilen yeni Bluetooth yığını, BlueZ tabanlı yığının yerini alıyor ve gelişmiş uyumluluk ve güvenilirlik sağlıyor. Kaynak
ce4

Benim S3 mini (4.1.2) üzerinde broadcom sdk denedim ve uygulama "hiçbir yöntem bulunamadı" çöküyor: bluetoothDevice.getDeviceType ...
fvisticot

4

Mevcut tüm Android API'larında Bluetooth LE desteği yoktur (yazma sırasında API 4.1, Android 4.1'e kadar). Telefon üreticileri Bluetooth çip üreticilerinin yığınlarını kullanmak zorundadır. Dahili LE çipine sahip olan ve aslında onu kullanan tek telefon Motorola Razor. ICS güncellemesinden sonra Bluetooth LE eşleştirmesinin artık çalışmadığını bildiren raporlar var.

Bu nedenle, resmi Android API'sinde Bluetooth LE desteği olana kadar bir cihazı LE desteği için sorgulamak ve kullanmak için uygun bir yol yoktur.

Linux çekirdeğinde IIRC'nin henüz (kararlı) Bluetooth LE API'si yok.


Bu cevap şimdi güncel değil.
Dan Hulme

2

Son olarak Android 4.3 ile işletim sisteminde BTLE desteği var. Tek tek aygıtlar için desteğin eklenip eklenmediğini görmek için 4.3 güncellemesini beklemeniz gerekir. Şimdilik bir Nexus 4 iyi olması gereken tek cihaza benziyor. (BTLE geliştirmesi için bir tane sipariş ettim.) BTLE'ye hazır olarak satılan ve gerekli donanıma sahip olduğuna inanılan bazı cihazlar gerçekten işe yarayacak gibi görünmüyor. örneğin, orijinal Nexus Google'a göre güncellemeyi almıyor gibi görünüyor.


2

Android 4.3 (API Seviye 18) artık BLE'ye erişmek için bir API sunduğuna göre, üçüncü taraf uygulamaların bu sistem özelliği için bir kontrol gerçekleştirmesi mümkündür. Bunu sizin için kontrol edebilen bir uygulama Bluetooth LE Tarayıcısıdır . Ana etkinliğin üst kısmında, cihazınızda BLE özellikleri varsa "Destekleniyor" ifadesi görüntülenecektir.

Uygulama açık kaynaklı olduğundan GitHub'daki uygulama ayrıntılarına göz atabilirsiniz . BLE'nin desteklenip desteklenmediğini belirlemek için kullanılan kodu kontrol ettim ( burada meraklılar için) ve resmi Android yönergelerine göre doğru görünüyor , bu yüzden denemediğiniz sürece uygulamanın BLE desteğini yanlış bildireceğinden şüphelenmek için hiçbir nedenim yok "sahte" denemek için cihazınızı değiştirin. Her durumda, Nexus 5 cihazımda doğrudur. Bu kontrolü gerçekleştirmeye çalışan uygulamalar elbette yalnızca Android 4.3 veya sonraki sürümlerinde yararlı olacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.