Android

· Android
💡 왜 사용 하는가? 검색하기 기능을 구현하면서 화면에 많은 검색결과를 리스트로 보여줘야 했다. 보여줘야 할 결과가 많기 때문에 일반 리스트로 구현하는 것보다는 리사이클러뷰로 재활용성을 높이는게 중요하다고 생각했다. 그리고 기본적으로 데이터바인딩을 사용해 MVVM 패턴을 구현하고자 했는데 외부 서버로부터 받아온 검색 결과를 어떻게 동적으로 리사이클러뷰에 표시해줘야 할지 고민이 되었다. 💡 코드 설명 ✔️ SearchViewModel MVVM 패턴을 사용하게 되면 모델로부터 데이터를 요청해 뷰모델에서 livedata나 flow 변수에 데이터를 홀드하고 있을 것이다. 또한 안드로이드 아키텍쳐를 사용하면 domain, data 레이어를 통해 데이터를 가져올텐데 이런 로직 까지 다 쓰면 글이 너무 길어지니 생략..
· Android
✔️ 왜 사용했는가?보통 안드로이드에서는 구글 로그인을 사용하거나 네이버, 카카오 같은 소셜 로그인을 사용하지 애플 로그인을 사용하는 경우는 생소할 것이다. 하지만 가끔 안드로이드에서도 애플로그인을 사용하는 경우가 있을 수 있다.  내가 이번에 새롭게 시작하게 된 프로젝트는 이미 IOS 서비스가 먼저 출시되었고 애플로그인 방식만을 사용하고 있다. 그런데 만약 아이폰을 사용하던 유저가 갤럭시폰으로 갈아타게 된다면 서비스 계정을 계속 사용할 수 있어야 하기 때문에 안드로이드에서 애플로그인을 구현해야 하는 상황이 발생한 것이다.  ✔️ 어떻게 구현했는가?안드로이드에서는 애플 소셜로그인을 위한 로그인 API를 제공하지 않기 때문에 웹브라우저를 띄워 로그인을 진행해야 한다.아래 블로그를 참고해 3가지 방법 중 트..
· Android
더이상 피할 수 없다 의존성 주입....!! 꼭 이해하고 싶었던 개념이었고 새로운 프로젝트의 규모도 점점 커지고 있어서 꼭 필요하겠다는 생각에 드디어 공부하고 정리!! 의존성 주입이란 무엇이고 왜 쓰는가? 클래스 내부에서 직접 다른 클래스를 생성해 사용하는 것이 아닌 외부에서 생성 후 생성된 객체를 주입만 하는 것 공통적으로 사용하는 클래스에 대해서 의존성 주입을 통해 한 번에 관리가 가능하고 변화에 유연하게 대응할 수 있다 나름대로 MVVM 패턴이나 클린아키텍쳐를 구현하려고 노력하면서 독립된 계층이 존재하고 각 계층간의 결합도는 낮아지고 응집도는 높아져야 하는 특성을 지니는데 이때 의존성 주입을 사용 예를 들어 domain 계층에서 data 계층에 속하는 repository를 사용하기 위해 domain..
· Android
안드로이드앱에서 Image Segmentation 모델을 사용하는 프로젝트를 진행하게 되었다. 아래 사진처럼 사람의 외곽선만을 화면에 표시 사람/배경에 대한 투명도 조절 사용자가 직접 화면에 표시할 외곽선을 선택할 있도록 하게 하기 위해서 사람 객체 각각에 대한 외곽선 객체를 따로 생성 처음엔 조건을 충족시켜주면서 안정적이고 높은 성능을 보이는 yolov5 모델을 선택하였는데 파이토치를 사용하는 파이썬으로 작성된 모델이라서 파이참에서 돌리면 충돌이나 에러가 심해 구글 코랩을 사용해 테스트와 코드 커스텀을 진행하였다. 그리고 이걸 앱에서 사용할 수 있도록 하기 위해 앱 내장 vs 서버향 이라는 방법이 있었으나 서버 개발자가 무거운 모델을 서버에 올려 다루는 것에 익숙치 않아서 앱에 내장하는 방법을 어떻게든..
gangmini
'Android' 카테고리의 글 목록 (3 Page)