AVD에 어플 설치하기

  • 환경: Ubuntu 16.04, Android 6.0.1_r77, emulator
  • 참고자료: AOSP AVD에 앱 설치 - stackoverflow, APK 설치
  • 결과
    • 안드로이드 앱을 APK로 만들어 AVD에 설치 가능
    • /system/app 폴더에 설치 가능
    • /data/app 폴더에 앱을 설치하려고 시도하였으나 안됨, AOSP build 자체에서 user app 설치가 불가능하다는 스택오버플로우 답변 있음
    • 구글 플레이 스토어 같은 어플의 APK를 받아 시도하였으나 안됨, 다운받는 곳의 출처가 불명확한 문제가 있으며 APK와 AVD의 안드로이드 버전이 안 맞을 가능성 있음

result

result

(1) < aosp root >/packages/apps/< your app folder >
위와 같은 경로가 되도록 /packages/apps/에 폴더 생성

(2) 위에서 생성한 폴더 안에 < yourapp.apk >Android.mk 파일을 만든다.
apk 파일은 안드로이드 스튜디오를 통해 만들 수 있다.

(3) Android.mk 파일은 다음을 포함한다.

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional

LOCAL_MODULE := < your app folder name >

LOCAL_CERTIFICATE := < desired key >

LOCAL_SRC_FILES := < app apk filename >

LOCAL_MODULE_CLASS := APPS

LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)

include $(BUILD_PREBUILT)

(4) < aosp root >/build/target/product/core.mk에 다음을 포함한다.

PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name >

(5) 다시 make하고 실행한다.