Android/ADB

ADB를 활용한 배터리 상태 모니터링 및 제어

임베디드 친구 2025. 2. 25. 09:02
728x90
반응형

ADB를 활용한 배터리 상태 모니터링 및 제어

Android Debug Bridge(ADB)는 개발자가 Android 디바이스와 컴퓨터 간의 통신을 가능하게 하는 강력한 도구입니다. ADB를 활용하면 다양한 디바이스 상태를 확인하고 설정을 변경할 수 있으며, 그중에서도 배터리 상태를 모니터링하고 제어하는 기능은 특히 유용합니다.

이 글에서는 adb shell dumpsys battery 명령어를 활용하여 배터리 상태를 확인하고, ADB를 통해 배터리 잔량 및 충전 상태를 변경하는 방법을 설명하겠습니다.

1. ADB를 이용한 배터리 상태 확인

Android 디바이스에서 배터리 상태를 확인하려면 adb shell dumpsys battery 명령어를 사용하면 됩니다.

adb shell dumpsys battery

위 명령어를 실행하면 아래와 같은 결과가 출력됩니다.

Current Battery Service state:
  AC powered: false
  USB powered: true
  Wireless powered: false
  Max charging current: 500000
  Max charging voltage: 5000000
  Charge counter: 1234567
  status: 3
  health: 2
  present: true
  level: 85
  scale: 100
  voltage: 4000
  temperature: 320
  technology: Li-ion

배터리 상태 정보 설명

  • AC powered: AC 전원(어댑터) 연결 여부
  • USB powered: USB 충전 연결 여부
  • Wireless powered: 무선 충전 연결 여부
  • Max charging current: 최대 충전 전류 (단위: 마이크로암페어)
  • Max charging voltage: 최대 충전 전압 (단위: 마이크로볼트)
  • Charge counter: 현재 충전 용량
  • status: 배터리 상태 (1: 충전 중, 2: 완충됨, 3: 방전 중 등)
  • health: 배터리 건강 상태 (2: 정상, 3: 과열, 4: 과전압 등)
  • level: 현재 배터리 잔량 (퍼센트)
  • scale: 배터리 최대 용량 (100 기준)
  • voltage: 배터리 전압 (단위: 밀리볼트)
  • temperature: 배터리 온도 (단위: 0.1°C)
  • technology: 배터리 기술 (예: Li-ion)

2. ADB를 이용한 배터리 상태 변경

에뮬레이터에서만 사용 가능한 명령어들이지만, 배터리 상태를 조작할 수 있습니다. 이를 통해 다양한 테스트를 수행할 수 있습니다.

2.1 배터리 잔량 설정

adb shell dumpsys battery set level 50

위 명령어를 실행하면 배터리 잔량이 50%로 설정됩니다. 실제 디바이스에서는 적용되지 않으며, 에뮬레이터에서만 가능합니다.

2.2 배터리 충전 상태 변경

배터리 상태를 충전 중으로 변경하려면 다음 명령어를 실행합니다.

adb shell dumpsys battery set status 2

배터리 상태 코드는 다음과 같습니다.

  • 1: 충전 중 아님 (방전 중)
  • 2: 충전 중
  • 3: 완충됨

2.3 USB 충전 활성화

USB 충전을 활성화하려면 아래 명령어를 사용합니다.

adb shell dumpsys battery set usb 1

반대로 USB 충전을 비활성화하려면 다음 명령어를 실행합니다.

adb shell dumpsys battery set usb 0

2.4 AC 충전 활성화

AC 전원(어댑터) 충전을 활성화하려면 다음 명령어를 실행합니다.

adb shell dumpsys battery set ac 1

AC 충전을 비활성화하려면 아래 명령어를 사용합니다.

adb shell dumpsys battery set ac 0

2.5 무선 충전 활성화

무선 충전을 활성화하려면 다음 명령어를 실행합니다.

adb shell dumpsys battery set wireless 1

무선 충전을 비활성화하려면 아래 명령어를 사용합니다.

adb shell dumpsys battery set wireless 0

3. ADB 배터리 상태 초기화

모든 배터리 상태 설정을 초기화하려면 다음 명령어를 실행합니다.

adb shell dumpsys battery reset

이 명령어를 실행하면 이전에 변경했던 모든 배터리 상태가 기본값으로 돌아갑니다.

4. 실전 테스트 예제

에뮬레이터에서 ADB를 활용한 배터리 상태 변경을 테스트하는 예제입니다.

# 배터리 잔량을 30%로 설정
adb shell dumpsys battery set level 30

# 배터리 상태를 충전 중으로 설정
adb shell dumpsys battery set status 2

# USB 충전 활성화
adb shell dumpsys battery set usb 1

# 배터리 상태 확인
adb shell dumpsys battery

# 모든 설정 초기화
adb shell dumpsys battery reset

위 명령어들을 실행하면 배터리 상태가 변경되고, 마지막에 adb shell dumpsys battery reset을 실행하면 원래 상태로 복원됩니다.

5. 결론

ADB를 활용하면 Android 디바이스의 배터리 상태를 모니터링하고, 필요에 따라 설정을 변경할 수 있습니다. 특히, 에뮬레이터 환경에서 배터리 상태를 조작하면 다양한 테스트를 수행할 수 있어 개발 및 QA 과정에서 유용하게 활용할 수 있습니다.

이 글에서 소개한 adb shell dumpsys battery 명령어를 활용하면 보다 효과적으로 배터리 상태를 제어할 수 있으므로, 필요할 때 적절히 사용해 보시길 바랍니다.

반응형