1. APK 파일 구조
○ 안드로이드 앱 확장자는 APK(ZIP으로 생각하면 편함)로 다양한 파일과 폴더가 압축되어 있는 파일이다.
○ 위 그림은 압축되기 전 APK 파일의 폴더 구조를 확인할 수 있다.
○ 모바일에서는 APK 파일을 압축해제 한 뒤 사용한다고 보면 편함
○ APK 파일을 압축 프로그램으로 해제하면 폴더 및 파일 추출 가능
구성 요소 | 설명 |
AndroidManifest.xml | ● 앱에 대한 구성 세부 정보가 포함된 매니패스트 파일 |
classes.dex | ● 개발자가 작성한 소스코드에서 생성된 Dalvik Bytecode가 포함됨 |
resources.arsc | ● 컴파일 된 리소스가 포함됨 |
res | ● resource.arsc에서 제외된 정보를 포함하는 디렉터리 ● 애플리케이션에 필요한 리소스가 포함됨 ● 앱 아이콘과 같은 이미지 등 |
META-INF | ● 매니패스트 파일과 애플리케이션 인증서 등이 포함됨 |
assets | ● 개발자는 이 폴더를 사용해 음악, 비디오 파일 등의 저장 가능 |
2. AndroidManifest.xml
구성 요소 | 설명 |
<mainfest> | ● AndroidManifest.xml 파일의 루트 요소 ● <application> 요소를 포함해야 하며 xmlns:android 및 package 속성을 지정함 |
<application> | ● 애플리케이션 선언으로, 애플리케이션의 각 구성요소를 선언 ● 모든 구성요소에 영향을 줄 수 있는 속성을 가진 하위 요소를 포함 |
< uses-permission> | ● 민감한 사용자 데이터(예: 연락처, SMS)에 접근하기 위한 권한 선언 ● 시스템 기능(예:카메라 등)에 접근하기 위한 권한 선언 |
<activity>, <service>, <provider>,<receiver> |
● 앱 컴포넌트에 대한 선언 |
○ <uses-permission>
● 민감한 사용자 데이터(예: 연락터, SMS)
● 특정 시스템 기능(예: 카메라, 인터넷 액세스)에 액세스하기 위한 권한을 선언
'기반 지식 > Android' 카테고리의 다른 글
6. 모바일 취약점 진단 항목 (0) | 2024.12.09 |
---|---|
5. 녹스(Nox Player) 가상 애뮬 설치 (0) | 2024.12.06 |
3. 안드로이드 디바이스 디렉터리 구조 (1) | 2024.12.04 |
2. 안드로이드 앱 진단 환경의 이해 및 설치 (0) | 2024.12.03 |
1. 안드로이드(Android)의 이해 (0) | 2024.12.02 |