분류 전체보기 1203

local.properties

- 참조 https://developers.google.com/maps/documentation/android-sdk/secrets-gradle-plugin Secrets Gradle 플러그인 | Maps SDK for Android | Google Developers 이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 의견 보내기 Secrets Gradle 플러그인 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 버전 developers.google.com https://leveloper.tistory.com/212 [Android] API key값 local.properties에 안전하게 보관하기 안드로이드 프로젝트..

Android(Kotlin) 2023.01.17

DataBinding - 2 (two - way binding)

양방향 바인딩을 어떻게 설명할까 생각해봤는데 잘 설명된 글은 맨 아래 링크를 참고하시면 됩니다. 간단하게 한마디로 설명하면 데이터 View 다이렉트 결합이라고 생각하시면 됩니다. 한번 나이를 올리는 예제를 two - way binding이 아닌 일반적인 방식으로 아래글에서 만들어봤었는데 https://philosopher-chan.tistory.com/1598 DataBinding - 1 (two - way binding) 간단한 데이터바인딩에 대해서 알아보겠습니다. 한번정도는 쓰거나 들어보셨을 텐데, 기존에 방법을 한번 보고 가보도록 하겠습니다. 간단하게 나이를 조금씩 올리는 앱입니다. philosopher-chan.tistory.com Two way binding을 이용해서 한번 만들어보겠습니다. -..

Android Jetpack 2023.01.16

Simple Paging3

간단한 Paging 예제입니다. 구글 예제에 충실하게 한번 설명을 해보겠습니다. 여기 코드를 거의 그대로 사용했습니다. https://developer.android.com/codelabs/android-paging-basics#5 Android Paging 기본사항 | Android Developers 이 Codelab에서는 목록을 표시하는 앱에 Paging 라이브러리를 통합합니다. Paging 라이브러리를 사용하면 로컬 저장소에서나 네트워크를 통해 대규모 데이터 세트의 데이터 페이지를 로드하고 표시 developer.android.com 봐야할 부분은 PagingSource와 함께 ViewModel에서 Paging을 호출하는 부분입니다. 일단 ViewModel부터 한번 보겠습니다. ITEMS_PER_..

Android Jetpack 2022.12.24

Room SQLCipher

그 어떤곳에서도 한국어로 Room 데이터 암호화 및 SQLCipher에 대한 설명글이 없어서 제가 번역해서 정리하기로 했습니다. (유독 안드로이드 관련 정보는 한국어를 찾기가 어렵네요) 이 글에 대한 번역이고 코드는 여기에 있는 코드를 참고했습니다. 구글에서 일하는 형님이시니 믿고 번역해보겠습니다. Protect your Room database with SQLCipher on Android Android에서 SQLCipher로 Room 데이터베이스 보호 Welcome to this serie of articles about Android Security and how you can improve tremendously the protection of your users’ privacy, by imple..

Android(Kotlin) 2022.12.21

StateFlow / SharedFlow

코루틴을 공부하다보면 가끔 보는 친구들입니다. 이 친구들이 뭔지 한번 보고 가겠습니다. - 구글 공식문서 우선 구글 공식문서에서는 어떻게 설명하고 있냐하고 하면 stateFlow StateFlow는 현재 상태와 새로운 상태 업데이트를 수집기에 내보내는 관찰 가능한 상태 홀더 흐름입니다. value 속성을 통해서도 현재 상태 값을 읽을 수 있습니다. 상태를 업데이트하고 흐름에 전송하려면 MutableStateFlow 클래스의 value 속성에 새 값을 할당합니다. Android에서 StateFlow는 관찰 가능한 변경 가능 상태를 유지해야 하는 클래스에 아주 적합합니다. 여기까지 읽어보면 LiveData와 비슷한데? 라는 생각이 듭니다. livedata와 차이점 때문에 구글 문서에서는 StateFlow와 ..

Android(Kotlin) 2022.12.15

Hot Stream / Cold Stream

Coroutine을 공부하다보면 Hot Stream / Cold Stream 이라는 단어를 만나게 됩니다. 여러가지 설명이 있습니다만 비유하자면 물을 데이터라도 생각했을 때 Hot Stream -> 냇가 -> 그냥 물이 줄줄 흐른다 - > 중간에 사슴이 먹어도 되고, 사람이 먹어도 되고 등등 Cold Stream -> 수도꼭지 -> 내 집에서 내가 틀면 나온다 -> 나만 쓸 수 있다 정도로 생각하면 될 것 같습니다. - 참조 https://myungpyo.medium.com/%EC%BD%9C%EB%93%9C-%ED%94%8C%EB%A1%9C%EC%9A%B0-%ED%9A%A8%EC%9C%A8%EC%A0%81%EC%9C%BC%EB%A1%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-..

Android(Kotlin) 2022.12.15

LiveData emit / emitSource

LiveData를 사용하다 보면 가끔 emit / emitSource 라는 애들을 보게 됩니다. 설명을 찾아보면 복잡하게 되어 있는데 emit -> 값을 반환 emiteSource -> livedata를 반환 이렇게 생각해주시면 됩니다. 아래는 예제입니다. gradle에 넣어주고 def lifecycle_version = '2.4.1' implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" - 참조 https://stackoverflow.com/questions/58546944/what-is-the-difference-between-emit-and-emitsource-with-livedata-as-in-real What ..

Android(Kotlin) 2022.12.13