2011-07-19 28 views

Trả lời

29

Tôi chưa sử dụng iOS 5, nhưng đã có trong Uxcometerer và UIAccelerometerDelegate 4.x được thay thế bằng khung công tác CoreMotion. Nó tinh vi hơn, đưa các tín hiệu con quay hồi chuyển vào tài khoản và thực hiện một phản ứng tổng hợp cảm biến, tức là hiệu chỉnh các công cụ như tính toán thiên vị cho bạn.

Về cơ bản, lệnh gọi lại CMDeviceMotionHandler giờ đây là tương đương. Nó được gọi là mọi deviceMotionUpdateInterval giây hoặc bạn có thể đi với vòng lặp hẹn giờ của riêng bạn và kéo dữ liệu. Nó khá đơn giản và dễ sử dụng. Hãy xem Simple iPhone motion detect và làm theo ba liên kết đến tài liệu SDK.

Có ba điều bạn phải nhớ:

  • Làm việc với các thiết bị chuyển động đòi hỏi phiên bản iPhone> = 4 hoặc mới nhất thế hệ iPod touch vì nó dựa vào sự hỗ trợ con quay hồi chuyển
  • Khi sử dụng thiết bị chuyển động bạn không được sử dụng bộ lọc thông thấp để trích xuất lực hấp dẫn vì nó được thực hiện cho bạn
  • Nếu bạn muốn hỗ trợ phần cứng cũ hơn, bạn phải làm việc với dữ liệu thô. Điều này được thực hiện bằng cách tạo CMAccelerometerHandler và gọi số startAccelerometerUpdatesToQueue:withHandler:. Sau đó, bạn phải trích xuất lực hấp dẫn với bộ lọc thông thấp như trong didAccelerate
+0

Vì vậy, bạn có biết điều gì thay thế gia tốc: didAccelerate:? Ứng dụng của tôi sử dụng nó, nhưng tôi muốn hỗ trợ ứng dụng trong iOS5 khi nó được phát hành. Cảm ơn – jcpennypincher

+1

@jcpennypincher: Xem câu trả lời được cập nhật và làm theo 3 liên kết được cung cấp trong câu trả lời được tham chiếu (Simple iPhone ...). – Kay

+0

Vào thời điểm Kay viết câu trả lời này, "iPod touch mới nhất" là iPod Touch 4. Theo [Apple] (https://developer.apple.com/library/ios/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/ DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html), đây là những mô hình cơ sở có khả năng Gyroscope: iPhone 4, iPad 2 và iPod Touch 4. Từ nghiên cứu của tôi, nếu bạn đang sử dụng iOS 7 trở lên thì bạn chắc chắn có một thiết bị có con quay hồi chuyển khả năng. iOS 6 được hỗ trợ bởi iPhone 3GS, vì vậy tôi tin rằng bất cứ thứ gì iOS 6 trở xuống bạn đều phải thử nghiệm khả năng quay vòng. – henryaz

Các vấn đề liên quan