투케이2K

301. (ios/swift) CMMotionManager Accelerometer 사용해 가속도 센서 사용 여부 확인 및 센서 값 확인 본문

IOS

301. (ios/swift) CMMotionManager Accelerometer 사용해 가속도 센서 사용 여부 확인 및 센서 값 확인

투케이2K 2022. 11. 18. 17:21

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : SWIFT

 

[소스 코드]

    // MARK: - [테스트 메인 함수 정의 실시]
    func testMain() {
        print("")
        print("====================================")
        print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]")
        print("====================================")
        print("")
        
        
        /*
         -------------------------------
         [요약 설명]
         -------------------------------
         1. CMMotionManager : 모션 서비스를 시작하고 관리하기 위한 객체 입니다
         -------------------------------
         2. CMMotionManager 를 사용해 네 가지 유형의 모션 데이터를 수신합니다
         
         - 가속도계 데이터
         - 자이로스코프 데이터
         - 자력계 데이터
         - 기기 동작 데이터
         -------------------------------
         */
        
        
        // [로직 처리 수행]
        DispatchQueue.main.async {
            
            // [CMMotionManager 인스턴스 생성 실시]
            let motionManager = CMMotionManager()
            
            // ------------------------------
            
            // [가속도 센서를 사용 가능한 디바이스 인지 확인 실시]
            if motionManager.isAccelerometerAvailable {
                print("")
                print("====================================")
                print("[\(self.ACTIVITY_NAME) >> testMain() :: 가속도 센서 사용 가능 확인]")
                print("check :: accelerometer available")
                print("====================================")
                print("")
                
                // 가속도 센서 측정 실시
                motionManager.startAccelerometerUpdates(to: OperationQueue.main) { (data, error) in
                    print("")
                    print("====================================")
                    print("[\(self.ACTIVITY_NAME) >> testMain() :: 가속도 센서 측정 확인]")
                    print("data :: \(data)")
                    print("====================================")
                    print("")
                }
            }
            else {
                print("")
                print("====================================")
                print("[\(self.ACTIVITY_NAME) >> testMain() :: 가속도 센서 사용 가능 확인]")
                print("check :: accelerometer not available")
                print("====================================")
                print("")
            }
            
            // ------------------------------
            
        }

    }
 

[결과 출력]

 

 

반응형
Comments