[swift] Swift로 디바이스의 주변 밝기 정보 가져오기

스마트폰이나 태블릿과 같은 iOS 기기는 함께 제공되는 여러 센서를 통해 주변 환경에 대한 정보를 수집할 수 있습니다. 이 중 하나는 주변 밝기 센서입니다. Swift를 사용하여 디바이스의 주변 밝기를 측정하고 가져오는 방법을 알아봅시다.

Core Motion 프레임워크를 이용한 주변 밝기 가져오기

iOS는 Core Motion 프레임워크를 제공하여 주변 환경에 대한 다양한 정보를 제공합니다. 여기에는 가속도, 자이로스코프, 마그네틱 필드 등과 함께 주변 밝기 센서 정보도 포함됩니다.

import CoreMotion

let motionManager = CMMotionManager()

if motionManager.isAmbientLightAvailable {
    motionManager.startUpdatingAmbientLight()

    if let brightness = motionManager.ambientLight?.brightness {
        print("현재 주변 밝기: \(brightness) lux") // 주변 밝기 출력
    }
}

위의 코드는 Core Motion 프레임워크를 사용하여 주변 밝기 정보를 가져오는 간단한 예제입니다. CoreMotion을 import하고 CMMotionManager 인스턴스를 생성한 후 isAmbientLightAvailable 속성을 사용하여 주변 밝기 센서의 사용 가능 여부를 확인합니다. 사용 가능한 경우 startUpdatingAmbientLight() 메서드를 호출하여 주변 밝기 정보를 업데이트합니다. 그리고 ambientLight 속성을 통해 밝기 값을 가져와서 출력합니다.

주의 사항

주변 밝기 센서는 디바이스에 따라 지원되지 않을 수 있습니다. 따라서 코드를 실행하기 전에 해당 기기에서 주변 밝기 센서가 제대로 작동하는지 확인하는 것이 좋습니다.

참고 자료