2016-05-31 18 views
2

私は、デバイス動作を検出するためにCore Motion Frameworkを使用しています。CMMotionActivityManagerが自動車モードを検出できません

すなわちウォーキングは、実行中、自動車は、文房具

主な問題は、私は非常に正確にウォーキングやランニングを検出することができる午前ですが、私のデバイスは、自動車モードを検出することができません。

は、ここで私は最終的には複数のデバイスで同じアプリをテストすることによって、答えを得た私のコ​​ード

var motionActivityManager: CMMotionActivityManager? 
if CMMotionActivityManager.isActivityAvailable() { 
      motionActivityManager?.startActivityUpdatesToQueue(NSOperationQueue.currentQueue()!, withHandler: { 
       activityData 
       in 
       if activityData!.walking == true { 
        self.lblActivityStatus?.text = "Walking" 
       } else if activityData!.running == true { 
        self.lblActivityStatus?.text = "Running" 
       } else if activityData!.automotive == true { 
        self.lblActivityStatus?.text = "Automotive" 
       } else if activityData!.stationary == true { 
        self.lblActivityStatus?.text = "Stationary" 
       } 
       print("Activity Data: ", activityData) 
      }) 
     } 
+0

携帯電話が自動車モードになっていますか? (たぶんそれはそれを検出しないでしょう) –

+0

はい私は車を運転している間にそれを試してみました。静止しているか歩行しているかを示します。 –

+0

車を運転しているからといって、電話機がこれを正しく検出しているとは限りません。電話で正しく検出された場合、他のアプリとクロスチェックしましたか? –

答えて

0

です。 第1世代デバイスのm7チップが特に "Automotive"モードで正しく動作していません。 私は5sとipad airでテストしていましたが、検出する必要があるようにAutomotiveモードを検出していませんでした。しかし、iphone 6 Plusで同じアプリをテストすると、うまくいきました。 この問題はフレームワークではなくデバイスで発生していました。

関連する問題