본문 바로가기

안드로이드5

[Android] @IgnoredOnParcel 통신을 위해 model을 설계했는데, 클라이언트에서만 사용하는 변수가 필요한 상황입니다 클라이언트에서만 사용될 값을 추가하는데, 만약 이게 서버 통신에서 쓰인다면.. 아찔한 상황입니다 T_T 이럴 경우엔, IgnoredOnParcel 을 사용합니다 @IgnoredOnParcel - Parcelize annotation이랑 함께 사용되는데 특정 필드가 Parcelable 구현에서 제외시킵니다 즉 Parcelable 인터페이스를 구현할 때 고려되지 않으므로, 인텐트에 데이터를 넘기거나 상태를 저장/복원하는 과정에서 이 변수는 무시되고, 클라이언트 상에서만 사용할 수 있습니다 :) @Parcelize data class User( val name: String, val age: Int, @IgnoredOnPa.. 2024. 2. 25.
[🔥 Coroutine] #2 runBlocking , async 안녕하세요 아주 오랜만입니다 약간의 휴식기를 갖고 왔습니다 :) CoroutineBuilder에 관해선, 이전 포스팅에도 있기 때문에, 간단한 예제를 통해 복습하겠습니다 간단한 예제지만, 코루틴을 처음 접하기 때문에 쉬운 예제부터 시작해 천천히 개념을 명확히 알아보려합니다 🙇🏻‍♀️ 2022.08.30 - [💻 프로그래밍] - [🔥Coroutine] # 1 Coroutine을 배워봅시다 1. runBlocking runBlocking 내의 코드가 완료되기 전까지 mainThread를 종료시키지 않음 -> 동시성이 깨짐 다른 코루틴의 Thread를 중지할 수도 있기 때문에 주로 테스트코드 작성시에 많이 쓰임 테스트 코드를 살펴보겠습니다 @Test fun testRunBlock() = runBlocking .. 2022. 11. 5.
[Android] 최신 Firebase Crashlytics Sdk 업데이트 공식문서 Firebase Crashlytics SDK로 업그레이드 iOS Android Unity 이제 새로운 공식 Firebase Crashlytics SDK를 사용하여 앱에서 Crashlytics를 설정할 수 있습니다. 이 SDK는 다른 Firebase 제품과의 일관성이 향상되었고 보다 직관적으로 사용할 수 있는 개선 firebase.google.com 위의 공식문서를 참고해서 정리해보겠습니다. (Android를 탭해도 IOS의 방법이 보이는 것 같습니다..) 1. Firebase 구성 파일 추가 프로젝트 설정에서 구성 파일이 필요한 ID를 선택합니다. google-services.json을 다운로드해서 프로젝트 app폴더에 넣어줍니다. 2. build.gradle (app) 수정 io.fabric이.. 2020. 11. 5.
[Android / Kotlin] Custom SeekBar SeekBar를 Custom해서 사용했는데, 깔끔하게 사용하려면 조정해야할 부분이 좀 있었다 보통 SeekBar는 Custom으로 많이 사용하니 까먹지 말자..! 1. android:background="@null" Thumb을 이동시키면 Ripple Effect효과가 나타나는데 이 효과를 없애기 위해서 사용 2. android:progressDrawable="@drawable/이미지명" Bar의 background를 적용 3. android:splitTrack="false" seek1처럼 Thumb를 커스텀하면 좌우에 여백이 생긴다 seek2처럼 변경시키기 위해 splitTrack 적용 4. android:thumb="@drawable/이미지명" Thumb의 background 적용 2019. 11. 15.