6+ を使用して、CoreMotion の新しい CMAltimeter を使用して、相対高度と圧力を読み取ろうとしました。ただし、コールバックは決して発生しません。代わりに加速度計、ジャイロ、磁力計を使用する非常によく似たセットアップがあります。それらはすべて正常に機能しているようです。
そこに誰かが読書を得ることができたのだろうかと思っていましたか?
- (void)viewDidLoad {
[super viewDidLoad];
if([CMAltimeter isRelativeAltitudeAvailable]){
CMAltimeter *altimeterManager = [[CMAltimeter alloc]init];
[altimeterManager startRelativeAltitudeUpdatesToQueue:[NSOperationQueue mainQueue] withHandler:^(CMAltitudeData *altitudeData, NSError *error) {
// This never fires.
NSString *data = [NSString stringWithFormat:@"Altitude: %f %f", altitudeData.relativeAltitude.floatValue, altitudeData.pressure.floatValue];
NSLog(@"%@", data);
self.altimeterLabel.text = data;
}];
NSLog(@"Started altimeter");
self.altimeterLabel.text = @"-\n-";
} else {
NSLog(@"Altimeter not available");
}
}
これをちょっと散歩してみましたが、この辺りで増減する高度は 1 階しかありません。