안드로이드 앱은 여러 개의 화면, 그러니까 액티비티로 구성됩니다.

액티비티는 우리가 직접 관리하지는 않고 안드로이드 시스템이 관리하는데,

이렇게 안드로이드 시스템이 관리하는 요소를 애플리케이션 구성요소라고 합니다.

애플리케이션 구성요소

애플리케이션 구성요소로는 액티비티, 서비스 ,브로드캐스트 수신자, 내용 제공자가 있죠.

이미지 출처: https://www.edwith.org/boostcourse-android/lecture/17064/

이미지 출처: https://www.edwith.org/boostcourse-android/lecture/17064/

액티비티는 앱의 화면을 나타내고, 서비스는 화면 없이 동작하는 기능입니다.

브로드캐스트 수신자는 안드로이드 폰이 SNS를 받았을 때 안드로이드 시스템은 어떤 앱이 그걸 사용할지 몰라 필요한 녀석이 쓰라고 던져 주는데 이걸 받아서 처리하는 역할을 하죠.

그리고 내용 제공자는 보안 때문에 그대로 가져올 수 없는 파일을 가져올 수 있도록 해줍니다.

이것들은 시스템에서 관리하기 때문에 우리가 이걸 만들면 시스템이 이 정보를 알 수 있게 됩니다.

앱을 설치하는 시점에서 시스템이 이걸 확인하는데, 이게 매니페스트(Manifest)에 등록되어 있으면 사용할 수 있는 겁니다.

화면 전환

액티비티는 지금까지 많이 만들어봤죠? XML 파일을 통해 화면이 어떻게 보일지를 결정하고 Java 파일을 통해 기능을 구성했습니다.

그리고 화면 전환에 대한 것도 기능에 해당하므로 Java 파일에서 작성됩니다.

화면 전환이 어떻게 이루어지는지는 지금부터 실습을 통해 알아보도록 하겠습니다.

새 프로젝트를 MyIntent라는 이름으로 생성하고요, 여기서 intent가 무엇인지는 차차 알아갈겁니다.

프로젝트가 생성되면 일단 항상 그래왔듯이 메인 액티비티라는 액티비티가 기본으로 생성된 걸 볼 수 있죠?

그리고 이 녀석이 XML 파일과 Java 파일, 그러니까 activity_main.xmlMainActivity.java로 이루어져 있다는 것도 반복적으로 이야기했습니다.

전환될 액티비티도 하나의 액티비티이므로 또 XML 파일과 Java 파일로 일워져 있을거라는 것도 짐작할 수 있을겁니다.