我開發來自三個活動和一個服務構成的竹葉提取Android應用: - 第二個連接到設備 - - 第三個寫的屏幕 上通信結果 - 掃描設備 第一個內的服務有一些功能連接到設備,檢查連接,自動重新連接等等,這項服務是一個啓動服務和綁定到每個活動(第一個應用程序啓動此服務)服務和三項活動,啓動服務是否正確?
在一些教程,我看過在這種情況下,使用的是未啓動的服務,但是是綁定服務。但是我不知道自己,當我們在兩項活動之間切換時,如果服務不是「開始」的服務,是否存在系統關閉服務的風險,因爲在活動之間切換服務沒有任何約束?
你很清楚謝謝!爲所有應用程序的活動提供可能性以與相同的可調設備進行對話的最佳方式?我必須以某種方式記住對設備的引用。但在這一點上,我不明白在Android開發人員的例子中,你鏈接他們使用的服務..爲什麼他們不在活動中進行scansion? – aeroxr1
該示例使用該服務來顯示如何使用服務執行BLE掃描。它還顯示BluetoothDevice是一個Parcelable。 –
您可以將您的BluetoothDevice保存到傳遞給Activity.onSaveInstanceState的包中。將BluetoothDevice保存到磁盤是個不錯的主意。一旦應用程序關閉,您應該認爲任何BluetoothDevice無效。相反,掃描一個新的。您可以使用BluetoothLeScanner.startScan(列表,ScanSettings,ScanCallback)過濾掃描。但是UUID可以被持久化(字符串)。 –