PackageManager 란
앱 관리를 담당하는 시스템 서비스입니다.
설치된 앱에 대한 정보를 쿼리할 뿐만 아니라 앱을 설치, 업데이트 및 제거하기 위한 프레임워크를 제공합니다.
PackageManager는 시스템 패키지 및 타사 응용 프로그램을 포함하여 장치에 설치된 모든 패키지의 데이터베이스를 유지하고 업데이트를 관리하며 패키지 간의 종속성이 충족되는지를 확인합니다.
패키지 설치 및 제거: PackageManager를 사용하여 Android 장치에서 패키지를 설치 및 제거할 수 있습니다. 이것은 PackageManager API를 사용하거나 장치의 설정 메뉴를 통해 프로그래밍 방식으로 수행할 수 있습니다.
패키지에 대한 정보 쿼리: PackageManager는 버전 번호, 패키지 이름 및 권한을 포함하여 설치된 패키지에 대한 정보를 쿼리하는 메서드를 제공합니다.
권한 관리: PackageManager는 설치된 애플리케이션에 대한 권한 관리를 담당합니다. 애플리케이션에 대한 권한 제한을 적용하여 사용자의 명시적인 허가 없이 중요한 데이터나 기능에 액세스할 수 없도록 합니다.
종속성 해결: 응용 프로그램이 설치되면 PackageManager는 다른 패키지에 대한 종속성을 확인하고 필요한 패키지를 설치하여 응용 프로그램이 올바르게 실행되는지 확인합니다.
intent 에 대응하는 앱 목록 구하기
public List<ResolveInfo> queryIntentActivities (Intent intent,
PackageManager.ResolveInfoFlags flags)
특정 intent 를 넣으면 이에 대응하는 앱의 목록이 list 로 나온다
전반적으로 PackageManager는 Android 운영 체제의 중요한 구성 요소이며 애플리케이션 및 해당 종속성을 관리하기 위한 통합 프레임워크를 제공합니다.
Application과 package
애플리케이션
Android 애플리케이션은 특정 기능 또는 기능 집합을 사용자에게 제공하는 완전한 소프트웨어 프로그램입니다.
사용자에게 원활한 경험을 제공하기 위해 함께 작동하도록 설계된 코드 및 리소스 모음으로 구성됩니다.
애플리케이션의 코드와 리소스는 기기의 내부 저장소에 저장됩니다.
매니페스트 파일은 Android 시스템에서 애플리케이션의 구성 요소와 권한을 관리하는 데 사용됩니다.
패키지
안드로이드 애플리케이션을 배포하고 설치하는데 사용되는 파일 포맷입니다.
애플리케이션 자체가 아니라 앱 설치를 위해 Android 기기에 설치되는 패키지 파일입니다.
Android 패키지는 애플리케이션의 코드, 리소스, 매니페스트 파일, 서명키를 포함하는 확장명이 ".apk"인 파일입니다.
패키지는 Android 기기에 설치되는 것이며 사용자가 애플리케이션을 사용할 때 상호 작용하는 것입니다.
패키지는 애플리케이션이 빌드될 때 Android 빌드 시스템에 의해 생성되며 Android 기기에서 애플리케이션을 실행하는 데 필요한 모든 것을 포함합니다.
사용자가 Android 기기에 애플리케이션을 설치하면 패키지가 설치되고 기기의 파일 시스템에 압축이 풀립니다.
'개발 > Android Studio' 카테고리의 다른 글
[Android] [통신#1] activity 간 intent 로 통신하기 (0) | 2023.04.10 |
---|---|
[Android] Aidl 로 class 옮기기 (0) | 2023.04.04 |
[Android] activity 를 intent 로 실행하는법 (startActivity startActivityForResult) (0) | 2023.03.24 |
[Android] sharedpreference (0) | 2023.03.17 |
[Android Studio] 부팅시 service 구동하기 (0) | 2023.03.13 |