加速度計と位置の更新を別のスレッドで取得する必要がありますが、メインスレッドでは取得しません。また、他の UI タスクを中断してはなりません。
位置情報の更新と加速度計の更新は別々に実行する必要があります。これら2つを別々に実行する方法は?
加速度計の更新を取得した後、いくつかのタスクを実行しており、場所の更新後にいくつかの他のタスクを実行しています。しかし、これらが互いに干渉していることに気付きました。
場所の更新には、デリゲート メソッドを使用しています。
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
/// sending location details to server.
}
加速度計の更新には、デリゲート メソッドを使用しています。
[motionManager startAccelerometerUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMAccelerometerData *accelerometerData, NSError *error)
{
if (!error) {
/// Calculating some values and sending those details to server.
}
}];