Android - Manifest & Components

2023. 11. 8. 14:03·Android
728x90

Manifest

안드로이드 시스템이 앱의 코드를 실행하기 전에 확보해야 하는 앱에 대한 필수 정보를 시스템에 제공하는 목록

  1. 앱의 패키지 이름
  2. 앱에서 사용되는 컴포넌트(액티비티, 서비스, 브로드캐스트 리시버, 컨텐트 프로바이더)
  3. 권한(Permission)
  4. 앱에서 요구하는 하드웨어와 소프트웨어 특징

1. Package name and Application ID

매니페스트 파일의 Root element() 에는 해당 앱의 패키지 네임이 반드시 기재되어야 합니다.

"com.ready.example" 이라는 패키지 네임의 manifest 파일



    ...

여기서 manifest의 패키지 네임은 우리가 앱을 빌드하여 APK 를 추출하는 과정에서 Android Build Tool 에 의해 다음 2가지 목적으로 사용됩니다.

  • App Resource 에 접근하는데 사용되는 R 클래스의 네임스페이스로 적용됩니다. 위 예에서는 com.ready.example.R 클래스가 생성됩니다.
  • 매니페스트 파일 내에서 선언된 상대경로에 적용됩니다.
    예를 들어 \<activity android:name=".MainActivity> 라고 선언했다면 이는 "com.ready.example.MainActivity" 를 가리키게 됩니다.

2. App Components

4대 컴포넌트(Activity, Service, Broadcast Receiver, Content Provider), 이 컴포넌트들을 앱에서 사용한다면 매니페스트 파일에 등록해줘야 합니다. Manifest 파일 내에서 각각 다음 태그를 통해 선언할 수 있습니다.

  • <activity> : Activity
  • <service> : Service
  • <receiver> : Broadcast Receiver
  • <provider> : Content Provider

4대 컴포넌트들은 각각 인텐트에 의해 활성화됩니다.
여기서 인텐트란 메세지 객체로, 어떤 행동을 수행할지에 대한 명령이나 작업에 필요한 데이터를 포함합니다.
(앱이 인텐트를 시스템에 발행하면 시스템은 각 앱의 매니페스트에 선언된 intent-filter 에 기초하여 처리할 수 있는 인텐트를 컴포넌트를 찾게 됩니다. 만약 여러 개의 앱이 인텐트를 다룰 수 있다면, 사용자가 해당 인텐트를 어떤 앱에게 넘길지 선택할 수 있습니다.)

728x90
LIST

'Android' 카테고리의 다른 글

Android Spinner  (3) 2023.12.04
Android - Garbage Collection(GC)  (2) 2023.11.08
Android Layout  (1) 2023.09.04
안드로이드 Activity 생명주기  (1) 2023.08.29
Android 4대 컴포넌트  (0) 2023.08.29
'Android' 카테고리의 다른 글
  • Android Spinner
  • Android - Garbage Collection(GC)
  • Android Layout
  • 안드로이드 Activity 생명주기
Mr. Joo
Mr. Joo
  • Mr. Joo
    삽질의 시작
    Mr. Joo
  • 전체
    오늘
    어제
    • 분류 전체보기 (212) N
      • Flutter (70)
      • Android (9)
      • Swift (4)
      • React (11)
      • 인공지능 (4)
      • CS (10)
      • 개발 뉴스 (101) N
      • IT 기기 (1)
      • 알면 유용한 정보 (2)
  • 인기 글

  • 태그

    앱
    Dart 기초
    react
    플러터
    앱개발
    뉴스
    개발 뉴스
    오늘의 기술 뉴스
    기술
    개발 이슈
    Flutter
    DART
    뉴스 모음
    이슈
    기술 뉴스
    오늘의 이슈
    개발
    오늘의 뉴스
    오늘의 개발 뉴스
    앱 개발
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
Mr. Joo
Android - Manifest & Components
상단으로

티스토리툴바