일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 메모리릭
- 레트로핏
- 키스토어
- 안드로이드해상도
- #리사이클러뷰
- 사용법
- 리사이클러뷰 체크박스
- #리사이클러뷰 어댑터
- retrofit
- zeplin
- MVVM
- 구글맵안돼요
- #ContentProvider #App DataShare
- #SMS API #안드로이드 SMS #SMS Retriever
- 메모리릭
- 안드로이드
- retrofit2
- #안드로이드 개발자 #안드로이드 신입 #개발자 이직 #안드로이드 면접 #신입 개발자
- retrofi
- 빗버킷 #bitbucket #authorization failed #깃
- 안드로이드 익명클래스
- 클린아키텍쳐
- #안드로이드
- 제플린
- 안드로이드 아키텍쳐
- #android #안드로이드 #glide #gif #이미지다운로드
- Today
- Total
목록개발 Tip (42)
땀이 삐질삐질 나는 개발 일기
안녕하세요 개발자 삐질입니다 오늘 제가 소개하고 싶은 내용은 리사이클러뷰를 다루다 보면, 칸칸이 다른 Row를 표현해야할 때가 옵니다. 그때를 위한 ViewType을 사용해 표현하는 방법 입니다. 간략하게 개념을 설명 드리겠습니다. 리사이클러뷰는 각 칸마다 해당 칸의 ViewType, 즉 해당 칸(Row"이하 칸")의 특성을 나타내는 ViewType이란 것을 기반으로 어떤 Layout을 형성할지 onCreateViewHolder에서 판단한 뒤, Holder를 return하게 됩니다. 기본적으로 이 ViewType의 Value는 개발자가 직접 지정할 수 있으며, 지정하지 않았을때는 내부적으로 Default value로 처리가 됩니다. 즉 1.빨 ViewType =1 2.주 ViewType =2 3.노 Vi..
안녕하세요. 삐질삐질 개발하는 개발자 삐질입니다. 오늘 글로써 소개할 내용은, 흔히들 알고있는 익명클래스와, 메모리릭에 관련 된 내용입니다. 최근 오픈 커뮤니티에서 활동하면서 많이 듣는 말 중에 하나입니다. "익명클래스로 리스너를 등록하면 메모리릭이 나니까 익명클래스로 하지마" "왜냐면 익명클래스는 명시적으로 해제 할 방법이 없기 때문이지" "그래서 무조건 익명클래스로 뭔갈 하면 메모리릭이 나는거야" 혹시 글을 읽고 계신 독자님도 이렇게 생각하고 계셨나요? 그렇다면... 오른손을 듭니다.... 그러고 얼굴과 가깝게 손을 듭니다.그대로 자신의 뺨을 때립.... 농담이구요^^ ... 결론적으로 익명클래스는 정적클래스로 선언하지 않아서 메모리 릭을 유발하는 것은 절대 아닙니다. 익명클래스를 쓴다고 해서 반드시..
안녕하세요 개발자 삐질입니다 오늘 제가 소개하고 싶은 내용은 제대로 된 리사이클러뷰의 개념 입니다. 여러분, 리사이클러뷰는 리스트뷰 -> 리사이클러뷰 즉 리스트형식의 UI를 구성하는 데 있어서 없어서는 안될 범국민 컴포넌트가 되어버렸습니다. 하지만 말이죠..? 리사이클러뷰... 제대로 알고 쓰십니까? 리사이클러뷰란 뭔가요? 어떻게 작동하는지 알고 계신가요? 이 질문에 틀리지만 자신있게 대답할 수 있는 분들이 얼마나 있을까 저는 묻고싶습니다. 보통은 이런 질문에 대답은 이렇습니다. A: 어.. 화면에 보이는 양 만큼 홀더를 처음에 만들구요~ 화면에서 그 홀더가 사라지면 그걸 떼서 밑에 갖다 붙이고 다시 바인드뷰홀더에서 데이터를 셋 해요 . 아니 그래서 어떻게 갖다 붙이는 건데요~~~ A: ...........
안녕하세요 개발자 삐질입니다. 오늘은 블로그에 많은 자료들이 있지만, 따라해보면 잘 안되는 키 해시값 뽑는 방법에 대해 알아보겠습니다. 별거 없어요 . 하지만 사전 준비사항으로는 개발모드의 해시값일 경우 JDK환경변수 추가하기 ( Windows,Osx 필수) -> 이 부분은 자료가 워낙 많아서 패스하겠습니다. 1. Build vairants를 누르면 , 2와 같이 debug 영역이 나옵니다. 2. 여길 클릭하면 Debug / Release 모드를 선택할 수 있습니다. 3. 우측 Gradle을 클릭하면 4와같은 Path에 도달할 수 있는데 이때 SigningReport를 더블클릭하게 되면 5,6 과 같은 콘솔이 자동으로 출력이 됩니다. 이때 Alias를 보면 ReleaseKey / DebugKey등 원하는..
안녕하세요 개발자 삐질입니다. 오늘 전달드릴 내용의 주제는 바로 키스토어(KeyStore)입니다. 열쇠..? 열쇠스토어?..? 열쇠판매점? 키스토어가 뭔지 간단하게 알아보겠습니다. 키스토어란, 우리가 흔히 안드로이드 앱을 개발하고 내가 만든거야! 라고 서명하는데 필요한 암호화된 파일입니다. 키스토어는 말 드대로 열쇠! 이기 때문에, 설치파일(APK)를 인증하기 위해서는 꼭 맞는 반드시 동일한 파일이여야 합니다. 무슨 말인고 하니 ~ 안드로이드 앱 개발 후 사용자에게 까지 나의 앱이 도달하는 경로는 다음과 같습니다. 열심히 개발 PlayConsole에 등록 PlayStore배포 사용자 다운로드 욕 먹기 여기서 키스토어는 위에서 언급된 것 처럼 증명을 하는 도구입니다. 왜 굳이 증명을 해야하나? 누군가가 내..
안녕하세요 개발자 삐질입니다. 오늘은 리사이클러뷰를 사용할 때 , 체크박스 처리를 어떻게 할 것인지 예제를 통해 알아보고자 합니다. 백마디의 설명보다, 잘 달린 주석이 낫다 판단하여 설명보다는 주석과 스크린샷 위주로 대체하겠습니다. 저의 대부분의 블로그 자료는 FindViewById를 없애기 위해 DataBinding을 사용합니다. ( Gradle:App ) 옵션 참고 MainActivity.xml Item_View.xml MainActivity.kt import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.view.View import androidx.databinding.DataBindingUtil i..
안녕하세요 개발자 삐질입니다. 이번 글에서는 DataBinding을 사용하여 BaseActivity를 손쉽게 재사용 하는 방법에 대해 알아보겠습니다. 1. BaseActicity - layout Res와 Generic 타입을 정의해서 Child Activity를 깔끔하게 관리하기 abstract class BaseActivity(private val layoutId:Int): AppCompatActivity(){ lateinit var compositable: CompositeDisposable lateinit var binding: T lateinit var lExcaptionMsg : Observer lateinit var lMsg: Observer override fun onCreate(savedI..
안녕하세요. 삐질삐질 개발하는 개발자 삐질입니다. 오늘은 안드로이드 앱 개발을 진행하면서 우리가 흔히 많은 프로젝트에서 공통적으로 사용하는 모듈의 Path를 각 개발환경에 맞게 관리하는 Tip에 대해 알아보겠습니다. 준비물 Git 쉽게 설명드리기 위해 예시를 들어보겠습니다. A앱 B앱 C앱 …. 등에서 “가”라는 로컬 Path에 있는 모듈을 참조합니다. 회사의 Path는 회사/씨드라이브/회사폴더 속에 모듈이 있습니다. 집의 Path는 집/씨드라이브/집폴더 속에 모듈이 있습니다. 이때 요즘엔 Git을 통해 프로젝트를 옮기게 되는데 집에서 풀을 받으면 , 회사에서 설정 해놓은 Path가 따라옵니다. 해당 setting.file은 ignore에 추가할 수 없습니다. 일일이 매번 수동으로 Path를 수정해줘야 ..