Chromebook의 앱 매니페스트 호환성

Chromebook에서 실행하기 위해 Android 앱을 준비할 때는 앱이 사용하는 기기 기능을 고려해야 합니다. Chromebook은 Android를 실행하는 다른 기기에서 지원하는 하드웨어 및 소프트웨어 기능을 모두 지원하지는 않습니다. 앱이 Chromebook에서 지원되지 않는 특정 기능을 요구할 경우 이러한 앱은 Chromebook에 설치할 수 없습니다.

매니페스트 파일에 앱의 하드웨어 기능 및 특정 소프트웨어 기능 요구사항을 선언해야 합니다. 이 문서에서는 Chromebook과 호환되지 않는 앱 매니페스트 기능 선언에 관해 설명합니다.

호환되지 않는 매니페스트 항목

이 섹션에 나와 있는 매니페스트 항목은 현재 Chromebook과 호환되지 않습니다. 앱이 이러한 항목 중 하나라도 사용할 경우, 앱이 Chromebook에 설치될 수 있도록 이러한 항목을 제거하거나 required="false" 특성 값과 함께 이러한 항목을 포함할 것을 고려해야 합니다. 특정 기능을 기기에서 사용할 수 있도록 요청하지 않고 기능 사용을 선언하는 방법에 대한 자세한 내용은 <uses-feature> 매니페스트 요소 관련 가이드를 참조하세요. 앱 매니페스트 기능 및 설명의 전체 목록은 기능 참조를 확인하세요.

메모: Android 스튜디오 2.3 이상에는 매니페스트 파일을 자동으로 확인하는 린트 검사 기능이 내장되어 있습니다. Android 스튜디오에서 File > Settings > Editor > Inspections > Android > Lint > Correctness > Chrome OS를 선택합니다.

하드웨어 기능

하드웨어 기능에 대한 지원 여부는 Chromebook마다 다릅니다. 즉, Chromebook마다 지원되는 기능이 다릅니다.

특징

다음 목록에는 Chromebook에서 더 나은 하드웨어 지원을 위해 추가된 기능이 나와 있습니다.

  • android.hardware.type.pc - 마우스와 터치패드에 입력 에뮬레이션이 사용되지 않습니다. Chromebook 외의 기기에서도 실행될 수 있도록 하려면 required="false"을 지정해야 합니다.

지원되지 않는 하드웨어 기능

다음 목록에 Chromebook에서 현재 지원되지 않는 하드웨어 기능이 나와 있습니다.

  • android.hardware.camera - 후면 카메라
  • android.hardware.camera.autofocus - 자동 포커스를 사용하는 카메라
  • android.hardware.camera.capability.manual_post_processing - 자동 화이트 밸런스를 재정의하기 위한 기능을 포함하여 MANUAL_POST_PROCESSING 기능을 사용하는 카메라
  • android.hardware.camera.capability.manual_sensor - 자동 노출 고정 지원을 포함하여 MANUAL_SENSOR 기능을 사용하는 카메라
  • android.hardware.camera.capability.raw - DNG(원시) 파일을 저장하고 DNG 관련 메타데이터를 제공하는 기능을 포함하여 RAW 기능을 사용하는 카메라
  • android.hardware.camera.flash - 플래시를 사용하는 카메라
  • android.hardware.camera.level.full - FULL 수준의 이미지 캡처 지원 기능을 사용하는 카메라
  • android.hardware.consumerir - 적외선(IR)
  • android.hardware.location.gps - GPS
  • android.hardware.nfc - 근거리 무선통신(NFC)
  • android.hardware.nfc.hce - NFC 카드 에뮬레이션(지원 중단됨)
  • android.hardware.sensor.barometer - 기압계(기압)
  • android.hardware.telephony - 전화통신(데이터 통신 서비스를 사용한 라디오 포함)
  • android.hardware.telephony.cdma - 전화통신 CDMA(Code Division Multiple Access) 네트워크 지원
  • android.hardware.telephony.gsm - 전화통신 GSM(Global System for Mobile Communications) 네트워크 지원
  • android.hardware.type.automotive - Android Auto 사용자 인터페이스
  • android.hardware.type.television - 텔레비전(지원 중단됨)
  • android.hardware.usb.accessory - USB 액세서리 모드
  • android.hardware.usb.host - USB 호스트 모드

부분적으로 지원되는 하드웨어 기능

다음 목록에는 일부 Chromebook에서 사용할 수 있는 하드웨어 기능이 나와 있습니다

  • android.hardware.sensor.accelerometer - 가속도계(기기 방향)
  • android.hardware.sensor.compass - 나침반
  • android.hardware.sensor.gyroscope - 자이로스코프(기기 회전 및 흔들기)
  • android.hardware.sensor.light - 밝게
  • android.hardware.sensor.proximity - 근접성(사용자에 대함)
  • android.hardware.sensor.stepcounter – 걸음수 측정기
  • android.hardware.sensor.stepdetector – 걸음 감지기

터치스크린 하드웨어 지원

Chrome OS 버전 M53부터, android.hardware.touchscreen 기능을 명시적으로 필요로 하지 않는 모든 Android 앱도 android.hardware.faketouch 기능을 지원하는 Chrome OS 기기에서 작동합니다. 모조 터치 인터페이스가 있는 기기는 기본적인 터치 이벤트를 에뮬레이션하는 사용자 입력 시스템을 제공합니다. 예를 들어, 사용자는 마우스 또는 리모컨과 상호작용하여 화면 내 커서를 이동하고, 목록을 스크롤하고, 화면의 한쪽에서 다른 쪽으로 요소를 드래그할 수 있습니다.

터치스크린이 아니라 모조 터치 인터페이스가 있는 기기에 앱이 설치되는 것을 원치 않을 경우 다음 작업 중 하나를 완료하면 됩니다.

  • Google Play Console에서 특정 기기를 제외합니다.
  • 앱을 설치하기 위한 필수 항목으로 android.hardware.touchscreen을 명시적으로 선언하여 터치스크린 하드웨어가 없는 기기를 필터링합니다.

소프트웨어 기능

다음 목록에 Chromebook에서 현재 지원되지 않는 소프트웨어 기능이 나와 있습니다.

  • android.software.app_widgets - 홈 화면에 있는 앱 위젯
  • android.software.device_admin - 기기 정책 관리
  • android.software.home_screen - 기기의 홈 화면 대체
  • android.software.input_methods - 사용자 지정 입력 메서드(InputMethodService 인스턴스)
  • android.software.leanback - 대형 화면 보기용으로 설계된 UI
  • android.software.live_wallpaper - 애니메이션 배경화면
  • android.software.live_tv - 스트리밍 생방송 TV 프로그램
  • android.software.managed_users - 보조 사용자 및 관리된 프로필
  • android.software.midi - 음악 기기에 대한 연결을 지원하고 음향을 제공하는 MIDI(Musical Instrument Digital Interface) 프로토콜
  • android.software.sip - 화상 회의 및 채팅을 지원하는 SIP(Session Initiation Protocol) 서비스
  • android.software.sip.voip - 양방향 화상 회의를 지원하는, SIP를 기반으로 하는 VoIP(Voice Over Internet Protocol) 서비스

기능 요구사항을 암시하는 권한

매니페스트 파일에서 요청하는 일부 권한은 하드웨어 및 소프트웨어 기능을 암시적으로 요청할 수 있습니다. 이러한 권한을 요청하면 앱이 Chromebook에 설치되지 않습니다.

권한 요청으로 인해 Chromebook에서 앱을 사용할 수 없게 되는 것을 방지하는 방법을 자세히 알아보려면 이 페이지의 호환 불가능한 매니페스트 항목 섹션을 참조하세요.

다음 표에는 앱과 Chromebook의 호환성을 방지하는 특정 기능 요구사항을 암시하는 권한이 나와 있습니다.

표 1. Chromebook과 호환 불가능한 하드웨어 기능을 암시하는 기기 권한

카테고리 권한 암시하는 기능 요구사항
카메라 CAMERA android.hardware.camera
android.hardware.camera.autofocus
통신 CALL_PHONE android.hardware.telephony
CALL_PRIVILEGED android.hardware.telephony
MODIFY_PHONE_STATE android.hardware.telephony
PROCESS_OUTGOING_CALLS android.hardware.telephony
READ_SMSREAD_SMS android.hardware.telephony
RECEIVE_SMS android.hardware.telephony
RECEIVE_MMS android.hardware.telephony
RECEIVE_WAP_PUSH android.hardware.telephony
SEND_SMS android.hardware.telephony
WRITE_APN_SETTINGS android.hardware.telephony
WRITE_SMS android.hardware.telephony