2014-01-23 63 views
0

就像主題一樣。我們是一些試圖使用藍牙低功耗實現廣播回放的開發者,但我們找不到任何東西。BLE可以實現廣播回放嗎?

我們知道使用startDiscovery()註冊接收者是可能的,但這似乎不適用於BLE。

這是我們錯過的或者是否有解決此問題的解決方法?只要有設備可用於連接,我們就想在隱藏的應用程序上敬酒。

我們不想在回調中使用startLeScan,但想要在Discovery上使用系統廣播。

此外,服務不是一個選項,因爲我們正在製作一個API,我們希望它很容易實現我們的代碼。

這是我們的嘗試:

BroadcastReceiver br = new BroadcastReceiver() { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     android.util.Log.i("Yeah", intent.toURI()); 
    } 
}; 

getApplicationContext().registerReceiver(br, 
new IntentFilter(BluetoothDevice.ACTION_FOUND)); 

mBluetoothAdapter.startDiscovery(); 
+0

請看看http://developer.android.com/guide/topics/connectivity/bluetooth-le.html – 2014-01-23 11:31:43

+0

我一直在那裏,有什麼你認爲我可能錯過了? – user2486126

回答

0

android.bluetooth.BluetoothAdapter.StartDiscovery()可以發現藍牙(不低能量)的設備。

android.bluetooth.BluetoothAdapter.startLeScan()用於發現藍牙低功耗(BLE)設備。

如果您想從BroadcastReceiver接收藍牙設備發現事件,則必須在android.bluetooth.BluetoothAdapter.LeScanCallback方法中使用Context.sendBroadcast。實現LeScanCallback是目前在Java Android API中接收BLE設備發現事件的唯一方法。