我有App与蓝牙设备通信,获取数据和在应用程序中显示。
我希望在App处于后台时执行相同的处理。每10分钟执行一个方法,扫描设备,连接设备,读取信息,然后更新UI。
我添加了" applicationDidEnterBackground" Method.It执行最多3分钟然后停止。
- (void)applicationDidEnterBackground:(UIApplication *)application {
NSString* accessToken = [[WSUtils sharedObject] getAccessToken];
if(accessToken != nil)
{
[[WSBlueToothDevicesViewController sharedObject] registerDeviceSearchTimer];
}
UIApplication *app = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier bgTask = 0;
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
}];
NSLog(@"backgroundTimeRemaining: %.0f", [[UIApplication sharedApplication] backgroundTimeRemaining]);
}
有没有人知道如何在特定时间间隔的背景下执行方法?