반응형 분류 전체보기356 앱 개발 방법 - 매니페스트 파일 (구성 요소 선언) 구성 요소 선언 매니페스트의 주요 작업은 시스템에 앱의 구성 요소에 대해 알리는 것입니다. 예를 들어 매니페스트 파일은 액티비티를 다음과 같이 선언할 수 있습니다. ... 요소에 android:icon 특성은 앱을 식별하는 아이콘에 대한 리소스를 가리킵니다. 요소에서는 android:name 특성이 Activity 하위 클래스의 완전히 정규화된 클래스 이름을 나타내며 android:label 특성은 액티비티의 사용자에게 표시되는 레이블로 사용할 문자열을 나타냅니다. 다음 요소를 사용하여 모든 앱 구성 요소를 선언해야 합니다. 액티비티의 경우 요소 서비스의 경우 요소 Broadcast Receiver의 경우 요소 콘텐츠 제공자의 경우 요소 소스에는 포함시키지만 매니페스트에서는 선언하지 않는 액티비티, 서비.. 2022. 1. 1. 앱 개발 방법 - 매니페스트 파일 (AndroidManifest.xml) 매니페스트 파일 Android 시스템이 앱 구성 요소를 시작하려면 시스템은 우선 앱의 매니페스트 파일, AndroidManifest.xml 을 읽어서 해당 구성 요소가 존재하는지 확인합니다. 앱은 이 파일 안에 모든 구성 요소를 선언해야 하며 이 파일은 앱 프로젝트 디렉토리의 루트에 있어야 합니다. 매니페스트는 앱의 구성 요소를 선언하는 것 이외에도 많은 역할을 합니다. 예를 들면 다음과 같습니다. 앱이 요구하는 모든 사용자 권한(예: 인터넷 액세스, 사용자의 연락처에 대한 읽기 액세스)를 식별합니다. 앱에서 사용하거나 요구하는 하드웨어 및 소프트웨어 기능(예: 카메라,블루투스 서비스, 멀티터치 화면)을 선언합니다. 앱이 링크되어야 하는 API 라이브러리(Android 프레임워크 API 제외)(예: Go.. 2022. 1. 1. 앱 개발 방법 - 구성 요소 활성화 (인텐트(Intent)) 인텐트(Intent) 구성 요소 유형 네 가지 중 세 가지(액티비티, 서비스, Broadcast Receiver)는 인텐트라는 비동기식 메시지로 활성화됩니다. 인텐트는 런타임에서 각 구성 요소를 서로 바인딩합니다. 이것은 일종의 메신저라고 생각하면됩니다. 즉 구성 요소가 어느 앱에 속하든 관계없이 다른 구성 요소로부터 작업을 요청하는 역할을 합니다. 인텐트는 Intent 객체로 생성되며, 이것이 특정 구성 요소(명시적 인텐트)를 활성화할지 아니면 구성 요소의 특정 유형(암시적 인텐트)을 활성화할지 나타내는 메시지를 정의합니다. 액티비티와 서비스의 경우, 인텐트는 수행할 작업을 정의하며(예: 무언가를 보거나 보내는 작업) 시작되는 구성 요소가 알아야 할 것이 많이 있기는 하지만 그중에서도 작업을 수행할 데.. 2022. 1. 1. 앱 개발 방법 - 앱 기본 요소 (콘텐츠 제공자) 콘텐츠 제공자 콘텐츠 제공자는 파일 시스템, SQLite 데이터베이스, 웹상이나 앱이 액세스할 수 있는 다른 모든 영구 저장 위치에 저장 가능한 앱 데이터의 공유형 집합을 관리합니다. 다른 앱은 콘텐츠 제공자를 통해 해당 데이터를 쿼리하거나, 콘텐츠 제공자가 허용할 겨우에는 수정도 가능합니다. 예를 들어 Android 시스템은 사용자의 연락처 정보를 관리하는 콘텐츠 제공자를 제공합니다. 적절한 권한을 가진 앱이라면 콘텐츠 제공자(예 : ContactsContract.Data)를 쿼리하여 특정한 인물에 대한 정보를 읽고 쓸 수 있습니다.콘텐츠 제공자를 데이터베이스에 대한 추상화로 생각하기 쉽습니다. 이런 일반적인 사례에 대해 콘텐츠 제공자에 빌드된 API 및 지원이 많기 때문입니다. 다만 시스템 설계 관점.. 2021. 12. 31. 앱 개발 방법 - 앱 기본 요소 Broadcast Receiver(브로드캐스트 리시버) Broadcast Receiver(브로드캐스트 리시버) Broadcast Receiver는 시스템이 정기적인 사용자 플로우 밖에서 이벤트를 앱에 전달하도록 지원하는 구성 요소로 앱이 시스템 전체의 브로드캐스트 알림에 응답할 수 있게 합니다. Broadcast Reciver도 앱으로 들어갈 수 있는 또 다른 명확한 진입점이기 때문에 현재 실행되지 않은 앱에도 시스템이 브로드캐스트에 전달할 수 있습니다. 예를 들어 앱이 사용자에게서 예정된 이벤트에 대해 알리는 알림을 게시하기 위한 알람을 예약할 경우, 그 알람을 앱의 Broadcast Receiver에 전달하면 알람이 울릴때까지 앱을 실행하고 있을 필요가 없습니다. 대다수의 브로드캐스트는 시스템에서 발생합니다. 예컨대 화면이 꺼졌거나 배터리가 부족하거나 사.. 2021. 12. 31. 앱 개발 방법 - 앱 기본 요소 (서비스) 서비스 서비스는 여러가지 이유로 백그라운드에서 앱을 계속 실행하기 위한 다목적 진입점입니다. 이는 백그라운드에서 실행되는 구성 요소로, 오랫동안 실행되는 작업을 수행하거나 원격 프로세스를 위한 작업을 수행합니다. 서비스는 사용자 인터페이스를 제공하지 않습니다. 예를 들어 서비스는 사용자가 다른 앱에 있는 동안에 백그라운드에서 음악을 재생하거나 사용자와 액티비티 간의 상호작용을 차단하지 않고 네트워크를 통해 데이터를 가져올 수도 있습니다. 다른 구성요소(예 : 액티비티)가 서비스를 시작한 다음 실행되도록 두거나 자신에게 바인딩하여 상호작용하게 할 수도 있습니다. 사실 시스템에 앱 관리 방법을 지시하는 것은 서로 매우 뚜렷하게 구분되는 두 가지 의미 체계 서비스입니다. 시작된 서비스는 작업이 완료될 때까지 .. 2021. 12. 31. 이전 1 ··· 53 54 55 56 57 58 59 60 다음 반응형