我正在開發一個充當BLE中心的iOS應用程序。 如果檢測到外圍設備,我想重新啓動應用程序,即使它終止。無法重新啓動作爲BLE中央管理器的iOS應用程序
我按照蘋果編程指南的「在背景中執行長期操作」一節創建了我的中央管理器。 https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/CoreBluetoothBackgroundProcessingForIOSApps/PerformingTasksWhileYourAppIsInTheBackground.html#//apple_ref/doc/uid/TP40013257-CH7-SW1
但是,僅在特定條件下重新啓動。
- 啓動[RUN]在Xcode和進入研究背景推iPhone,然後選擇[停止]的[HOME]上的Xcode
在這種情況下,我的應用程序重新開張([應用didFinishLaunchWithOption]和[中央willRestoreState]被稱爲)在外圍設備開始廣告後。
在下面的情況下,我的應用即使在外圍設備開始廣告後也不會重新啓動。
- 開始[RUN]和上的Xcode [STOP](停止時的應用程序。在前景)
- 當應用程序。在後臺,雙擊iPhone上的[HOME]並終止該應用程序。向上滑動。
- iPhone 的重啓
後,我創建並正常啓動我的中央管理器。
NSDictionary *options = @{
CBCentralManagerOptionRestoreIdentifierKey : kBlitCentralMgrRestoreIdKey,
CBCentralManagerOptionShowPowerAlertKey : @YES,
};
self.centralMgr = [[[CBCentralManager alloc] initWithDelegate:self queue:nil options:options] autorelease];
如果您有任何想法來解決該問題,請讓我知道。 我很感謝你的合作。
比你的回覆。我在[http://stackoverflow.com/questions/21446721/wake-up-ios-app-when-a-bluetooth-device-is-near-by?rq=1](http://stackoverflow.com .com/questions/21446721/wake-up-ios-app-when-a-bluetooth-device-is-near-by?rq = 1)和[http://stackoverflow.com/questions/31070459/launching-ios -ble-中央應用程序上iphone-重啓?RQ = 1](http://stackoverflow.com/questions/31070459/launching-ios-ble-central-application-on-iphone-reboot?rq=1) –