시작하며 사실, 필자가 지금 서술하려는 내용은 [안드로이드 공식 홈페이지 프로가드 부분]에 모두 나온 내용이다. 하지만 빠른 앱개발을 위해선 개발 지식에 대한 메타인지를 쌓는 것이 무엇보다 중요하다. 정리겸 해당 글을 작성한다. > 그럼 공식 홈페이지를 보면 되지 이
안드로이드에서 선풍적인 변화가 있다. 그리고 그것을 다른 회사에서도 점점 도입해가는 추세인 기술이 있다. 그것은 바로, 'Android Compose'이다. Compose는 선언형 UI방식으로 코드의 라인 수를 '미친듯이'줄였을 뿐만 아니라, 코드의 재사용성을 높였다.
회사에서 cordova프로젝트를 받았다. 해당 프로젝트를 Android Studio Electric Eel에서 빌드를 시도했다. 하지만 빌드 오류가 떴었고 삽질이 시작되었다.회사에서 인수인계 받은 cordova 프로젝트는 8.1.0버전이다. 그리고 IDEA로는 Andr
시작하며 이름이 참으로 비슷하여 오묘하게 헷갈리는 두 녀석, Comparable과 Comparator. 이번 포스팅은 이 두 인터페이스의 차이와 사용 살례에 대해 알아보고자 한다. 1. Comparable 1.1. 기본 사용법 이해를 하기 위해 이름으로 연상을 하면
보통 viewModel객체를 만들땐 'ViewModelProvider'객체를 사용하여 만든다.하지만 위 코드를 보면 알다시피 파라미터에 넘겨줘야할 인자가 너무 많을 뿐만 아니라, ViewModel객체가 많아지면 많아질수록 위와 같은 상용구 코드가 늘어난다.또한 View
시작하며 noinline키워드를 제대로 알기 위해선 아래 개념들이 선행되어야 한다. > [선행 지식] [inline함수의 개념] [inline함수가 적용되지 않는 경우] 이 글을 읽기 전, 위 글을 읽고 와야 이해가 쉬울거라 생각한다. 1. noinline,
시작하며 Kotlin의 지원 함수 중, 가장 알아야할 점이 많은 함수가 inline함수라 생각한다. 단순 inline함수의 쓰임새에서 더 나아가 noinline선언은 무엇인지, inline class란 무엇인지 이 글에서 알아보고자 한다. [inline함수 복습하러
이 글이 Android디컴파일을 설명하는 글중 가장 자세히 설명하는게 아닐까 한다. 이 글을 하나하나 따라오면 디컴파일은 5분안에 될거라 생각한다.다음 사이트에서 원하는 APK파일 다운로드 진행이 파일은 apk파일 내에 있는 dex파일을 jar파일로 변환시켜주는 파일이
Start >"Kotlin언어가 세상에서 제일 효율적이다" 라는 말은 어쩌면 정말 위험한 말일수도 있다. 마찬가지로 "Kotlin이 Java보다 효율적이다" 라는 말도 위험한 말일수도 있다. 하지만 내가 최근에 공부하고 있는 Kotlin In Action을 보다보면
시작하며 이번 글에선 startActivity, startActivityForResult에서 상용구를 제거한 함수를 만들어보았다. 내가 이번에 만들어본 아래의 메서드를 통해 기존에 쓰이던 불필요 중복코드를 많이 줄일 수 있다. 기존의 불편함? 우리가 startActi
그동안 push하고나서 커밋메시지 변경법을 모르고 있었다. 어쩌면 3년차 개발자 생활을 하며 그런 실수를 한 번도 안했기 때문일수도 있다. 근데 오늘 처음 커밋메시지를 잘못 작성하여 Push해버렸고, 어떻게 해결할까 고민하다 해결책을 찾아 간단 정리한다.commit m
코틀린이라는 언어를 다루면서 '이것만큼은 꼭 알아야 한다'라는 개념이 있다. 참 여러가지가 있지만 그중 생각나는 것 중 하나는 바로 '코틀린 표준 스코프 함수'이다. apply, run, let, also + with가 있는데 이 포스팅에 모두 정리해버릴까 한다. 그리
현재 진행중인 프로젝트에서 String타입의 Json형식의 데이터를 받아오는 일이 있었다. 예를 들면 Push메시지로 들어오는 Json이나, Qr코드를 촬영하여 수신받는 Json이 있다. 그리고 이들은 각각의 Data Class로 변형해 주어야 한다. 그리고 이를 수
보통 코딩을 하며 프로젝트가 커지면 border관련 코드가 다음과 같이 쫘르륵 중복되어 나왔다이러한 형태의 녀석이다.그리고 이는 관리하기도 매우 어려워진다. 방법이 없을까 생각하다가 Programatic한 방법이 있다는것을 알았다. 그리고 이를 다음 하나의 메소드를 통
윈도우 cmd기준으로 설명합니다.이 블로그 즐겨찾기 해두시고 앞으로 안드로이드 키해시 발급받으실일 있으면 여기로 오세요\~~ 우선, 키해시 발급을 위해서는 다음 두 가지의 선행작업이 필요합니다.목차 1\. openssl을 설치2\. openssl을 환경변수에 추가하나하
ㄴ> IO스레드와 Main스레드의 통신함. -> 잘못 답변했구나. 코루틴에서 스레드 통신은 Channel을 사용한다. 공부 필요ㄴ> 실무에선 쓰이진 않았다. 다만 개인 스터디에서 처리한 방식은 ….ㄴ> 구현은 안함. 다만 .... 하게 구현되어 있다.ㄴ> koin은 런
사이드 프로젝트를 하거나 추후 회사 내에서 신규로 앱을 개발해야할 상황이 올 수 있다. 그럴 때 앱 개발을 시작하기 위한 초기 세팅들이 필요하다.예를 들면, MVVM패턴을 구성하기 위한 세팅 중 DataBinding을 설정하거나 ViewModel class, Repos
결과 화면 USB케이블이 연결되어 있지 않았을 때 기준, 시작하기에 앞서 > 매우 중요 안드로이드 원격 adb 연결법을 위한 조건 : 컴퓨터와 핸드폰이 동일한 wifi환경에 접속해 있어야만 합니다. 첫 연결시에는 핸드폰과 노트북이 usb연결되어 있어야 합니다. S
목차 채널기초 채널 파이프라인 1. 채널 기초 코루틴에서 Channel은 인터페이스이다. 그리고 이 인터페이스는 'SendChannel'과 'ReceiveChannel'이라는 인터페이스를 상속받고 있다. 아래와 같은 형식으로 말이다. 그러기에 Channel을 사용
목차 플로우 컨텍스트 플로우 버퍼링 플로우 결합 플로우 예외 및 완료처리 플로우 런칭 1. 플로우 컨텍스트 우리는 플로우를 사용할 때, 코루틴과 함께 사용하곤 한다. 그리고 하나의 코루틴 빌더(launch, async, withContext 등...)내에서 Flow