Codelab으로 ViewModel 알아보기 - 1. Create the ViewModel
·
Dev experience/Android
이번 코드랩에서는 AAC의 ViewModel 클래스를 알아볼 것이다. 1페이지를 천천히 보다보니 ViewModel은 factory 디자인 패턴을 사용하고 있다는 것을 알 수 있다. ViewModel을 instantiate(인스턴스화)하려면 ViewModelFactory를 사용하라고 한다. 다음 페이지부터는 주어지는 샘플 앱이 있고, 여기서 문제를 정의한 후 문제 해결을 위해 어떤 단계를 밟아서 처리할 것인지 안내하고 있다. 1. GameViewModel 클래스(ViewModel을 상속하는) 추가하기 먼저 ViewModel을 사용하기 위해서는 모듈 수준의 build.gradle에서 Gradle dependency를 추가해주어야 한다. //ViewModel implementation 'androidx.lif..
Android APK 소개
·
Dev experience/Android
안드로이드에서 사용하는 확장자로는 apk와 aab가 있다. 오늘은 apk에 대해 먼저 소개해보려 한다. apk라는 확장자를 많이 들어본 사람도 있을 것이다. 몇 년 전 다들 아직 저작권이란 개념이 많이 없었던 시기에 여기저기 소위 말하는 크랙 파일들이 많이 돌아다녔다. 유료 게임의 크랙 버전이나 무료 게임이라도 재화가 무제한으로 주어지는 등의 크랙 파일이 기억에 남는다. 물론, 그런 출처가 불분명한 파일들을 다운로드 받는다는 것 자체가 해킹의 표적이 될 수 있다는 사실도 다들 간과했을 것이다. 나는 께림칙해서 기피했지만 말이다. 다시, 본론으로 돌아가 APK에 대해 알아보자. APK(Android Application Package)는 하나의 완성된 앱이라고 할 수 있다. APK의 생성과정을 살펴보면 이..
Android Studio Github Push Error 해결
·
Dev experience/Android
이전에 클론해두었던 레포지토리를 새로운 브랜치로 remote에 push하려했는데 access token이 Android Studio에 등록되어 Github 로그인이 되어있는데도 Push가 되지 않았다. 솔직히 이해가 안됐다. 난 로그인이 되어있는데 터미널로 push명령어를 쓰면 팝업창 비슷한 녀석이 뜨고 로그인을 시도하면 터미널에서 로그인하란다. Logon failed라는 부분이 팝업창(?)에서 로그인을 시도하면 뜨는 녀석이었다. 그렇게 username, password를 입력했다. (Github username, Github password) 그랬더니 음.. remote: ~~~~ 부터의 로그가 나왔는데 내가 뭘 잘못 입력한게 없는데 오타도 없었는데 저러니 황당할 따름이었다. 찾아보니 password ..
Android Developer Roadmap 2022 version
·
Dev experience/Android
오늘은 저번 글과 비슷한 느낌으로 공부 계획? 방향?을 고민하다 찾은 결과이다. 막연히 저번 글에서 소개했던 Developer 사이트의 가이드를 따라 읽다가 이렇게 공부하는 것이 맞나 라는 생각이 들어 자세한 로드맵을 세워 보고자 검색해보게됐다. 구글에 Android developer roadmap 을 검색하면 두 번째로 나오는 깃허브 링크를 발견했다. 신기했던 점은 작성자 분이 한국인이셔서 무려 한국어 지원이 된다는 점이 가장 눈에 띄었다. 그리고 이 로드맵을 보면서 나는 얼마나 부족한가를 다시 한 번 깨닫게 되었다. 물론 이 전의 면접이나 다른 사람들의 프로젝트 파일을 깃허브에서 보며 부족한 점을 느끼고 있었지만 이런 자료들을 보거나 eo 채널에서 다른 개발자분들의 영상을 보면 더욱 동기부여가 되는 ..
안드로이드 데이터 바인딩(Android Data Binding)
·
Dev experience/Android
데이터 바인딩을 공부하는 이유 요즘 안드로이드에서 가장 많이 사용되는 아키텍처 패턴은 역시 MVVM 패턴이라 할 수 있다. 이 패턴을 프로젝트에 적용할 때, 안드로이드에서는 AAC(Android Architecture Components)를 제공하는데 나는 아직 이 컴포넌트들이 어디에 어떻게 사용되는지 정확히 모르겠다. 일단 데이터 바인딩이 안드로이드에서 MVVM 패턴을 적용할 때 사용되기도 하고.. 또, 구글에 Android MVVM 학습 순서, Android Developer 사이트에서 MVVM을 검색하면 ViewModel 클래스가 가장 먼저 나오고 샘플 코드에 observe()나 Observer 등의 observe 라는 메소드, 자료형이 나오기 때문이었다. 물론 위의 생각은 나의 오판일수도 있다. ..