Programming/Android
[Android] 유저 알림(Toast, Vibration, Beep)
Toast 메세지 Toast는 사용자에게 짧은 메시지 형식으로 정보를 전달하는 팝업을 의미한다. 메시지를 표시할 공간만 차지하고 시간이 지나면 자동으로 사라지는 메시지이다. 메시지에 대한 사용자의 응답을 필요하지 않고 단순히 사용자에게 정보를 전달할 용도로 많이 사용된다. Toast 사용법 기본 Toast 메세지 출력 Toast 클래스의 makeText() 메서드를 통해 Toast 객체를 생성한뒤 makeText() 메서드의 매개변수 현재 context 정보, 토스트 메시지에 보여줄 문자열, 토스트 메시지의 지속 시간을 파라미터로 전달하여 객체를 생성한 후에 show() 메서드를 호출하여 토스트 알림을 표시한다. Toast.makeText(getApplicationContext(), "Toast Mess..
[Android] Permission
안드로이드에는 두 종류의 권한이 있다. 첫번째는 사용자에게 따로 권한 승인 여부를 묻지 않고, 설치 시간에 권한을 부여받을 수 있는 설치 시간 권한(Install-time permissions)이다. 이 종류에 해당하는 권한들은 Manifest에 선언하기만 하면 앱 설치와 동시에 사용할 수 있는 권한들이다. 두번째는 다이얼로그를 통해 사용자에게 직접 권한 승인을 요청하여 권한을 부여받는 런타임 권한(Runtime-permission)이다.주로 개인정보에 접근할 수 있는 권한을 런타임 권한으로 분류하고 있다. 주요 권한 종류 ACCESS_FINE_LOCATION : 정확한 위치 정보 액세스 ACCESS_NETWORK_STATE : 네트워크에 대한 정보 액세스 ACCESS_WIFI_STATE : 와이파이 네..
[Android] Action Bar
Action Bar 숨기기 1. style.xml에서 제거 false true 2. Kotlin파일에서 제거 val actionBar: ActionBar? = supportActionBar if (actionBar != null) { actionBar.hide() }
[Android] Fragment
Fragment는 동작 또는 Activity 내에서 UI의 일부를 나타낸다. 여러 개의 프래그먼트를 하나의 액티비티에 조합하여 창이 여러 개인 UI를 구축할 수 있으며, 하나의 프래그먼트를 여러 액티비티에서 재사용할 수 있다. 프래그먼트를 액티비티 레이아웃의 일부로 추가하는 경우, 이는 액티비티의 뷰 계층 내부의 ViewGroup안에 있으며, 해당 프래그먼트가 자신의 뷰 레이아웃을 정의한다. 프래그먼트를 액티비티 레이아웃에 삽입하려면 해당 프래그먼트를 액티비티의 레이아웃 파일에서 요소로 선언하거나, 애플리케이션 코드에서 이를 기존의 ViewGroup에 추가하면 된다.그러나 프래그먼트가 액티비티 레이아웃의 일부분이어야만 하는 것은 아니다. 나름의 UI가 없는 프래그먼트도 액티비티를 위한 보이지 않는 작업자..
[Android] Intent
안드로이드 어플리케이션을 구성하는 네 가지 구성요소에는 Activity, Service, Broadcast Receiver, Content Provider가 있다. Intent란 이러한 어플리케이션 구성요소간에 작업 수행을 위한 정보를 전달하는 역할을 한다. 명시적 인텐트와 암시적 인텐트 인텐트는 명시적 인텐트(Explicit Intent)와 암시적 인텐트(Implicit Intent)로 구분할 수 있다. 인텐트에 클래스 객체나 컴포넌트 이름을 지정하여 호출될 대상을 확실히 알 수 있는 경우에는 명시적 인텐트가 필요하고 호출될 대상의 속성들을 지정했지만 호출될 대상이 달라질 수 있는 경우에는 암시적 인텐트가 필요하다. 명시적 인텐트 명시적 인텐트는 인텐트에 클래스 객체나 구성요소 이름을 지정하여 호출할 ..
[Android] Broadcast Receiver
Broadcast Recevier는 안드로이드 컴포넌트중 하나로 시스템 이벤트를 수신하는 역할을 한다. 예를 들어 스마트폰에서 전원 충전, 전원 충전 해제, 비행기 모드 돌입, 애플리케이션 설치 완료 등의 다양한 시스템 이벤트들이 있다. 안드로이드 시스템에서 어떤 이벤트가 발생했을때 시스템은 "system broadcast" 라는 메세지를 보낸다. 이때 특정 이벤트가 발생한 것을 내 앱에서 알고 싶을때 Broadcast Receiver 를 통해 메세지를 받을 수 있다. Broadcast의 종류 ACTION_BOOT_COMPLETED 부팅이 끝났을 때 (RECEIVE_BOOT_COMPLETED 권한 등록 필요) ACTION_CAMERA_BUTTON 카메라 버튼이 눌렸을 때 ACTION_DATE_CHANGE..
[Android] Conent Provider
ContentProivider는 안드로이드 애플리케이션을 구성하는 4대 구성요소 중 하나로 다른 애플리케이션의 데이터에 접근이 필요할 때 사용하게 되는 컴포넌트이다. 일반적으로 각 앱은 하나의 프로세스로 실행되며 자신의 프로세스에서 사용하는 데이터는 자신만 접근가능하도록 되어 있지만 다른 앱의 데이터 접근이 필요한 경우에 ContentProivider를 통해 접근을 할 수 있다. 예를들어 사진첩에 있는 사진들을 가져오거나 연락처에 있는 연락처 정보들을 가져와야할 경우가 있습니다. 이 때 사진 앱에는 ContentProvider가 구현되어 있어 해당 앱의 데이터를 나의 앱에서 사용할 수 있도록 통로를 제공해준다. 일반적으로 다음과 같이 두 가지 경우에서 주로 ContentProvider를 사용한다. 내 애..