Android Emulator를 사용해 Android Automotive OS에서 앱이 실행되는 방식을 테스트할 수 있습니다.
시스템 이미지 추가
Android Automotive OS 가상 기기를 만들려면 먼저 Android 스튜디오 SDK Manager를 통해 시스템 이미지를 추가해야 합니다.
일반 시스템 이미지 추가
Android 스튜디오에는 앱을 테스트하는 데 사용할 수 있고 Google Play 스크린샷을 찍을 때 사용해야 하는 Android Automotive OS용 일반 시스템 이미지도 포함되어 있습니다. 이러한 이미지는 모두 다음을 포함합니다.
- Google Play 서비스
- Google Automotive App Host API 28 이미지는 제외됩니다. 호스트는 API 29 이상을 실행하는 기기에서만 사용할 수 있기 때문입니다.
| 이름 | API 수준 | 아키텍처 | 기능 | 가용성 |
|---|---|---|---|---|
| Automotive Intel x86 Atom 시스템 이미지 | 28 | x86 | Google Play 스토어 | |
| Play 스토어 Intel x86 Atom 시스템 이미지를 사용한 Automotive | 29 | x86 | Google Play 스토어 | |
| Play 스토어 Intel x86_64 Atom 시스템 이미지를 사용한 Automotive | 30 | x86 | Google Play 스토어 | |
| Play 스토어 ARM 64 v8a 시스템 이미지를 사용한 Automotive | 32 | ARM | Google Play 스토어 | |
| Play 스토어 Intel x86_64 Atom 시스템 이미지를 사용한 Automotive | 32 | x86 | Google Play 스토어 | |
| Automotive Distant Display with Google APIs arm64-v8a 시스템 이미지 | 32 | ARM | ||
| Automotive Distant Display with Google APIs x86_64 System Image | 32 | x86 | ||
| Google Play arm64-v8a 시스템 이미지를 사용한 Automotive Distant Display | 32 | ARM | Google Play 스토어 | |
| Automotive Distant Display with Google Play x86_64 시스템 이미지 | 32 | x86 | Google Play 스토어 | |
| Android Automotive with Google APIs ARM 64 v8a 시스템 이미지 | 33 | ARM | ||
| Android Automotive with Google APIs Intel x86_64 Atom 시스템 이미지 | 33 | x86 | ||
| Google Play arm64-v8a 시스템 이미지를 사용한 Automotive Distant Display | 33 | ARM | Google Play 스토어 | |
| Automotive Distant Display with Google Play x86_64 시스템 이미지 | 33 | x86 | Google Play 스토어 | |
| Android Automotive with Google APIs arm64-v8a 시스템 이미지 | 34-ext9 | ARM | ||
| Android Automotive with Google APIs x86_64 시스템 이미지 | 34-ext9 | x86 | ||
| Android Automotive with Google Play arm64-v8a 시스템 이미지 | 34-ext9 | ARM | ||
| Google Play x86_64 시스템 이미지를 사용하는 Android Automotive | 34-ext9 | x86 | ||
| Android Automotive with Google APIs arm64-v8a 시스템 이미지 | 35-ext15 | ARM | ||
| Android Automotive with Google APIs x86_64 시스템 이미지 | 35-ext15 | x86 | ||
| Android Automotive with Google Play arm64-v8a 시스템 이미지 | 35-ext15 | ARM | ||
| Google Play x86_64 시스템 이미지를 사용하는 Android Automotive | 35-ext15 | x86 |
일반 시스템 이미지를 설치하려면 다음 단계를 따르세요.
- Android 스튜디오에서 Tools > SDK Manager를 선택합니다.
- SDK Platforms 탭을 클릭합니다.
- Show Package Details를 클릭합니다.
- 다운로드할 이미지를 선택합니다. 자세한 내용은 위의 표를 참고하세요.
- Apply를 클릭한 후 OK를 클릭합니다.
OEM의 시스템 이미지 추가
OEM별 시스템 이미지를 추가할 수도 있습니다. OEM 개발자 사이트의 단계를 알파벳순으로 따르세요.
- General Motors (Chevrolet, Cadillac, GMC, Buick)
- Honda
- Mazda
- Polestar
- Renault Group (Renault, Alpine, Dacia)
- Volvo
자동차 AVD 생성 및 에뮬레이터 실행
다음 단계에 따라 Android Automotive OS 차량을 대표하는 AVD(Android Virtual Device)를 만든 후 이 AVD를 사용하여 에뮬레이터를 실행하세요.
- Android 스튜디오에서 Tools > AVD Manager를 선택합니다.
- Create Virtual Device를 클릭합니다.
- Select Hardware 대화상자에서 Automotive를 선택한 다음 하드웨어 프로필을 선택합니다. Next를 클릭합니다.
- Android 12L(Play 스토어를 사용하는 Automotive)와 같이 Automotive를 타겟팅하는 시스템 이미지를 선택하고 Next를 클릭합니다.
- AVD에 이름을 지정하고 맞춤설정하고 싶은 다른 옵션을 선택한 다음 Finish를 클릭합니다.
- 도구 창 모음에서 Android Automotive OS AVD를 배포 타겟으로 선택합니다.
- Run
을 클릭합니다.
번들 하드웨어 프로필 사용
AVD를 만들 때 Android 스튜디오와 함께 번들로 제공되는 다음 하드웨어 프로필을 사용할 수 있습니다.
| 이름 | 해상도 | 구성 가능 | 호환성 | 가용성 |
|---|---|---|---|---|
| Automotive (1024p 가로 모드) | 1024x768 | Google Play 스토어가 포함된 |
||
| Automotive (1080p 가로 모드) | 1080x600 | ✔ | Google Play 스토어가 없는 API 33 이상 시스템 이미지 | |
|
Automotive (1408p 가로 모드)
API 34 이미지와 함께 사용하는 것이 좋습니다. |
1408x792 | Google Play 스토어가 없는 API 33 이상 시스템 이미지 | ||
|
Automotive (1408p landscape) with Google Play
API 34 이미지와 함께 사용하는 것이 좋습니다. |
1408x792 | |||
| 자동차 세로 모드 | 800x1280 | Google Play 스토어가 없는 API 33 이상 시스템 이미지 | ||
| 자동차 대형 세로 모드 | 1280x1606 | ✔ | Google Play 스토어가 없는 API 33 이상 시스템 이미지 | |
| 자동차 울트라와이드 | 3904x1320 | ✔ | Google Play 스토어가 없는 API 33 이상 시스템 이미지 | |
| Automotive Distant Display | 1080x600 | Google Play 스토어가 없는 API 32 이상 원격 디스플레이 시스템 이미지 | ||
| Google Play가 포함된 Automotive Distant Display | 1080x600 |
하드웨어 프로필 만들기
번들로 제공되는 하드웨어 프로필에 포함되지 않은 하드웨어 구성을 테스트하려면 Android Automotive OS 에뮬레이터와 함께 사용할 하드웨어 프로필을 생성하면 됩니다. 이렇게 하려면 생성 흐름에서 기기 유형으로 Android Automotive를 선택합니다. 맞춤 하드웨어 프로필은 Google Play 스토어가 포함되지 않은 시스템 이미지와만 호환됩니다.
에뮬레이터의 확장 컨트롤 사용
다른 Android 에뮬레이터에서 사용할 수 있는 많은 표준 확장 컨트롤 외에도 Android Automotive OS 에뮬레이터 전용으로 제작된 확장 컨트롤이 있습니다.
하드웨어 상태 에뮬레이션
사용 가능한 경우 표준 Android API를 사용하여 읽을 수 있는 가속도계 및 자이로스코프와 같은 센서 외에도 차량 고유의 추가 하드웨어 속성이 차량 하드웨어 추상화 계층(VHAL)을 통해 전달됩니다. 이러한 속성은 VehiclePropertyIds 클래스로 모델링됩니다.
에뮬레이터가 실행되는 동안 확장 컨트롤의 자동차 데이터 기능에서 이러한 속성 값을 수정할 수 있습니다. 예를 들어 차량의 현재 속도를 설정하려면 속성(VehiclePropertyIds.PERF_VEHICLE_SPEED)을 찾아 값을 변경하면 됩니다.
운전 시뮬레이션
주행을 시뮬레이션하려면 차량 속도를 0이 아닌 값으로 설정하고 기어를 P (주차)가 아닌 값으로 설정해야 합니다. 주차 상태를 시뮬레이션하려면 기어를 P (주차)로 설정하기만 하면 됩니다. Car sensor data 탭에서 슬라이더와 선택기를 사용하거나 이전 섹션에서 설명한 대로 VHAL 속성을 수정하면 됩니다.
로터리 입력 테스트
일부 Android Automotive OS 차량에는 터치 스크린 외에도 로터리 컨트롤러가 장착되어 있습니다. 로터리 컨트롤러는 키보드 탐색과 동일한 포커스 API를 사용하여 사용자가 화면을 터치하지 않고도 앱을 탐색할 수 있도록 지원합니다. 확장 컨트롤 내에서 자동차 로터리 도구를 사용하여 앱의 로터리 입력 지원을 테스트할 수 있습니다.
미디어 앱의 실행 구성 수정
Automotive OS 앱의 미디어 앱은 다른 Android 앱과 다릅니다. Android Automotive OS는 명시적 인텐트를 사용하고 미디어 브라우저 서비스에 호출을 전송하여 미디어 앱과 상호작용합니다.
앱을 테스트하려면 앱의 매니페스트에 실행 활동이 없는지 확인하고 다음 단계에 따라 자동차 모듈이 활동으로 실행되는 것을 방지하세요.
Android 스튜디오에서 Run > Edit Configurations를 선택합니다.
실행/디버그 구성 대화상자 앱의 모듈 목록에서 자동차 모듈을 선택합니다.
Launch Options > Launch에서 Nothing을 선택합니다.
적용을 클릭한 후 확인를 클릭합니다.
Android Automotive OS 에뮬레이터 문제 신고
Android Automotive OS 에뮬레이터를 사용하는 중에 문제가 발생하거나 기능 요청이 있다면 Google Issue Tracker를 사용하여 신고할 수 있습니다. 문제 템플릿에 요청된 모든 정보를 작성해야 합니다. 새 문제를 신고하기 전에 문제 목록에 이미 신고되어 있는지 확인하세요. Tracker에서 문제에 있는 별표를 클릭하여 문제를 구독하고 투표를 할 수 있습니다. 자세한 내용은 문제 구독을 참고하세요.