回答
需要初始化運動管理器,然後檢查motion.userAcceleration.y
值適當的加速度值(以米爲單位/秒/秒)。
在下面的例子中,我檢查0.05,我發現是一個相當體面的電話向前移動。我也等到用戶繪製之前顯着減速(-Y值)。調整設備MotionUpdateInterval將決定您的應用程序對速度變化的響應。現在它在1/60秒進行採樣。
motionManager = [[CMMotionManager alloc] init];
motionManager.deviceMotionUpdateInterval = 1.0/60.0;
[motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMDeviceMotion *motion, NSError *error) {
NSLog(@"Y value is: %f", motion.userAcceleration.y);
if (motion.userAcceleration.y > 0.05) {
//a solid move forward starts
lineLength++; //increment a line length value
}
if (motion.userAcceleration.y < -0.02 && lineLength > 10) {
/*user has abruptly slowed indicating end of the move forward.
* we also make sure we have more than 10 events
*/
[self drawLine]; /* writing drawLine method
* and quartz2d path code is left to the
* op or others */
[motionManager stopDeviceMotionUpdates];
}
}];
注意此代碼假設電話平放或稍微傾斜,並且用戶正在推進(遠離自己,或與移動電話)在縱向模式。
tks約翰,它工作得很好:D –
在背景中不起作用。要跟蹤Go上的用戶位置,我們必須將其啓用後臺。有什麼方法可以實現這一目標嗎? –
@MohammadAbdurraafay而不是在評論中問一個問題,你應該[問一個新的問題](http://stackoverflow.com/questions/ask)來獲得答案,幫助等。 –
- 1. iOS:檢測用戶移動手機左/右(不旋轉,但移動)
- 2. jQuery移動用戶代理檢測
- 3. 檢測如果用戶正在移動
- 4. iOS:檢測附近的應用用戶
- 5. Sitecore移動檢測
- 6. PHP移動檢測
- 7. 從iOS應用程序中檢測附近的移動設備
- 8. 檢測用戶觸摸的iOS 5
- 9. 的iOS檢測用戶觸摸釋放
- 10. 檢測用戶活動
- 11. 如何使用JSP/Java檢測移動設備(iOS和Android)?
- 12. iOS:獲取用戶移動的速度
- 13. 如何檢測移動設備移動?
- 14. 檢測使用網站的客戶端在移動
- 15. iPhone檢測到用戶移動了他們的設備
- 16. 移動檢測和使用的htaccess
- 17. 檢測用戶是否在移動設備上使用javascript
- 18. iOS移動偵測:移動偵測靈敏度級別
- 19. 如何檢測ios 7中的移動Safari瀏覽器?
- 20. iOS/Cocos2d - 手指移動過程中的圓圈檢測
- 21. IOS抖動檢測敏感
- 22. 頭部運動檢測 - iOS
- 23. iOS - 檢測震動強度
- 24. WPF檢測鼠標移動?
- 25. 檢測移動設備
- 26. IIS重寫移動檢測
- 27. 移相器抖動檢測
- 28. MSISDN檢測移動性 -
- 29. MouseHook檢測鼠標移動
- 30. 檢測物理移動
你可以給我你的代碼,因爲我面臨同樣的問題。我嘗試過,但它崩潰了我的應用程序。 – user2526811
@ user2526811,我會在今晚向你發送代碼,發佈你的郵件地址 –
感謝您的回覆。我的ID是'pakshay8800 @ gmail.com' – user2526811