android 26

안드로이드 개발시 HTTP 트레킹 라이브러리 소개

안드로이드 앱 개발시 OkHttp 를 활용해서 HTTP 통신을 합니다. 이때 개발중에 서버나 클라 쪽에 이슈가 생기면 API 쪽에 어떤 Query Paramter 를 날렸는지 Response 는 어떻게 오는지에 대한 핑퐁을 주고 받습니다. 일반적으로 Logcat 에서 요청한 API 를 찾아서~ 복사한다음에~ 서버팀에 알려주고..... 벌써부터 귀차니즘이 시작 됩니다.. 그래서 이런 귀차니즘을 해소할 그런 것들이 없을까 하다가 옆에 iOS 개발자분이 흔들어서 요청한 HTTP 로그들을 보여주는 라이브러리인 (netfox) 를 보여주더군요.. https://github.com/kasketis/netfox GitHub - kasketis/netfox: A lightweight, one line setup, iO..

android 2022.05.05

[안드로이드] Json Converter는 이제 Kotlinx Serialization로 변경해야 하는 이유

요약 (Summary) 안드로이드 프로젝트가 코틀린이 주로 구성되어 있다면 HTTP 통신 시 역/직렬화는 Kotlinx Serialization을 사용해야 합니다. 배경 (Background) HTTP 통신시 Json Converter로는 Java 구성된 Gson이나 Moshi 가 대표적으로 있습니다. 하지만 이것들은 Java 기반이라 Kotlin에 적합하지 않은 문제가 있습니다. 예를 들면 서버에서 field 값을 안 주거나, null로 줬을 때 대응에 어려움이 있습니다. 비교 (Compare) Gson, Moshi, Kotlinx Converter 를 비교하기 전에 제가 Json Converter 라이브러리를 지정하는 기준은 아래와 같습니다. - Default Argument 를 사용자가 그때그때..

android 2021.12.18

[안드로이드] Visual 라이브러리 "widget" 소개

안녕하세요. 이번에는 제가 여러 앱을 사용하면서 인상 깊었던 View 들의 애니메이션이라던지 프로젝트 개발하면서 Ui 측면에서 비용이 많이 들었던 것들을 시간 날 때마다 개발해서 사용했던 것을 소개해볼까 합니다. https://github.com/sieunju/widget GitHub - sieunju/widget: Visual 적인 View 들을 모아놓은 라이브러리입니다. Visual 적인 View 들을 모아놓은 라이브러리입니다. Contribute to sieunju/widget development by creating an account on GitHub. github.com 기능 - SurfaceView 기반의 ProgressView - Coordinator.Behavior 기반의 Transla..

android 2021.11.02

[안드로이드] SimplePermissions 소개

안녕하세요. 시간이 좀 됐지만 안드로이드 appCompat이 1.3.0 이상 올라가면서 권한에 대한 프로세스가 전면 수정됐습니다. 그래서 그에 맞게 대응하면서 간단하게 적용할 수 있는 라이브러리를 만들어봤습니다. https://github.com/sieunju/SimplePermissions GitHub - sieunju/SimplePermissions: AppCompat 1.3.0 이상 권한 라이브러리 입니다. AppCompat 1.3.0 이상 권한 라이브러리 입니다. . Contribute to sieunju/SimplePermissions development by creating an account on GitHub. github.com 기능 - build 패턴으로 전체 권한이 승인 여부 및 거부..

android 2021.11.02

드로이드 나이츠 2021 보고 인상 깊었던 세션 #1

https://sites.google.com/view/dk21/ Droid Knights 2021 드로이드나이츠는 기술 세션으로 개발자들의 경험을 공유하는 안드로이드 컨퍼런스 입니다. 2021.09.25(토) 13시 온라인 스트리밍으로 진행 예정입니다. sites.google.com 작년 말부터 개발 안목을 넓히고자 안드로이드 개발자 컨퍼런스인 드로이드 나이츠를 보고 싶다는 생각이 들었습니다. 티켓을 구입후 라이브로 세션들을 이리저리 왔다 갔다 하면서 봤습니다. 진짜 티켓을 구입한 만원이 전~~혀 아깝지 않았고, 정말 유익한 정보였습니다.(나중에 유튜브 동영상으로 풀렸지만,,) 서론이 길었다 각설하고 드로이드 나이츠를 보면서 가장 인상 깊었고 한번 만들어 보고 싶었던 세션들을 차례대로 소개하도록 하겠습니..

android 2021.10.23

[안드로이드] Di 라이브러리 Koin 에서 Hilt 로 사용하게 된 이유

제목과 같이 잘 쓰고 있던 Koin에서 Hilt로 변경하게 된 이유와 사용법에 대해 설명하고자 합니다. Koin 실사용 후기 사용법이 정말 쉽습니다. 이게 가장 큰 장점이자 이 이상 설명할것은 없을 거로 보입니다. 저 같은 Third Party 개발자한테는 정말 좋은 라이브러리입니다. 어떤 기능이나 설계를 쉽고 빠르게 사용하는게 라이브러리지 비용을 엄청 들여서 사용하는 거는 제 기준 좋은 라이브러리가 아니라고 생각합니다. 하지만, 단점도 존재합니다. 단점을 알기 전에 Koin 전체 적인 개념을 알아야 합니다. 앱이 구동되면 Koin은 Application 클래스에서 startKoin 함수를 통해 Di Cache를 만들어 냅니다. 그래서 필요한 클래스에 KoinCompoent 추가후 "by inject" ..

android 2021.08.07

YoutubePlayerView 소개

안녕하세요 안드로이드 개발자 SieunJu 입니다. 최근에 유튜브 플레이어 라이브러리를 만들어서 한번 간략히 소개 할까 합니다. 유튜브 플레이어 깃 주소 1. 계기 우선 아주 예전에 만들어진 자체 유튜브 API가 jar 있었습니다. 하지만 그건 현재 사용하기에는 많은 어려움이 있고 무엇보다 androidx 가 없습니다. 그래서 이거를 대응하기위해 어떤 외국인이 만든 라이브러리 보통 사용합니다. 이 라이브러리는 사람들이 많이 사용하고 되게 잘 만들었긴 했지만, 기본 베이스가 WebView를 처음에 초기화를 하기 때문에 RecyclerView 에다가 바로 넣으면 버벅이는 이슈가 있었습니다. 그래서 따로 커스텀하게 만들어서 사용해야 한다는 단점이 있었습니다. 그래서 유튜브 라이브러리 한번 만들어 볼까? 라는 ..

android 2021.07.22

ADB Wifi 로 디버깅하기

이번 글은 이전부터 사용하고 있었는데 홍익인간 정신으로 다른 사람들한테도 알려두면 좋을거 같아 올리게 되었습니다. 사양 OS : Mac or Window (솔직히 둘다 상관 없음 집에서는 인텔 Mac 사용하고 있고, 회사에서는 윈도우로 사용중입니다.) IDE : Android Studio 4.1.2 설치 및 사용 방법 (MAC 기준) 좌측 상단 메뉴바에 보면 Preferences메뉴가 있습니다. 클릭! 사이드 메뉴에 Plugins 메뉴 클릭! WIFI 검색하게 되면 여러가지 툴들이 보이는데 dengzii 형님께서 만든 툴을 설치합니다. (저는 이미 설치되어 있어서 Intalled 상태입니다.) 설치가 완료되면 Android Studio 재실행할거냐고 물어보는데 재실행 하면 됩니다. 상단 메뉴바에 Tool..

android 2021.07.22

Android Custom ProgressBar 만들기

[Android ProgressBar?][SurfaceView 기반의 ProgressBar] 우선 개발을 하다가 기존 안드로이드에서 제공하는 ProgressBar 클래스가 있는데 이거에 크나큰 문제점을 발견 하였다. 그 문제점인게 무엇이냐면 ProgressBar 가 문제 인게 아니라 Android View 자체의 문제점이라고 있고, Developer 사이트에 들어가면 ProgressBar 는 결국 View 로 상속되어 있는 녀석입니다.그 말인 즉슨 해당 뷰가 빠르게 갱신해야 하는 요건이 들어오면 사용자가 원하는 만큼의 퍼포먼스를 못본다는 문제입니다.그래서 Android 니까 이 문제는 해결을 못한다? 기본으로 제공하는 클래스의 한계점이 있어서 이 문제를 해결못한다는거는 말이 안되는 것이라 판단하여 Sur..

android 2019.02.17

android RecylcerView ImageResize (카카오톡 이미지 커지는 애니메이션 구현 방법)

오랜만에 포스팅을 하게 되었습니다. 일단 어떤걸 말하는 건지 이해가 잘 안되는 분들을 위해서 알려드리도록 하겠습니다. 우선 카카x톡을 들어가면 저 텝이 보이는데 저 텝을 클릭해서 스크롤을 하면 영상이 점점 커져서 보이는 애니메이션 같은게 있습니다. (이 구현영상은 제가 구현한 것으로 실제 녹화해서 찍은 영상입니다.) 제가 만든 것은 이미지로 구현했지만 카카x톡에서는 영상으로 되어있습니다. (딱히 상관은 없습니다.) 이제 본론으로 넘어와서 저것이 어떻게 구현되는건지 소스에 대해서 부분부분 보여드리도록 하겠습니다. -CustomLinearLayoutManager.java-package com.example.jsieu.work.view; import android.content.Context; import a..

android 2018.01.13