Android(25)
-
2023 토스 NEXT 챌린지 Android 분야 후기
참가 계기 아는 지인이 추천해서 이런 게 있다 해 경험 삼아해 보기로 해 신청하게 됬다. 실력자체가 아직 많이 부족해 경험을 해보자는 느낌으로 참여했다. 참가 과정 일단 토스 NEXT 개발자 챌린지 사이트에서 원하는 직무분야에 지원을 해야한다. 다른 곳과 지원하는 방식은 비슷하기에 어려운 점은 없을 것이다. 참가신청을 하게되는 경우 별도 메일과 테스트 진행 방식에 대한 설명과 노션 링크를 받을 수 있다. 기존 코딩테스트 방식에서 과제 테스트 방식으로 처음 변경된 거 같다.(Android 직무 한정) 이런 식으로 메일이 온다 참가 후기 일단 테스트 문제를 기대한다면 외부 유출이 철저히 금지되어 있어서 힘들 거 같다;;; 테스트 방식은 공지 처럼 특정 기능을 주제 삼아 기능 구현을 하는 방식으로 진행했다. ..
2023.07.09 -
[안드로이드 - 코틀린] ViewModel을 이용한 Fragment간 데이터 공유
앞에서는 기본적인 ViewModel에 대해 학습하였다. 이번에는 이번 프로젝트에서 사용하게된 Fragment간 데이터 공유 방법에 대해 알아보자 우리가 개발을 하다 Fragment간 데이터를 공유할 때는 일반적으로 bundle을 이용한다 bundle을 생성해 내부에 데이터를 넣어주고 arguments를 이용해 데이터를 받아준다. 하지만 이번에는 ViewModel를 이용해 공유하는 방법에 대해 설명해보겠다. private lateinit var viewModel: MapViewModel viewModel = ViewModelProvider(this)[MapViewModel::class.java] 현재 사용하는 기본적인 ViewModel 작성 방식이다. + 하나의 Activity에서 생성된 Fragment ..
2023.04.30 -
[안드로이드 - 코틀린] ViewModel 역할 및 사용법
예전 프로젝트는 하나의 View에 모든 기능이 들어가 있어 View와 기능의 결합도가 매우 높은 스파게티 코드로 짜인 프로젝트였다.요즘 공부하는 MVVM 아키텍처를 적용해보고자 코드 변경을 하고 있는데 그중 중요한 부분인 ViewModel에 대해 설명하는 시간을 가지겠다. ViewModel - 사용 이유viewModel은 Activity Fragment와 같은 View들의 데이터를 보관하고 관리하는 역할을 수행합니다. 또한 데이터를 ViewModel에서 관리하기 때문에 UI와 데이터 간의 응집도 또한 낮출 수 있게 된다. Activity와 Frgament의 View들에 데이터가 담겨있다면 해당 View가 재생성될 때 초기화가 되는 상황이 발생하게 되고 그러면 데이터의 손실이 발생하게 됩니다. 하지만 V..
2023.04.14 -
[안드로이드 - 코틀린] Room DataBase 활용 1
써야지 써야지하다 이제야 도전해보는 Room 솔직히 지금까지는 크게 필요하지 않아서 사용하지 않았는데... 아니 미뤘는데 필요하게되서 사용하며 공부했던걸 정리해본다. 발생했던 문제점 - 원치 않았던 데이터까지 데이터베이스에 저장됨 -> 잘못된 아이디와 비밀번호가 자꾸 디비에 저장되는 일 일단 시작하기전 build.gradle 세팅 plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'com.google.gms.google-services' id 'kotlin-kapt' } // room def room_version = "2.5.0" implementation "androidx.room:room-runtime:$room_..
2023.04.01 -
[안드로이드 - 코틀린] Internet Connect Check 인터넷 연결 실시간 확인
프로젝트를 진행하다 실시간 인터넷 연결확인하는 작업이 필요해 찾아보다 딱 알맞은 코드를 발견하였다 https://onlyfor-me-blog.tistory.com/654 해당 링크에 있는 코드를 참고해 만들어봤다. Manifest build.gradle def lifecycle_version = "2.6.1" // ViewModel implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" // LiveData implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" implementation 'androidx.activity:activity..
2023.03.28 -
[안드로이드 - JDK 오류]No matching variant of com.android.tools.build:gradle:7.4.2 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well ..
안드로이드 JDK 버전이 맞지 않을 경우 발생하는 오류이다. 안드로이드 스튜디오 버전을 업그레이드했더니 발생한 오류였다. AndroidStudio -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Gradle JDK: Android Studio java home 선택 버전 업이 되며 안드로이드 코어와 기존 JDK 파일 버전이 호환이 안되는 문제로 java 11 버전으로 올리니 해결가능 해졌다. 해당오류는 안드로이드 스튜디오 버전업을 진행하면 통상적으로 발생하는 문제로 업데이트된 버전의 gradle 파일과 JAVA 버전 호환성에서 오류가 발생하여 애플리케이션이 실행을 할 수 없게 된다. 해당 방식으로 진행했음에도 오류가 발생한다..
2023.03.22