휴대전화, 시계, 태블릿, 노트북, 폴더블, TV, 자동차 등 무엇을 대상으로 빌드하든 상관없이 필요한 코드 샘플, 가이드, API 참조입니다. 이 리소스를 활용하여 앱을 더 빠르고 높은 품질로 개발하세요.
Discover the latest app development tools, platform updates, training, and documentation for developers across every Android device.
Intent는 다른 앱 구성요소로부터 작업을 요청하는 데 사용할 수 있는 메시지 객체입니다. 인텐트는 여러 가지 방법으로 구성요소 간의 통신을 촉진하지만 다음과 같은 세 가지 기본적인 사용 사례가 있습니다. 이 페이지의 나머지에서는 인텐트의 작동 원리와 사용 방법을 설명합니다. 관련 정보는 다른 앱과의 상호작용 및 콘텐츠 공유를 참고하세요. 그림 1은 액티비티를 시작할...
알림은 사용 중이 아닌 앱의 이벤트에 관한 짧고 시기적절한 정보를 제공합니다. 이 문서에서는 다양한 기능을 사용하여 알림을 만드는 방법을 보여줍니다. Android에서 알림이 표시되는 방식에 관한 소개는 알림 개요를 참고하세요. 알림을 사용하는 샘플 코드는 GitHub의 사용자 샘플을 참조하세요. 이 페이지의 코드는 AndroidX 라이브러리의 NotificationCompat API를 사용합니다. 이 API를...
사용자는 기기에 설치된 앱 버전과 설치할 수 있는 업그레이드 버전에 관한 구체적인 정보를 알아야 합니다. 묶음 형태로 게시하는 앱을 포함한 다른 앱은 시스템에 앱의 버전을 쿼리하여 호환성을 확인하고 종속 항목을 파악해야 합니다. 앱을 게시하는 서비스는 사용자에게 버전을 표시할 수 있도록 앱에 버전을 쿼리해야 할 수도 있습니다. 게시 서비스에서는 앱 버전을 검사...
UI 상태 저장에서 언급했듯이 ViewModel 객체가 구성 변경사항을 처리할 수 있으므로 개발자는 회전이나 다른 상황에서 상태에 신경 쓸 필요가 없습니다. 그러나 시스템에서 시작된 프로세스 종료를 처리해야 하는 경우 SavedStateHandle API를 백업으로 사용하는 것이 좋습니다. 일반적으로 UI 상태는 활동이 아닌 ViewModel 객체에 저장되거나 참조됩니다. 따라서 onSaveInstanceState() 또는 remem...
뷰 결합은 상호작용하는 코드를 더 쉽게 작성할 수 있는 기능입니다. 있습니다. 모듈에서 사용 설정된 뷰 결합은 모듈의 바인딩을 생성함 클래스를 지정해야 합니다. 결합의 인스턴스 클래스는 표시됩니다. 뷰 결합은 모듈별로 사용 설정됩니다. 다음에서 뷰 결합을 사용 설정하려면 다음 안내를 따르세요. 모듈의 경우 모듈 수준에서 viewBinding 빌드 옵션을 true로 설정합니다. buil...
Gradle 버전 카탈로그를 사용하면 확장 가능한 방식으로 종속 항목 및 플러그인을 추가하고 유지할 수 있습니다. Gradle 버전 카탈로그를 사용하면 여러 모듈이 있을 때 종속 항목과 플러그인을 더 쉽게 관리할 수 있습니다. 종속 항목을 업그레이드해야 할 때마다 종속 항목의 이름과 버전을 개별 빌드 파일에 하드코딩하고 각 항목을 업데이트하는 대신, 종속 항목의 중앙 버전 카탈...
Android 스튜디오의 Gradle 빌드 시스템을 사용하면 외부 바이너리 또는 다른 라이브러리 모듈을 빌드에 종속 항목으로 포함할 수 있습니다. 종속 항목은 컴퓨터 또는 원격 저장소에 위치할 수 있으며 종속 항목에서 선언하는 전이 종속 항목도 자동으로 포함됩니다. 이 페이지에서는 Android Gradle 플러그인 (AGP)과 관련된 동작 및 구성에 관한 세부정보를 포함하여 Android 프로젝트에서...
Android 빌드 시스템은 앱 리소스 및 소스 코드를 컴파일하고 개발자가 테스트, 구축, 서명 및 배포할 수 있는 APK 또는 Android App Bundle로 패키징합니다. Gradle 빌드 개요와 Android 빌드 구조에서는 빌드 개념과 Android 앱의 구조를 살펴보았습니다. 이제 빌드를 구성할 차례입니다. 소스 코드가 Java, Kotlin 또는 둘 다로 작성되었는지와 관계없이 빌드에 사용할 JDK 또는 Java 언어 버전을 선택...