코틀린으로 작성한 안드로이드 서비스와 파이어베이스 실시간 데이터베이스를 연결해보기
오늘은 안드로이드 서비스와 구글의 파이어베이스 실시간 데이터베이스를 같이 합쳐서 앱에 실시간으로 데이터를 갱신해주는 코드를 코틀린으로 구현해보려 합니다. 개요 안드로이드 서비스란 앱의 백그라운드에서 실행되며 오래동안 실행되는 작업을 수월하게 수행할 수 있는 구성 요소이며, 이를 이용하여 파이어베이스의 이벤트 리스너로 앱 데이터와 클라우드 데이터를 ...
오늘은 안드로이드 서비스와 구글의 파이어베이스 실시간 데이터베이스를 같이 합쳐서 앱에 실시간으로 데이터를 갱신해주는 코드를 코틀린으로 구현해보려 합니다. 개요 안드로이드 서비스란 앱의 백그라운드에서 실행되며 오래동안 실행되는 작업을 수월하게 수행할 수 있는 구성 요소이며, 이를 이용하여 파이어베이스의 이벤트 리스너로 앱 데이터와 클라우드 데이터를 ...
오늘은 안드로이드에서 코틀린으로 Recycler view를 데이터 바인딩으로 사용하는 방식을 서술하려 합니다. adapter class RecyclerViewAdapter(context : Context, dataSet:ArrayList<String>) : RecyclerView.Adapter<RecyclerView.ViewHold...
오늘은 안드로이드에서 custom view를 만들었을 때 해당 클래스에서만 onclick되는 것을 커스텀 뷰를 사용할 때마다 activity에서 바인드 어댑터를 거쳐 이벤트를 전달해주는 방법을 포스팅하려 합니다. 이번 포스트에서도 데이터 바인딩으로 작동하는 코드가 포함되어 있으며, activity가 아닌 fragment에서 이벤트를 넘겨주는 상황으로...
오늘은 안드로이드에서 커스텀 뷰를 코틀린과 데이터 바인딩으로 구현해보려 합니다. base view 우선 기반이 되는 파일을 만든 것이 좋습니다. 커스텀 뷰를 만들 때에는 생성자로부터 초기화나 값 삽입등을 하기 때문에 베이스가 중요합니다. open class BaseView: ConstraintLayout { constructor(cont...
오늘은 안드로이드에서 FrameLayout에다가 fragment를 넣어서 BottomNavigationView로 컨트롤하여 동작하는 것을 코틀린으로 작성해보려 합니다. 또한 이 포스트는 data binding을 적용했으므로 layout 태그와 bind 객체가 포함되어 있습니다. 양해부탁드립니다. 설정 BottomNavigationView를 이용하...
오늘은 안드로이드에서 커스텀 다이얼로그를 만드는 방법을 코틀린으로 작성해보려 합니다. 설정 우선 이번 방법은 데이터 바인딩을 이용합니다. apply plugin: 'kotlin-kapt' android { dataBinding { enabled true } } dependencies { kapt 'com.and...
오늘은 안드로이드에서 코틀린으로 작성된 람다를 간단히 알아보려 합니다. 개요 이벤트에 따른 핸들러를 실행하는 것을 추구하는 코드들은 변수에 값을 저장하거나 다른 함수로 넘겨야 될 경우가 많습니다. 이는 람다식을 이용하면 간단하게 코딩할 수 있으며, 이를 이용하면 함수를 선언할 필요가 없고, 코드 블럭 자체를 직접 함수에 전해줄 수 있습니다. 안...
오늘은 코틀린에서 사용할 수 있는 확장 함수라는 것을 안드로이드에서 사용해보려 합니다. 개요 fun (확장하려는 대상 클래스).(추가하려는 메소드)(){ // 내용 } 확장 함수는 확장하려는 클래스의 이름과 추가하려는 새로운 메소드를 적으면 굳이 클래스를 상속받지 않고도 마치 그 클래스의 메소드인 듯이 사용할 수 있습니다. 안드로이드 사...
오늘은 안드로이드 서비스를 코틀린으로 구현해보려 합니다. 개요 안드로이드 서비스란 앱의 백그라운드에서 실행되며 오래동안 실행되는 작업을 수월하게 수행할 수 있는 구성 요소입니다. 엑티비티와 차이점이 있다면 별도의 디자인된 UI가 필요 없다는 점이 있습니다. service 클래스 파일 class AppService : Service() 우선...
오늘은 안드로이드 앱을 설치한 기기의 핸드폰 번호를 코틀린으로 구해보려 합니다. 설정 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 안드로이드 오레오 6.0 이하 버전에서는 위와 같이 간단하게 처리할 수 있습니다. private fun makeReque...