2016-05-19 8 views
1

現在、Apple Watchを使用してヨー角、ピッチ角およびロール角を計算しています。CoreMotionでデバイスモーションを計算中にApple WatchおよびSwiftがクラッシュする

ただし、Core Motion機能を使用しようとすると、アプリがクラッシュします。誰もこの問題を経験しましたか?

if motionManager.deviceMotionAvailable{ 
    self.referenceAttitude = self.deviceMotionManger.attitude 
    let currentAttitude : CMAttitude = self.deviceMotionManger.attitude 
    currentAttitude.multiplyByInverseOfAttitude(self.referenceAttitude) 
    self.Yaw.setText("Yaw " + String(format: "%.1f", currentAttitude.yaw)) 
    self.Pitch.setText("Pitch " + String(format: "%.1f", currentAttitude.pitch)) 
    self.Roll.setText("Roll " + String(format: "%.1f", currentAttitude.roll)) 
} 

else { 
    self.Yaw.setText("device motion is not" + String(motionManager.deviceMotionActive)) 
} 
+1

どのようなエラーでクラッシュしますか? – zoul

+0

下記のコメントは私の質問に答えました。他のセンサーはリンゴウォッチでは機能しません。 @ zoul –

答えて

2

アップルウォッチから入手できる唯一のコアモーションデータは生の加速度計データです。

時計は生のジャイロスコープデータ、生磁力計データ、または処理されたデバイスモーションデータを提供しません。 deviceMotionAvailableは常にfalseを返します。

暗黙のうちにアンラップされたYawラベルのコンセントがストーリーボードに接続されていない場合、クラッシュの場合、「致命的なエラー:予期せぬことにオプション値をアンラッピングしている間に見つかりませんでした。

+0

加速度計のデータを使ってデバイスのヨー、ピッチ、ロールを取得するにはどうすればよいですか? @PetahChristian –

+0

あなたはいくつかの[その他の回答](http://stackoverflow.com/search?q=accelerometer+device+motion+%5Bios%5D+answers%3A1)を試すこともできますが、実際の加速度計データ単独で。 [機能リクエストを送信する](https://bugreport.apple.com/)が必要な場合があります。 –

関連する問題