안드로이드 스튜디오를 통해 프로그래밍을 하다보면, 앱의 빌드가 어떤 절차로 이루어지는지에 대해 제대로 알지 못해도 자동으로 앱을 빌드한다는 것을 알 수 있다.
그래서 이번에 안드로이드 앱 빌드 절차에 대한 이해가 필요하다고 생각하여 학습하였고, 그 내용을 정리 하고자 한다.
안드로이드 스튜디오에선 따로 명령을 하지 않아도 프로젝트의 내용을 수정하면 자동으로 앱을 빌드한다.
위 과정에서 프로젝트 빌드와 관리에 필요한 모든 것을 그래들(Gradle) 자동화 빌드 도구를 사용해 처리하므로 신경 쓰지 않아도 된다.
레이아웃 파일의 내용은 어떻게 애플리케이션의 View 객체로 변환되는 절차는 아래와 같다.
위 과정에서 View 인스턴스는 뷰 계층 구조를 따라 루트 레이아웃부터 순서대로 생성되며,이러한 과정을 인플레이트(inflate)라 한다.
뷰 클래스를 xml로 정의하는 대신에 액티비티에서 코드로 생성 할 수도 있다. 하지만 xml로 정의할 경우 프레젠테이션 계층을 애플리케이션 로직과 분리할 수 있기에 좋은 방법은 아니다.
앞서 알아본 모든 과정은 안드로이드 스튜디오 IDE에 통합되어 자동으로 수행된다.
그래서 안드로이드 스튜디오 외부에서 직접 그래들(Gradle)을 실행하여 빌드 작업을 수행하려면 아래와 같은 절차를 거친다.
Mac/Linux : ./gradlew tasks
Windows : gradlew.bat tasks
Max/Linux : ./gradlew installDebug
Windows : gradlew.bat installDebug
위 과정을 통해 연결된 장치에 앱이 빌드되어 설치된다.
하지만 실행은 되지 않으며, 실행하려면 해당 장치에서 직접 앱을 실행해야 한다.