본문 바로가기
.study/forensic

Emulate Android on Linux(Automotive OS) - 1

by Carry_on 2024. 9. 4.
728x90

몽골 플?젝 잘 정리해서 캡스톤 할 거 없으면 써야지

(추후 수정 예정)

 

Android Automotive OS 에뮬레이터를 이용하면 실제 차량 없이도 자동차 환경에서 안드로이드 애플리케이션을 개발하고 테스트 할 수 있다.

 

QEMU, KVM?

QEMU

  • 오픈 소스 에뮬레이터 도구
  • KVM과 사용하여 성능을 향상시킬 수 있음

KVM(Kernel-based Virtual Machine)

  • 한 컴퓨터에서 여러 개의 가상머신을 실행할 수 있게 해줌
  • 하드웨어 가속을 사용해 가상머신을 빠르게 실행 해줌

WSL Ubuntu위에 에뮬레이트 하려고 했지만 KVM이 WSL에서 작동하지 않음

따라서 듀얼부팅으로 우분투를 설치하여 진행

에뮬레이터 실행(QEMU)

GPT(GUID Partition Table) 설치 여부 (Y)

 

파티션 생성

파티션 생성

파티션 생성완료

부트로더 실행

안드로이드 실행

 

에뮬레이터 실행(Android Studio)

Android Studio?

Android Studio는 Google에서 개발한 공식 통합 개발 환경(IDE)으로, Android 애플리케이션을 개발, 테스트, 디버깅하는 데 사용하는 도구

  1. 에뮬레이터 설정
    1. Android Studio 설치, 실행
    2. AVD(Android Virtual Device) 생성: 차량 환경에 맞는 AVD생성
      1. Automotive 카테고리에서 차량 프로필 선택(Android 12L와 같이 차량에서 사용하는 시스템 이미지)
      2. Android Automotive OS AVD를 배포 타겟으로 선택후 RUN
    3. 하드웨어 프로필 만들기
      1. 분석하려는 하드웨어에 맞는 프로필 생성: 기기 유형, 디스플레이 크기, 해상도, 메모리 등
      1. 가속도계, 자이로스코프와 같은 센서를 사용하여 표준 Android API를 사용 가능한 경우, 차량에 하드웨어 속성을 전달
      2. 전달된 속성은 VHAL을 통해 구현, VehiclePropertyIds에 의해 모델링 됨
      3. 에뮬레이터가 실행되는 동안 속성의 값을 수정하면서 시뮬레이션 할 수 있음하드웨어 상태 에뮬레이션
    4. 운전 시뮬레이션
      1. 자동차 속도를 0이 아닌 값으로 바꾸고, 기어를 바꾸면 이동하는 자동차를 시뮬레이션 할 수 있음
      2. 속성 값은 GUI의 슬라이더를 조절하거나, VHAL 속성을 수정하여 바꿀 수 있음.

Android Studio 설치

  1. sudo apt-add-repository ppa:maarten-fonville/android-studio
  2. sudo apt-get update
  3. sudo apt-get install android-studio

설치완료

 

 

제조사가 제공하는 OEM 설치(혼다로 진행) https://global.honda/en/cars-apps/index.html

 

Honda Android Automotive OS Emulator | Honda Global

Test and evaluate apps for your Honda Android Automotive OS infotainment system.

global.honda

 

 


가상 디바이스 생성

 

 

혼다 디바이스 실행 성공

 


 

이후에 혼다 가상디바이스에서 LiME파일 생성후 volatiliy로 분석하면 메모리를 분석할 수 있다.

원래 내가 맡은 역할은 여기까지인데 LiME빌드까지 어쩌다보니 하게되었다.

 

다음에는 LiME을 빌드하는 과정을 올려보겠다.

728x90