Android.Manifest 클래스는 Android 애플리케이션이 접근할 수 있는 모든 시스템 권한(Permission)을 정의 해놓은 클래스이다. 이를 AndroidManifest.xml에서 선언하거나, 런타임시(Android 6.0 마시멜로 이상부터)사용자에게 요청할 수 있는 권한들의 상수 이름을 제공한다. 권한 유형역할예시Normal Permissions (일반 권한)앱 설치 시 자동으로 부여되며 사용자에게 별도로 요청할 필요가 없음INTERNET (인터넷 접속)Dangerous Permissions (위험 권한)사용자의 민감한 데이터나 장치 기능에 접근하므로, 런타임 시 사용자에게 명시적인 동의를 받아야 함.CAMERA, WRITE_EXTERNAL_STORAGESignature Permissio..
1. AppCompatActivity 클래스란?AppCompatActivity 클래스는 클래스명칭대로 Android의 기본화면을 구성하는Activity 클래스를 상속받아 기능을 확장한 클래스이다. 이 클래스의 주된 목적은 하위 호환성(Backward Compatibility)를 제공하여 이전 버전의 Android 기기에서도 최신 Android 기능(특히 Material design과 Toolbar)을 안정적으로 사용할 수 있게하는 클래스이다. 2. 기본 구조부모 클래스android.app.Activity안드로이드 앱의 기본 단위로, 사용자와 상호작용하는 단일 화면을 의미자식 클래스androidx.appcompat.app.AppCompatActivityActivity를 상속하여 테마, 위젯, 호환성 기능..
Companion Object란 무엇인가? 1. java의 static 멤버와 유사한 역할코틀린은 Java와 달리 static 키워드를 직접지원하지 않는다.대신 companion ojbect 클래스 레벨의 멤버를 정의하여 Java의 static 변수나 메서드 처럼 사용할 수 있게 하는 방법이 표준이다. 2. companion object의 핵심 특징 (vs java static과의 비교) - Singleton Object : companion object는 그 자체가 객체이다. 코틀린 컴파일러는 이를 내부적으로 Companion이라는 이름의 싱글톤 객체로 변환한다. - 유연성 : 일반적인 객체처럼 다른 인터페이스를 구현하거나, 클래스를 상속 받을 수 있다. 3. companion object의 ..