2011-04-27 61 views
1

我在想這個問題的答案是否定的,但是有誰知道如果在iOS的後臺可以維護藍牙連接?我在想我可以用有限任務的背景API保留它,但是我還沒有發現任何指示是否正確的東西。另一種選擇是使用GPS通知,並在每次應用獲取位置更改通知時重新連接。藍牙可以用於iOS多任務嗎?

回答

0

你是對的。這是一個沒有。 但是,如果您使用位置更改通知來喚醒您的應用程序,則可能需要很短的時間才能使用藍牙。

0

我認爲應該保持藍牙連接,但是如果你的藍牙應用程序不是前臺應用程序,它將不會收到任何數據/命令,當它變成前景時。

0

這是可能的,我使用這個技巧來允許應用程序使用iBeacons的前臺API來允許應用程序的範圍,即使應用程序在後臺。

爲了適用於iBeacons,它使用高功率API,因此只能在應用程序處於前臺時運行,並且一旦應用程序進入後臺時停止所有代理程序的調用。

通過播放無聲音頻文件並向您的plist添加AirPlay功能,它可以讓您的應用在後臺運行,就像它在前臺一樣。

我不確定它是否適用於您的情況,但由於iBeacon使用核心藍牙和核心定位框架,因此可能只是按照您的要求進行操作。

http://yifan.lu/2013/12/17/unlimited-backgrounding-on-ios/

注意,雖然這一招還沒有在iOS8上測試5修補蘋果有可能,他們在更新會。

0

如果您使用的是iBeacons,當您進入/退出信標區域時,有內置的API用於處理,並且在應用程序進入睡眠狀態之前,您通常會在此時間距離達到約5秒鐘。從理論上講,你可以開始一個後臺任務w /到期處理程序,它可能允許你在後臺運行約30秒,但我沒有證實這是事實。我知道後臺任務可以在正常CLRegions在後臺進入/退出時啓動,CLRegions和CLBeaconRegions在區域監控方面在功能上沒有區別,所以如果我不得不猜測,我會說這是更多 - 可能可能。