[안드로이드] APK 구동과 설치
APK(Android Application의 구동과 설치
배포된 apk파일을 디바이스 내에 설치하기
웹 안드로이드 포탈 사이트 등에서 배포된 어플리케이션 등을 보면 *.apk 파일을 쉽게
접할 수 있습니다. 이 확장자를 가진 파일을 디바이스에 포팅하는 법을 알아보겠습니다.
그 방법에는 제가 알아낸 지식 안으로는 4가지 방법이 있습니다.
web browser에서 apk를 설치하는 방법
http://www.youtube.com/watch?v=RSOiQsYLrEA
adb 이용 :: install 옵션
$ adb install *.apk
adb 이용 :: push 옵션
$ adb push *.apk /data/...
Device에서 apk installer를 이용하여 install
먼저 첫 번째 방법은 말 그대로 디바이스의 browser를 이용하여 apk를 다운받아 installer로
설치하는 가장 간단한 방법입니다. (동영상 참조)
두 번째 방법은 tools의 adb의 옵션 중, install이라는 명령어를 사용하는 방법입니다.
다음 예제 스크린 샷은 apk 파일을 동일 경로 내에 옮겨 놓았을 때 입니다.
예제를 하나 설치해보겠습니다. "TouchPlayActivity.apk"가 Failure가 뜨네요;;
아마도 apk를 생성할 때 만들어진 미니페스트의 SDK version(uses-sdk minSdkVersion 참조)
이 호환되지 않아서 일겁니다.
install 옵션으로 복사속도와 디바이스 내의 복사된 경로 그리고 설치과정을 볼 수 있습니다.
API 버젼이 1.0인 apk 아무 파일을 하나 install 해보도록 하겠습니다.
음... 뭔가 dispatch가 안된다고 뭐라하긴 하는데 결과는 Success 네요 ㅎ~
Eclipse로 apk(Android Application)를 구동해보자!
실제로 USB driver만 설치 되어 있다면, Eclipse를 통해 디바이스에 어플리케이션을 포팅하는
방법은 기존 에뮬레이터에 적용되는 방법과 동일 합니다.
기기를 연결 해놓은 상태로 이클립스에서 Complie (Ctrl+F11) 을 해보면 다음과 같은 창이 뜹니다.
옵션 버튼이 두 가지가 있는데 위쪽 버튼은 "Choose a running Android device(리얼디바이스)"
아래쪽 버튼은 "Launch a new Android Virtual Deivce(버추얼디바이스)" 라고 써있네요.
기기가 연결된 상태라면 리얼디바이스가 잡힐 껍니다. Target에 "X" 라고 써있는 이유는
여러 가지 이유가 있지만 현재는 생성된 프로젝트의 SDK(API) version보다 낮을 경우일 껍니다.
여러 가지 Sample들을 Test 해보았는데, 저 경고를 무시해도 컴파일이 되긴 합니다만,
런타임 오류가 나는 경우가 대부분이더군요.