안드로이드 오토 미러링 작업중 차에 계속 내려가거나, 계속 있기에는 여러모로 불편합니다. 그래서 테스트를 위한 안드로이드 오토 에뮬레이터를 소개해드릴려고 합니다. PC에서 바로 테스트가 가능하니 차에 왔다갔다 하지 않아도 되죠. Show
사용법은 간단하지만 폰에서 간단한 설정을 해주셔야 정상적으로 작동합니다. 그럼 시작하겠습니다. 1. 파일 다운로드 drive.google.com/file/d/1Ms8E4_cIETdkOFIOclEXUR7wHvq8sFPx/view?usp=sharing AAEmu.zip drive.google.com 위의 파일을 받고 압축을 풀어주세요. 필독파일에도 설명해놓았지만 이 글에서 사진으로 자세하게 설명하겠습니다. 2. USB 디버깅 활성화 설정-휴대전화 정보-소프트웨어 정보-빌드번호 연타 그럼 사진과 같이 개발자 모드가 활성화되고 뒤로가기버튼을 눌러서 나가주시면 이렇게 개발자 옵션이 활성화됩니다. 스크롤 살짝 내리면 USB디버깅이 나오는데 클릭하여 켜줍니다. 3. 안드로이드 오토 설정 오른쪽 위 설정버튼 클릭 스크롤을 쭉 내려 버전 칸을 연타 개발자 설정 허용창 뜨면 확인 클릭 이후 오른쪽 위 점세개 클릭 헤드 유닛 서버 시작 클릭 3. 에뮬레이터 실행 처음에 다운받았던 AAEmu 폴더에 '1. 연결'이라는 배치파일을 실행시켜줍니다. 실행시키면 휴대폰 화면에 'USB 디버깅을 허용하시겠습니까?'라는 창이 뜰건데, 허용버튼을 눌러줍니다. 창은 5초뒤 자동으로 닫히니 냅두시면 됩니다. 이제 '2. 실행'이라는 배치파일을 실행하시면... 이렇게 에뮬레이터가 실행됩니다. 이제 귀찮게 차량까지 내려가지 않고 바로바로 테스트하실수있습니다. 가시는길에 댓글,공감 하나씩 부탁드립니다. 자동차 앱을 테스트하면 사용자에게 예상치 못한 결과가 발생하거나 사용자 환경이 저하되는 것을 막을 수 있습니다. 앱을 테스트하는 방법은 앱이 Android Auto에서 실행되는지 Android Automotive OS에서 실행되는지에 따라 다릅니다. 시작하려면 다음 섹션 중 하나를 참고하세요.
Android Auto용 앱 테스트데스크톱 헤드 단위(DHU)를 사용하면 개발 머신에서 Android Auto 헤드 단위를 에뮬레이션할 수 있으므로 Android Auto 앱을 실행하고 테스트할 수 있습니다. DHU는 Windows, macOS, Linux 시스템에서 실행됩니다. 이 섹션에서는 개발 머신에서 DHU를 설치하고 실행하여 앱을 테스트하는 방법에 관해 설명합니다. DHU를 설치한 후 DHU 실행에서 설명하는 지원되는 연결 방법 중 하나를 통해 휴대기기를 DHU에 연결하여 Android Auto 앱을 테스트할 수 있습니다. DHU 관련 버그를 신고하거나 기능을 요청하려면 이 Issue Tracker를 사용하세요. DHU 설치사용 가능한 최신 버전의 DHU는 2.0입니다. 설치하여 사용하도록 권장되는 이 버전에는 이전 버전(1.1)에서 사용할 수 없는 기능이 포함되어 있습니다. 버전 2.0에 문제가 발생하는 경우 대신 버전 1.1을 설치해도 됩니다. DHU 버전 2.0 설치다음 단계를 따라 개발 머신에 DHU 2.0을 설치합니다.
Linux 전용 추가 단계Linux 시스템에서 버전 2.0을 실행하는 경우 추가 라이브러리를 설치해야 합니다. DHU 바이너리는 ldd --version 버전이 2.32보다 낮으면
sudo apt-get install libc++1 libc++abi1 DHU 버전 1.1 설치버전 2.0에 문제가 발생하면 다음 단계를 따라 개발 머신에 DHU 1.1을 설치하세요.
Linux 전용 추가 단계Linux 시스템에서 버전 1.1을 실행하는 경우 추가 라이브러리를 설치해야 합니다. sudo apt-get install libsdl2-2.0-0 libsdl2-ttf-2.0-0 libportaudio2 libpng12-0 DHU 실행DHU를 설치한 후 USB로 휴대기기와 워크스테이션을 연결하여 Android Auto 앱을 테스트할 수 있습니다. 액세서리 모드(DHU 2.0에 권장) 또는 ADB 터널링을 통해 휴대기기를 개발 머신에 연결하여 DHU를 실행합니다. 액세서리 모드를 사용하여 연결(DHU 2.0만 해당)Android Auto는 다음 명령어를 사용하여 Android Open Accessory(AOA) 프로토콜로 DHU에 연결하는 것을 지원합니다. ./desktop-head-unit --usb 기본적으로 DHU는 사용 가능한 USB 기기 목록을 검색하여 첫 번째 호환되는 기기에 연결하려고 시도합니다. 특정 기기를 타겟팅하려면 다음과 같이 ./desktop-head-unit --usb=[DEVICE_ID] ADB 터널링을 사용하여 연결이 방법을 사용하려면 Android 디버그 브리지(ADB)를 통해 Android Auto 헤드 단위 서버에 연결해야 합니다. 다음 단계를 따라 터널링을 설정하고 DHU를 실행합니다.
DHU를 시작한 후 DHU 콘솔 명령어를 사용하여 앱을 실행하고 테스트할 수 있습니다. 명령줄 옵션기본적으로 헤드 단위 서버에서는 포트 5277을 통해 연결합니다. 호스트나 포트를
재정의(예: SSH를 통해 전달)하려면 다음 예와 같이 ./desktop-head-unit --adb=5999 기본적으로 DHU는 터치스크린 사용자 인터페이스를 사용하는 Android Auto 호환 헤드 단위를 에뮬레이션합니다. 마우스로 DHU를 클릭하여 사용자 터치를 시뮬레이션할 수 있습니다. 입력에 로터리 컨트롤러를 사용하는 헤드 단위를 에뮬레이션하려면 다음 예와 같이 ./desktop-head-unit -i controller DHU가 로터리 컨트롤러 모드인 경우 단축키를 사용하여 컨트롤러 작업을 시뮬레이션할 수 있습니다. 자세한 내용은 로터리 컨트롤러를 참고하세요. DHU는 로터리 컨트롤러 모드에서 마우스 클릭을 무시합니다. 따라서 시뮬레이션된 로터리 컨트롤러 작업으로 Android Auto를 작동해야 합니다. DHU에서 지원하는 전체 명령줄 옵션은 사용하는 버전이 2.0인지 1.1인지에 따라 다릅니다. 버전 2.0
버전 1.1
DHU 사용자 가이드(2.0)이 섹션에서는 DHU 버전 2.0에서 지원하는 기능과 그 사용법을 설명합니다. 명령어는 DHU를 시작한 터미널 창에 입력됩니다. 여러 명령어를 시스템
터치 및 터치패드터치나 터치패드가 사용 설정된 경우 디스플레이 창(터치의 경우)이나 터치패드 창(터치패드의 경우)을 클릭하면 터치 이벤트로 등록됩니다. 터치의 경우 첫 번째 손가락 위치를 마우스 오른쪽 버튼으로 클릭하고 두 번째 손가락의 경우 오른쪽 버튼을 길게 클릭하여 멀티터치를 시뮬레이션할 수 있습니다. 두 손가락의 중심점은 고정된 채로 유지되고 마우스를 움직이면 가운데를 중심으로 손가락을 회전하거나 안팎으로(또는 둘 다) 모으거나 벌릴 수 있습니다. 터치패드의 경우 왼쪽 버튼을 길게 클릭하여 화면의 다양한 UI 요소 사이를 스크롤합니다. 오른쪽 버튼을 클릭하면 현재 포커스가 있는 요소가 선택됩니다.
로터리 컨트롤러DHU는 로터리 컨트롤러를 지원합니다. 컨트롤러를 사용 설정하면 다음 작업이 지원됩니다.
명령어와 키 바인딩은 아래에 나와 있습니다. 마우스의 스크롤 휠은 대다수 자동차에는 터치스크린이 있습니다. 로터리 컨트롤러만 있는 자동차도 있고 하이브리드 터치 및 컨트롤러가 있는 자동차도 있습니다. 자동차는 지도 화면 이동 및 텍스트 입력에 사용할 수 있는 터치패드도 지원할 수 있습니다. 여러 차량 헤드 단위를 시뮬레이션할 때는 이러한 다양한 구성에 유의하세요.
마이크DHU는 음성 입력에 마이크 사용 또는 사전 녹음된 음성 트랙 재생을 지원합니다. 편의를 위해 일반 음성 명령에 다음과 같은 사운드 파일을 제공했습니다. 이러한 사운드 파일은
DHU 프롬프트에서 개별 mic play /path/to/filename.wav
센서DHU는 다음 명령어를 사용하여 차량 센서 데이터의 변경사항 시뮬레이션을 지원합니다. 센서 데이터를 모의 처리하여 Android Auto에 전송하려면 DHU를 시작할 때 구성
주간/야간 모드DHU는 다음 명령어와 키 결합을 통해 주간 모드와 야간 모드 간 변경 시뮬레이션을 지원합니다.
포커스 관리DHU는 다음 명령어를 사용하여 Android Auto에서 헤드 단위에 포커스를 두는지 시뮬레이션하는 것을 지원합니다.
제한사항/운전 상태DHU는 차량 이동 시 키보드 사용 중지와 휴대전화 구성 금지와 같은 특정한 제한사항의 시뮬레이션을 지원합니다.
계기판DHU는 다음 도로 이름이나 거리/시간, 회전 화살표 등 내비게이션 중에 다음 회전에 관한 기본 정보와 진행 중인 전화 통화에 관한 정보가 표시되는 계기판(핸들 뒤에 일반적으로 위치함) 에뮬레이션을 지원합니다. 구성 파일의 미디어 재생 상태DHU는 미디어 재생 상태(예: 재생 중인 트랙)를 보여 주는 추가 정보 표시를 지원합니다. 구성 파일의 키 코드DHU는 다양한 차량에서 일반적으로 사용할 수 있는 단축키 버튼 집합을 시뮬레이션하는 일련의 기본 키 코드를 제공합니다. 예를 들어 keycode home
DHU 구성DHU는 사용할 수 있는 입력 모드(터치, 컨트롤러), 프레임 속도, 해상도, 헤드 단위가 휴대전화에서 요청하는 DPI를 변경하는 구성 구성 파일의 기본 위치는
샘플 구성
샘플 구성 파일은 입력 구성
동영상 구성Android Auto는 세 가지 동영상 해상도를 지원합니다.
위 세 가지 이외의 다른 가로세로 비율을 지원하기 위해 헤드 단위는 필요에 따라 레터박스/필러박스에 여백을 지정할 수 있습니다. 예를 들어 1000x600 화면을 원한다면 해상도를 720p(1280x720), 여백 너비를 280, 여백 높이를 120으로 설정합니다. 이렇게 하면 왼쪽과 오른쪽 가장자리에 모두 140px 여백이, 상단과 하단에 60px가 추가되는 효과가 있습니다. 일반적인 6인치 화면(750x450)을 에뮬레이션하는 구성 예:
와이드 스크린:
센서 구성센서 데이터를 모의 처리하여 Android Auto에 전송하려면 아래 옵션을 사용하여 상응하는 센서를 사용 설정해야 합니다. 센서가 사용 중지되면 DHU 명령어를 사용하여 센서에 전송된 데이터가 무시됩니다.
기타
DHU 사용자 가이드(1.1)DHU 명령어를 사용하여 음성 입력 재생 또는 주야간 디스플레이 모드 전환과 같은 Android Auto 기능으로 앱을 테스트할 수 있습니다. DHU를 실행한 터미널 창에서 DHU에 명령어를 실행할 수 있습니다. DHU 창을 선택하고 단축키를 사용하여 명령어를 실행할 수도 있습니다. 모든 컨트롤의 DHU 명령어 및 키 바인딩은 DHU 명령어 및 키 바인딩에 나열되어 있습니다. 주야간 모드 전환Android Auto는 주간과 야간에 서로 다른 색 구성표를 지원합니다. 따라서 주간 모드와 야간 모드에서 앱을 테스트해야 합니다. 다음 방법 중 한 가지로 야간 모드와 주간 모드 간 전환을 할 수 있습니다.
마이크 테스트DHU는 음성 입력에 마이크 사용을 지원합니다. 마치 DHU가 마이크를 통해 트랙을 들은 것처럼 사전 녹음된 음성 트랙을 입력으로 취급하도록 DHU에 지시할 수도 있습니다. 사전 녹음된 사운드 파일을 입력으로 사용하려면 다음 명령어를 입력하세요. mic play <sound_file_path>/<sound_file>.wav 편의를 위해 일반 음성 명령에 다음과 같은 사운드 파일을 제공하였습니다. 이러한 사운드 파일은
DHU 명령어 및 키 바인딩DHU에서는 다음 명령어를 지원합니다. 표 1. 명령어 및 키 바인딩
문제 해결최초 연결 시 빈 화면이 표시되는 DHU 이는 알려진 문제로 현재 Google에서 해결 중입니다. 이 문제를 해결하려면 다음 단계를 따르세요.
Android Automotive OS에서 앱 테스트Android Emulator를 사용해 운전자 최적화 앱이 Android Automotive OS 차량 디스플레이에서 어떻게 실행되는지 테스트할 수 있습니다. 이 섹션에서는 Android Virtual Device(AVD)를 설정하여 앱을 테스트하는 방법을 설명합니다. 미디어 앱의 실행 구성 수정Automotive OS 앱의 미디어 앱은 다른 Android 앱과 다릅니다. Android Automotive OS는 명시적 인텐트를 사용하고 미디어 브라우저 서비스에 호출을 전송하여 미디어 앱과 상호작용합니다. 앱을 테스트하려면 앱의 매니페스트에 실행 활동이 없는지 확인하고 다음 단계에 따라 자동차 모듈이 활동으로 실행되는 것을 방지하세요.
시스템 이미지 추가특정 제조업체 하드웨어와 일치하는 AVD를 생성하려면 먼저 Android 스튜디오 SDK Manager를 통해 이러한 기기의 시스템 이미지를 추가해야 합니다. 그런 다음 AVD를 만들 때 이 시스템 이미지를 다운로드하여 AVD와 함께 사용할 수 있습니다. 자동차 제조업체의 시스템 이미지 추가현재 Polestar 2 및 Volvo의 경우 OEM별 시스템 이미지를 추가할 수 있습니다. 다음 단계를 따라 시스템 이미지를 추가하세요.
일반 시스템 이미지 설치Android 스튜디오에는 앱 테스트에 사용할 수 있는 Android Automotive OS용 일반 시스템 이미지도 포함되어 있습니다. 이 일반 시스템 이미지에는 Google 어시스턴트가 포함되어 있으므로 앱 통합을 테스트할 수 있습니다. 다음 단계를 따라 일반 시스템 이미지를 설치하세요.
자동차 AVD 생성 및 에뮬레이터 실행다음 단계에 따라 Android Automotive OS 차량을 대표하는 AVD(Android Virtual Device)를 만든 후 이 AVD를 사용하여 에뮬레이터를 실행하세요.
휴대전화 화면에서 앱 테스트아래 단계에 따라 앱을 스마트폰에 사이드로드하고 테스트하세요. 1단계: Android Auto 앱에서 개발자 모드 및 알 수 없는 소스를 사용 설정
2단계. 휴대전화에서 USB 디버깅 사용 설정
3단계: 휴대전화에 앱을 설치하고 테스트
미디어 앱을 위한 추가 테스트 요구사항미디어 앱을 테스트하는 경우 Android Auto나 Android Automotive OS 또는 둘 다에서 앱을 테스트하는 것 외에도 이 섹션에서 다루는 시나리오를 테스트해야 합니다. MediaBrowseService 시작 시나리오 테스트운전자와 승객을 안전하게 보호하기 위해 사용자가 운전 중에 앱과 상호작용할 수 있는 방법에는 추가 제한사항이 적용됩니다. 이러한 이유로
Android Auto 및 Android Automotive OS에는 사용자가 운전하는 동안 콘텐츠를 계속 즐길 수 있도록 앱에서 처리할 수 있어야 하는 앱을 테스트하여 다음 각 시나리오를 처리할 수 있는지 확인합니다.
이러한 시나리오를 테스트하는 동안 다음 방법을 시도해야 합니다.
또한 필요에 따라 적절한 오류 메시지를 설정해야 합니다. 미디어 테스트 도구미디어 컨트롤러 테스트 앱을 사용하면 Android에서 미디어 재생과 관련된 복잡한 문제를 테스트하고 미디어 세션 구현을 확인할 수 있습니다. 이 도구를 시작하려면 미디어 컨트롤러 테스트 앱 사용을 참고하세요. |