====== Android SDK ====== ===== 설치 ===== * http://developer.android.com/sdk/index.html 에서 다운로드하여 설치하고, * http://developer.android.com/sdk/adding-components.html 에 따라 SDK 컴포넌트들도 깔아준다. * ''/platform-tools''와 ''/tools'' 디렉토리를 PATH 환경변수에 추가한다. 여러가지 명령 실행에 필요하다. * [[http://dev.classmethod.jp/smartphone/build-fast-android-emulator/|Intel 제공 Android SDK]] GPU를 사용하여 성능이 좋다고 한다. ==== Genymotion ==== * http://www.genymotion.com/ * 고성능 Android Emulator * [[https://moordev.tistory.com/249|MoorDev의 우분투사용 분투기 :: 리눅스에서 안드로이드를 돌리자. Genymotion]] ==== HAXM ==== * [[https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager|Android* - Intel® Hardware Accelerated Execution Manager]] * [[http://niceilm.blogspot.kr/2013/03/android-emulator-for-haxm.html|안드로이드 에뮬레이터 속도업!!!(android emulator for haxm)]] ===== 안드로이드 AVD/에뮬레이터 ===== * ''ANDROID_SDK_HOME'' 환경변수가 설정 돼 있으면 그 아래에 AVD가 설치된다. * 윈도우의 경우 **AVD Manager**를 실행한다. * 그 외는 ''/tools/android'' 명령을 실행하고, ''Tools -> Manage AVDs'' 실행. * **New...** 버튼을 눌러 새로운 AVD 구성 * Start 버튼 눌러서 실행. * 명령행 실행 : ''emulator -avd AVD이름'' * 한국어 환경 : Menu 버튼 누르고 **Settings -> Language & Keyboard -> Select Language** 에서 한국어 선택 * 윈도우에서 Android 에뮬레이터가 한글 폴더명에 설치될경우 문제가 발생한다. android move avd –n <가상장치 이름> –p C:\옮길 디렉토리이름\가상장치 이름 * 참조 * http://dynamide.tistory.com/492 * http://whatwant.tistory.com/309 ===== Google Play 설치 ===== * [[http://www.javacodegeeks.com/2013/05/installing-google-play-on-android-emulator.html|Installing Google Play on Android Emulator | Java Code Geeks]] ===== 한글 키보드 설치 ===== * http://www.androidpub.com/keyboard 에서 한글 키보드 HangulKeyboard.apk 다운로드 * 프로그램을 설치할 에뮬레이터 실행 * ''adb install HangulKeyboard.apk'' * Menu 버튼을 누르고, **설정 -> Language & Keyboard**에서 **한글 접촉시 키보드** 선택. * 테스트 결과 androidpub의 HangulKeyboard.apk는 2.3 에뮬레이터에서 작동 안했다. 다른 키보드 앱을 구해서 설치했다. ===== hosts 파일 수정 ===== * http://www.sacoskun.com/2009/06/configure-hosts-file-in-android.html 참조 * hosts 파일을 수정할 에뮬레이터 실행 단, 실행시 ''-partition-size 512'' 옵션 필요. 예) emulator -avd avd_name -partition-size 128 * https://groups.google.com/forum/#!topic/android-platform/u2bhkvyag0U 참조했음 * Android Emulator는 에뮬레이터 실행시 /system 파티션을 최소 공간으로 줄인 상태로 실행한다. 따라서 더 이상의 내용을 채워 넣는게 불가능하다. 이 문제를 해소하려고 억지로 파티션 용량을 지정한다. * hosts 편집/복사 과정 수행. hosts 파일은 무조건 **Unix 형식이어야 한다. 윈도우 환경에서 편집시 Unix 형식을 지원하는 에디터를 사용할 것!** adb remount adb pull /system/etc/hosts /path/to/local/hosts # hosts 파일수정 adb push /path/to/local/hosts /system/etc/hosts * 잘 들어갔는지 확인은 adb -e shell # cat /system/etc/hosts * 실제 안드로이드 기기에 대해 작업 할 때는 제일 먼저 root 권한을 획득해야 한다. adb root # 이후 위의 작업 수행 * 안드로이드 에뮬레이터의 /system 파티션은 아무리 변경해도 재부팅을 하고 나면 다시 원상태로 된다.(정확히 말하면 부팅시에 SDK에 있는 기본 system.img를 복제해서 사용하고, 종료시에 복제한 system.img를 삭제해 버린다고 한다) 이에 대한 해결책이 있으나 난잡하여 그냥 생략하고, hosts 설정 명령들을 셸 스크립트로 만들어서 에뮬레이터를 띄울 때 마다 다시 설정하는 것으로 해결했다. http://www.virgo81.net/70 참조. ===== Maven 연동과 메모리 지정 ===== * [[http://javacan.tistory.com/198|자바캔(Java Can Do IT) :: [팁] Eclipse+Android+Maven 설정 기초]] * [[http://www.markhneedham.com/blog/2012/01/07/learning-android-java-lang-outofmemoryerror-java-heap-space-with-android-maven-plugin/|Learning Android: java.lang.OutOfMemoryError: Java heap space with android-maven-plugin]] * -Xmx 옵션을 주거나 com.jayway.maven.plugins.android.generation2 android-maven-plugin 3.0.0-alpha-13 10 /path/to/android-sdk -Xms256m -Xmx512m true true * 플러그인의 버전 정보를 아예 빼버려서 최신 플러그인을 사용하면 해결된다. ===== 참고 ===== * [[https://engineering.linecorp.com/ko/blog/android-%ec%95%b1%ec%9d%98-%ed%81%ac%ea%b8%b0%eb%a5%bc-%ec%a4%84%ec%9d%b4%eb%8a%94-10%ea%b0%80%ec%a7%80-%eb%b0%a9%eb%b2%95/|Android 앱의 크기를 줄이는 10가지 방법 - LINE ENGINEERING]]