我在Android應用程序,它從一個插座連接到藍牙接口,數據中繼工作。對於舒適的溝通我已經實例化,我想同時收聽在秒。此外,我希望服務能夠對諸如藍牙或WiFi連接丟失等事件做出反應。但是,服務應該運行直到在服務器接口上收到特定的退出命令。同時收聽多個流的服務
到目前爲止,我用兩個線程,但我無法弄清楚如何符合我的要求。
SOLUTION
的解決方案是使用一個普通Service
代替IntentService
的。在我的服務中,我使用了兩種異步方法,分別是AsyncTasks
,用於連接到藍牙設備和服務器。一旦連接建立,我開始使用阻止readLine()
方法偵聽數據的兩個線程。在服務中,我只是不做任何事情,使主線程免於處理藍牙連接丟失。一旦用戶希望斷開連接,服務就會被我的活動終止。
不要使用'IntentService',而應該使用普通的'Service'。 – waqaslam