Android Ant Build

많은 분들이 안드로이드 프로젝트를 이클립스에서 개발하는데, 이클립스에서만 개발할 수 있는 것이 아닙니다. 리눅스를 사용하시는 분은 VI로 개발하면서 Ant로 APK를 만들기도 하고, Ant 관련된 다양한 작업들을 자동화해서 처리합니다.

요즘은 Android Maven으로 구조를 잡아서 빌드처리를 진행하긴 하지만, 기존 레거시시스템에서 Ant를 추가하는 방법을 알아보겠습니다.

1. 기존 프로젝트에서 Ant 스크립트 추가

방법
android update project –name 프로젝트명 –target 최소SDK번호 –path 폴더

샘플
D:ProjectsTestApp>android update project –name TestApp –target 7 –path ./
Updated project.properties
Updated local.properties
Added file D:ProjectsTestAppbuild.xml
Updated file D:ProjectsTestAppproguard-project.txt

2. Ant 빌드

커맨드 명령어(해당프로젝트에서) : ant release
이클립스에서 build.xml 선택 후 Run As > Ant Build

3. Android Ant 구조

1) 프로젝트 별 build.xml 실행
2) SDK tools/ant/build.xml 실행
– 각 단계 커스텀 target 지정 가능하도록 함
– 각 단계별 target을 지정하면 custom하게 원하는 작업을 진행가능

-pre-build
-pre-compile
-post-compile
-post-package
-post-build
-pre-clean

4. Signed APK 추출을 위한 ant.properties 파일 추가 (선택적)
– 미리 정의해둔 프로퍼티를 추가하면 Signed APK 파일로 빌드한다

key.store=../Common/key.keystore # 키위치
key.alias=alias # Alias 지정
key.store.password=password # Password
key.alias.password=password # Password

5. 각 단계 커스텀 target 작업 custom_rules.xml 추가 (선택적)
– 프로젝트 폴더에 custom_rules.xml 추가

<xml version="1.0" encoding="UTF-8"?>
<project name="custom_rules">
   <target name="-post-build">
    <echo message="Copy APK..." />
    <tstamp />
    <property name="outputfolder" value="../release/${DSTAMP}${TSTAMP}/"/>
    <mkdir dir="${outputfolder}"></mkdir>
    <copy file="${out.final.file}" tofile="${outputfolder}/${ant.project.name}-${DSTAMP}${TSTAMP}.apk" overwrite="true"/>
  </target>
</project>

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중