170 likes | 391 Views
Ch 08. 안드로이드 마켓에 앱 올리기. 8.1 앱 배포 버전 준비. 배포를 위해 앱에 준비해야 할 몇 가지 사항 디버깅 및 로깅 코드 삭제 앱 버전 정하기 앱 컴파일하기 보호 키로 컴파일한 앱에 서명하기. 8.1 앱 배포 버전 준비. 8.1.1 디버그 코드 지우기 KiloGap 폴더의 AndroidManifest.xml 파일 ‘ debuggable ’을 찾아 false 로 설정. 8.1 앱 배포 버전 준비. 8.1.2 앱의 버전 AndroidManifest.xml 파일
E N D
8.1 앱 배포 버전 준비 • 배포를 위해 앱에 준비해야 할 몇 가지 사항 • 디버깅 및 로깅 코드 삭제 • 앱 버전 정하기 • 앱 컴파일하기 • 보호 키로 컴파일한 앱에 서명하기
8.1 앱 배포 버전 준비 • 8.1.1 디버그 코드 지우기 • KiloGap 폴더의 AndroidManifest.xml 파일 • ‘debuggable’을 찾아 false로 설정
8.1 앱 배포 버전 준비 • 8.1.2 앱의 버전 • AndroidManifest.xml 파일 • 상단에서 앱 버전 이름과 버전 코드 값 설정가능 • 첫 번째 앱일 테니 1로 설정 • 앱을 출시하면 이후 업데이트할 때 마다 이 값을 적절하게 갱신 • 안드로이드 시스템은 버전 정보를 검사하거나 정해주지 않음 • 장기적인 앱 전략을 위한 중요한 데이터 • 버전 이름은 사용자에게 보이는 값 • 일반적으로 <major>.<minor>.<point> 형식(예를 들어 1.0.0 같이) 이용 • 버전 코드는 양의 정수값 • 버전 이름과 관련 지을 필요는 없음 • 메이저 업그레이드나 마이너한 버그 수정본을 구별하지 않음 • 업데이트한 앱을 릴리스할 때마다 1씩 증가
8.1 앱 배포 버전 준비 • 8.1.2 앱의 버전 • Manifest 파일에서 쓰이는 예
8.1 앱 배포 버전 준비 • 8.1.3 앱에 서명하기 • 모든 안드로이드앱에는 개발자의 디지털 서명이 꼭 필요 • 1) 터미널 애플리케이션을 실행하고, KiloGap 디렉터리를 찾음 • cd ~/Desktop/KiloGap • 2) 릴리스 모드로 앱을 컴파일 • ant release • ‘BUILD SUCCESSFUL’이라는 마지막 메시지 • 서명되지 않은 Kilo-unsigned.apk라는 바이너리
8.1 앱 배포 버전 준비 • 8.1.3 앱에 서명하기 • 3) 암호키 생성 - 상호작용을 하며 많은 질문이 있는 단계 • keytool -genkey -v -keystore keystore -alias alias -keyalg RSA -validity days
8.1 앱 배포 버전 준비 • 8.1.3 앱에 서명하기 • 3) 암호키 생성
8.1 앱 배포 버전 준비 • 8.1.3 앱에 서명하기 • 4) 생성한 키로 앱에 서명합니다. • jarsigner -verbose -keystore myAndroidKey.keystore • ./bin/Kilo-unsigned.apk myAndroidKeyAlias • 이 명령이 실행될 때 keystore 패스워드를 요청 받음 • 5) .apk 파일 정렬 • zipalign -v 4 ./bin/Kilo-unsigned.apk ./bin/Kilo.apk • 긴 메시지 출력 후 ‘Verification successful’이라는 메시지로 완료
8.2 안드로이드 마켓에 앱 업로드하기 • 앱을 안드로이드 마켓에 업로드 • 앱을 업로드하려면 안드로이드 개발자로 등록이 선행되어야 함 • 1) 웹브라우저 실행 후 • http://market.android.com/publish/ 접속해 구글 계정으로 로그인 • 2) 로그인 후 자동으로 진행되지 않으면, http://market.android.com/publish/Home으로 가서 ‘Upload Application’ 버튼 클릭
8.2 안드로이드 마켓에 앱 업로드하기 • 앱을 안드로이드 마켓에 업로드 • 3) ‘Application.apk file’ 옆의 ‘Choose File’ 버튼 클릭 • 하드 드라이브에서 Kilo.apk를 찾아 ‘Upload’ 버튼 클릭 • 4) 마켓 페이지에서 보이도록 할 앱 스크린샷 업로드 • 5) ‘Listing Details’ 섹션에서 앱 이름 기재 (총 30글자까지). • 6) 앱 설명 기재 (총 325글자까지) • 7) 앱 종류와 분류 선택 • 8) 앱 가격 지정 • 9) ‘Publishing Options’ 섹션 - 복사 방지와 위치 설정 • 10) ‘Contact Information’ 섹션 - 웹 주소, 이메일, 전화번호 기재 • 11) ‘Consent’ 섹션에서 약관에 동의 • 12) ‘Publish’
8.3 앱 직접 배포 • 안드로이드 플랫폼의 가장 매력적인 특징 • 개발자가 안드로이드 마켓을 완전히 배제하고 사용자에게 바로 배포 • 기업 IT 부서가 직원들에게 사내 앱을 배포하고자 할 때 • 안드로이드 마켓에 올리기 전에 앱 베타판을 시험할 때 등에 도움 • 서명된 .apk를 웹 서버에 올리고, 사용자에게 직접 이 링크를 제공 • 사용자는 그 링크를 클릭(이메일 메시지나 웹페이지 등에서)해 앱 다운로드 • QR 코드를 이용하는 간편한 방법도 있음
8.3 앱 직접 배포 • 첫 설치 시 까다로운 점 - 사용자의 설정 필요 • 사용자가 직접 Settings Applications에서 Unknown Sources(이하 ‘사용자가 알 수 없는 소스’) 옵션을 사용하게 설정하여야 마켓이 아닌 곳의 애플리케이션도 설치 가능
8.3 앱 직접 배포 • 첫 설치 시 까다로운 점 - 사용자의 설정 필요 • 이를 설정하지 않으면, 앱은 내려 받아지나 • [그림 8-6]처럼 ‘설치할 수 없다’는 경고 메시지 • 관련 세팅 창으로 바로 이동시키거나 설치 취소
8.3 앱 직접 배포 • 첫 설치 시 까다로운 점 – 사용자의 설정 필요 • 체크박스를 처음으로 활성화한 결과
8.4 참조할 자료 • 안드로이드 SDK의 기술적인 부분에 대한 문서 • 안드로이드 토론 메일링 리스트(http://groups.google.com/group/android-discuss) • 안드로이드 개발자 메일링 리스트(http://groups.google.com/group/android-developers) • jQTouch 메일링 리스트(http://groups.google.com/group/jqtouch) • 폰갭 메일링 리스트(http://groups.google.com/group/phonegap) • WebView 안드로이드 레퍼런스(http://developer.android.com/reference/android/webkit/ WebView.html) • WebChromeClient 안드로이드 레퍼런스(http://developer.android.com/reference/android/ webkit/WebChromeClient.html) • WebViewClient 안드로이드 레퍼런스(http://developer.android.com/reference/android/ webkit/WebViewClient.html) • WebSettings 안드로이드 레퍼런스 (http://developer.android.com/reference/android/webkit/ WebSettings.html)