← ClaudeAtlas

core-motionlisted

Access accelerometer, gyroscope, magnetometer, pedometer, and activity-recognition data using CoreMotion. Use when reading device sensor data, counting steps, detecting user activity (walking/running/driving), tracking altitude changes, or implementing motion-based interactions in iOS/watchOS apps.
dpearson2699/swift-ios-skills · ★ 730 · AI & Automation · score 80
Install: claude install-skill dpearson2699/swift-ios-skills
# CoreMotion Read device sensor data -- accelerometer, gyroscope, magnetometer, pedometer, and activity recognition -- on iOS and watchOS. CoreMotion fuses raw sensor inputs into processed device-motion data and provides pedometer/activity APIs for fitness and navigation use cases. Targets Swift 6.3 / iOS 26+. ## Contents - [Setup](#setup) - [CMMotionManager: Sensor Data](#cmmotionmanager-sensor-data) - [Processed Device Motion](#processed-device-motion) - [CMPedometer: Step and Distance Data](#cmpedometer-step-and-distance-data) - [CMMotionActivityManager: Activity Recognition](#cmmotionactivitymanager-activity-recognition) - [CMAltimeter: Altitude Data](#cmaltimeter-altitude-data) - [Update Intervals and Battery](#update-intervals-and-battery) - [Common Mistakes](#common-mistakes) - [Review Checklist](#review-checklist) - [References](#references) ## Setup ### Info.plist Add `NSMotionUsageDescription` to Info.plist with a user-facing string explaining why your app needs motion data. Without this key, the app crashes on first access. ```xml <key>NSMotionUsageDescription</key> <string>This app uses motion data to track your activity.</string> ``` ### Authorization CoreMotion uses `CMAuthorizationStatus` for pedometer and activity APIs. Sensor APIs (accelerometer, gyro) do not require explicit authorization but do require the usage description key. ```swift import CoreMotion let status = CMMotionActivityManager.authorizationStatus() switch status { case .notDetermin