الحصول على السرعة التي تتحرك الجهاز
-
19-09-2019 - |
سؤال
انا استخدم CLLocation.speed
للحصول على سرعة الحركة تتحرك ولكني أحصل على 0 في كل مرة. حاولت
speed = ([newlocation getDistanceFrom:oldlocation]/[newlocation.timeStamp timeIntervalSinceDate:oldlocation.timeStamp])
المشكلة هي أنها تعطي السرعة الخطأ مرة واحدة في حين.
المحلول
هناك القليل من التكوين الذي سيساعدك:
CLLocationManager
لن ترسل لك تحديثا ما لم يتحرك المستخدم خارج دائرة في موقعه الحالي. يمكنك التحكم في دائرة نصف قطر الدائرة (اجعلها أصغر) حتى تحصل على المزيد من التحديثات المكررة. يرى عن بعد.CLLocationManager
لديه عنصر تحكم دقة، والتي تريد تعيينها على أفضل مستوى لها. يرى droiremuracy..
أفضل رهان هو ببساطة حساب هذه "السرعة" باستمرار واستخدام مرشح ضعيف تمرير ضعيف لتهدئة النتائج.
انظر أيضا هذا السؤال لمزيد من المعلومات: iPhone Corelocation: كيفية الحصول على السرعة الأكثر دقة.
لا تنتمي إلى StackOverflow