ios5 - iPhone 上的 Nike+ GPS 如何在后台接收加速度计更新?

标签 ios5 accelerometer background-process

适用于 iOS 5 的全新 Nike+ GPS 应用程序能够在后台处理加速度计事件(从而允许室内运行机跟踪)。这怎么可能?当我将应用程序置于后台时,它会停止接收事件。我使用标准的 UIAccelerometer API。

最佳答案

为了提供这个问题的答案,即使它已经自我回答......

“如果您使用更新的 Core Motion API,您可以在后台接收更新。”

这是一个例子:

- (void)startAccelerationCollection {
    [self.motionManager startAccelerometerUpdatesToQueue:[[NSOperationQueue alloc] init]
                                             withHandler:^(CMAccelerometerData *data, NSError *error) {
        dispatch_async(dispatch_get_main_queue(), ^{
            [self.accelerometerReadings addObject:data];
        });
    }];
}

关于ios5 - iPhone 上的 Nike+ GPS 如何在后台接收加速度计更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8716466/

相关文章:

ios - AVAudioPlayer 暂停后恢复背景音频

ios - 哪里保存了无法重新创建的下载数据?

dart - Flutter:在后台获取地理位置

unit-testing - 在 .net 核心 Ihostedservice 上编写单元测试的好做法是什么?

iphone - date From String 返回不正确的日期

iphone - UIButton 复选框

android - 使用加速度计计算速度

android - 加速度计传感器导致损失运行到服务中

accelerometer - 使用加速度计计算距离

linux - 如何防止在 Linux 中关闭 SSH 客户端后停止后台进程