ibeacon API を使用して、バックグラウンドでビーコンを監視するアプリを開発しました。コアの場所と bluetooth を使用するため、機能から場所、Bluetooth 構成を有効にしました。したがって、アプリを実行した後、バックグラウンドで範囲が広がりますが、アプリが終了するまでの5〜10分後、アプリを起動すると再びスプラッシュとログインページが表示されるため、グーグルの後、アプリがバックグラウンドで実行されていることを知りました延長時間。
アプリの終了を克服するために、メソッドで以下のコードを使用し、applicationDidEnterBackground でそのメソッドを呼び出しています。
-(void)startBackgroundTask
{
if(bgTask != UIBackgroundTaskInvalid)
{
[[UIApplication sharedApplication] endBackgroundTask:bgTask];
bgTask = UIBackgroundTaskInvalid;
}
bgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[self endBackgroundUpdateTask];
NSLog(@"your time is over");
//you can call start once again to get more time
}];
}
-(void) endBackgroundUpdateTask
{
[[UIApplication sharedApplication] endBackgroundTask: bgTask];
bgTask= UIBackgroundTaskInvalid;
[[NSNotificationCenter defaultCenter]
postNotificationName:@"TimerOutStartMonitering" object:nil];
}
上記のコードを使用してデバッグした後、UIBackgroundTaskInvalid. 両方のタスクを達成するにはどうすればよいですか 1) バックグラウンド時間が終了したら、アプリを終了しないでください。2) ビーコンの測距が止まらない。
出来ますか?私を助けてください。