Android

    RxBus - Rxjava로 전역 callback으로 구현하기

    앱을 개발하다 보면 콜백함수를 활용해서 구현할 일이 많다. 예를들어 사용자가 설정화면에서 로그인을 하는 과정을 생각해보자. 처음에는 프로필사진도 비어있을테고 유저 이름도 '게스트'로 되어있을 것이다. 로그인을 완료했으면 이러한 UI들을 사용자 정보에 맞게 변경해주어야 한다. Activity간에 Intent도 넘기며 다양하게 구현할수 있지만 클래스간 의존성이 강하게 생긴다. 어느 클래스간 원할때 콜백을 쉽게 하는 방법을 알아보자. 구현 app.gradle 내에 다음과 같이 rxjava 라이브러리를 추가해준다. dependencies { // reactiveX Programming implementation 'io.reactivex.rxjava2:rxjava:2.2.13' } 이후에 다음과 같이 객체를 생성..

    [Android] Firebase Remote Config 사용하기

    Firebase 내에 Remote Config라는 기능이 존재합니다. 이를 활용하여 업데이트될 필요가 있는 정적 데이터에 대해 서버 없이 저장할 수 있습니다. 초기화 앱내에 remote_config_defaults.xml을 만들어줍니다. 파일 존재 이유는 아래서 다시 설명하겠습니다. 경로는 res > xml에 생성합니다. Application 클래스 onCreate() 함수 부분에 다음과 같이 초기화를 해줍니다. class MyAppApplication : android.app.Application() { override fun onCreate() { super.onCreate() Firebase.remoteConfig.run { setDefaultsAsync(R.xml.remote_config_defa..

    Activity / Fragment ViewBinding Boilerplate Class

    현업에서 다양한 개발자와 명세를 맞추어 개발하는 것은 매우 중요하다. 파편화된 코드 스타일은 곧 가독성을 해치고, 버그가 발생하거나 기능을 추가할 때 자칫하면 개발 효율성을 크게 저하시킬 수 있다. MVVM 패턴을 사용할때 다음은 ViewBinding을 강제하는 Activity, Fragment BoilerPlate Class이다. Generic을 활용하기 때문에 모든 하위 클래스는 이를 상속받아 보다 쉽게 ViewBinding을 강제한 코드를 빠르게 구현할 수 있다. 뷰 바인딩 https://developer.android.com/topic/libraries/view-binding?hl=ko 뷰 결합 | Android 개발자 | Android Developers 뷰 결합 뷰 결합 기능을 사용하면 뷰와 ..

    Google Admob 보상형 광고 적용 및 최적화 하기

    Google Admob 광고는 전면광고, 배너광고등 다양한 API가 존재하지만 이번 포스팅 에서는 보상형 광고만 다룰 예정이다. 보상형 광고 Google(구글 공식 Reference) Admob SDK를 이용하기 위해서는 Gradle에 추가 해주고 앱 실행시점에 초기화를 해주어야 하지만 이 글에서 다룰 새로운 보상형 광고 API 는 굳이 초기화를 해주지 않아도 되는것 같다.. 나중에 실험해보야겠지만 일단 PASS 2020/05/04 - [Android] - Google Admob 광고 사용하기 Google Admob 광고 사용하기 먼저 Gradle에 Google Admob 광고를 Import 해주자 Project-level allprojects { repositories { google() } } App..

    Google Admob 광고 사용하기

    먼저 Gradle에 Google Admob 광고를 Import 해주자 Project-level allprojects { repositories { google() } } App-level dependencies { implementation 'com.google.android.gms:play-services-ads:19.1.0' } Manifest.xml 내에도 다음과 같이 등록해 주어야한다. 위 "@string/admob_app_id"는 가독성을 위해 String 내에 정의해 두었다. 직접 쓰든 String 내에 정의하든 발급 받은 Admob App ID를 적어주면 된다. 주의할 점은 광고 단위 ID가 아니라 앱 ID 이다. 그 다음 애드몹 광고를 사용하기 위해서는 앱 실행 시점에 초기화를 해주어야 한..