일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- livedata
- MyVoca
- ProGuard
- Coroutine
- 코루틴
- MiTweet
- androidStudio
- Coroutines
- Codeforces
- Hilt
- TEST
- boj
- activity
- Rxjava
- 백준
- GitHub
- 코드포스
- architecture
- 쿠링
- Python
- Gradle
- Kotlin
- Compose
- 프로그래머스
- textfield
- 암호학
- pandas
- AWS
- android
- relay
- Today
- Total
목록프로젝트 (32)
이동식 저장소
여기를 눌러 최신 버전을 다운로드하세요. UI 개선 새로운 색깔 테마 적용 Google의 Material Color를 적용하였습니다. 추후 여러 테마를 지원할 예정입니다. 다크 모드 지원 오른쪽 위의 ... 버튼을 눌러 설정 화면으로 들어가 보세요. 기타 성능 개선 및 안정화 이것저것 공부하느라 늦었습니다. 아마 다음 업데이트는 2.0(?!)이 될 듯 합니다. Jetpack Compose로 UI를 갈아엎을 예정이며, 그 외에도 이것저것 많은 기능을 추가할 계획입니다. 빨라야 8월 예상합니다.
1.12.4 출시 여기를 눌러 최신 버전의 앱을 다운로드하세요. (Google Play) 리팩토링 Data binding 적용 (#43) Binding adapter를 최대한 적용해 보았다. QuizFragment에서 선택지를 RecyclerView로 바꾸기 (#45) LinearLayout에 TextView 4개가 들어가 있는 코드를 RecyclerView로 바꾸었다. VocaRecyclerViewAdapter 리팩토링 (#46) Adapter는 ViewHolder의 create와 bind에만 집중한다. 리스너와 뷰의 상태 변경 등 로직 코드는 ViewModel로 옮겼다. 버그 수정 뒤로 가기 버튼으로 삭제 모드를 빠져나갈 수 없는 버그 (#50) 키 이벤트 처리 코드를 수정하여 버그를 해결하였다.
여기를 눌러 업데이트를 다운로드하세요. MyVoca - Google Play 앱 영-한(ENG-KOR) 단어장 play.google.com 버그 수정 삭제할 단어를 선택할 때 단어를 스와이프하여 삭제할 수 있는 버그 수정 (#26) 단어의 정렬 기준을 바꾸었을 때 리스트가 업데이트되지 않는 버그 수정 (#27) 기능 추가 모두 보기 화면에 스크롤 바 추가하기 (#28) 기능 개선 위젯 공사하기 (#33) 리팩토링 Hilt 적용하기 (#31) SharedPreferences를 DataStore로 migrate (#41) 마이너 업데이트 치고 양이 굉장히 많다. 1.13.0으로 승격해야 하나 고민했지만 그냥 출시하기로 결정.
해 보면 알겠지만, Google Play Console에 APK/AAB를 올리는 작업은 꽤나 귀찮다. 개발자는 귀찮은 일을 싫어한다. 항상 그렇듯이 자동으로 올릴 수 있는 방법이 이미 존재한다. 이것을 Continuous Delivery(연속적 배송?!)이라고 하며, 구체적으로는 업데이트되는 코드를 자동으로 사용자의 기기에 동기화하는 작업을 의미한다. 지금까지의 나는 버전 하나를 출시할 때마다 앱을 업데이트했다. 앱을 빌드하고, AAB를 업로드하는 과정이 매우 귀찮았기 때문이다. 그러나 CD를 적용하면 이 과정을 누군가가 자동으로 수행한다! 따라서 앱을 더 자주 업데이트하는 동시에 귀찮음은 줄일 수 있다. Continuous Integration이라고 테스트를 자동화하는 개념도 있는데, 이건 나중에 생각..
ListAdapterAndroid에서 여러 개의 항목을 보여줘야 할 때는 거의 ``RecyclerView``를 사용한다. ``RecyclerView``에 데이터를 제공하는 방법은 여러 가지가 있는데, 최근에 ``ListAdapter``를 알게 되어 MyVoca에 적용해 보았다. 참고: DiffUtil and data binding with RecyclerView - Codelabs for Android Kotlin Fundamentals (Google) 기존 ``RecyclerView.Adapter``는 리스트가 변경될 때마다 ``notify...`` 메소드를 실행해줘야 값이 제대로 보인다. 그런데 데이터의 삽입, 삭제, 수정 등 상황마다 실행해야 하는 메소드가 달라서 (솔직히) 귀찮다. 그래서 궁극의 ..