개발 50

안드로이드 앱(훈들)

Google Play 훈들 - Google Play 앱 여섯 개의 자모로 풀어쓴 한글 단어 ''훈들''을 여섯 번의 도전 안에 맞춰봅시다. 한글 단어를 풀어쓴 후 입력을 누르면 칸 색깔이 변합니다! play.google.com github GitHub - junjange/Kordle-Android: “훈들”을 여섯 번의 도전 안에 맞춰보자!🤴 “훈들”을 여섯 번의 도전 안에 맞춰보자!🤴. Contribute to junjange/Kordle-Android development by creating an account on GitHub. github.com

[kotlin - Error] 코틀린 Android Error inflating class com.google.android.material.button.MaterialButton

Material Components for Android를 사용하던 도중 view 객체 생성에 문제가 발생하는 경우가 있었습니다. 출력된 에러 메시지이다. 해결 방법 이러한 문제가 발생하는 이유는 사용된 뷰에 머터리얼 테마가 있지만, 액티비티 테마의 상속된 테마는 머터리얼 테마가 아니기 때문이다. 일반적으로 styles.xml 파일에 각종 액티비티 테마가 정의되어 있다. 문제가 발생한 테마는 AppCompat 테마인 Theme.AppCompat.Light.NoActionBar 가 적용되어 있어 머터리얼 테마로의 변경이 필요하다. 안드로이드 매니페스트 파일(AndroidManifest.xml)을 열고 문제가 발생한 액티비티가 사용하는 테마를 다음과 같이 변경하자. Theme.MaterialComponent..

Develop/Kotlin 2022.05.09

[kotlin] 코틀린 Android MVVM Retrofit(BE 연결) 구현

이전까지 모두 Room을 통해 MVVM 패턴을 구현해보았는데 이번에는 외부 백엔드와 연결하여 MVVM 패턴을 구현해보도록 하자. Retrofit을 통해 BE와 연결 후 데이터를 가져오는 게시판 예제이다. 비동기 작업은 Corutine을 사용하였고 자세한 내용과 공부한 내용은 주석을 달아 놓았다. Retrofit에 대해 잘 모른다면 다음 링크를 통해 알아보고 온 후에 아래 내용을 보면 이해가 더욱 쉬울 것으로 예상한다. [kotlin] 코틀린 Android Retrofit 활용(기상청단기예보 오픈 API 사용) Retofit이란? 이번에는 Retofit 라이브러리를 이용하여 기상청 단기예보 오픈 API와 통신하는 방법에 대해서 알아보도록 하자. Retofit이란 모바일에서 HTTP API 통신을 할 때 사..

Develop/Kotlin 2022.05.01

[kotlin] 코틀린 Android RecyclerView Item 오류(Position 오류)

RecyclerView를 구현할 때 Item이 카운트 되지 않아 똑같은 데이터를 부르거나 item을 재사용 하지 않는 오류가 종종 발생한다. 예를 들어 item의 갯수는 10개지만 처음에 화면에 보이는 item이 4개라서 4개의 뷰만 계속해서 화면에 뿌리는 것이다. 이러한 현상이 발생하는 이유는 RecyclerView의 재사용이다. RecyclerView는 리소스를 아끼기 위해 뷰를 재사용한다. 그래서 재사용을 막기 방법을 쓰기도 하는데 그러면 RecyclerView의 목적이 손실되므로 권장하는 방식이 아니다. 해결 방법은 다음과 같다. RecyclerView Adapter에 다음 메소드를 오버라이드 하는 것이다. override fun getItemViewType(position: Int): Int {..

Develop/Kotlin 2022.05.01

[kotlin] 코틀린 Android Retrofit 활용(기상청단기예보 오픈 API 사용)

Retofit이란? 이번에는 Retofit 라이브러리를 이용하여 기상청 단기예보 오픈 API와 통신하는 방법에 대해서 알아보도록 하자. Retofit이란 모바일에서 HTTP API 통신을 할 때 사용하는 라이브러리이다. 안드로이드 애플리케이션에서 통신 기능에 사용하는 코드를 사용하기 쉽게 만들어놓은 라이브러리로 REST 기반의 웹서비스를 통해 JSON 구조를 쉽게 가져오고 업로드할 수 있다. 다음에 나올 코드를 보다 보면 기상청 단기예보 오픈 API Key가 숨겨진 것을 확인할 수 있는데 API Key 숨기는 법을 모른다면 다음 링크를 통해서 글을 읽어보고 오면 좋을 것 같다. [kotlin] 코틀린 Android local.properties에 API Key 숨기고 활용하는 방법 이번에는 local.p..

Develop/Kotlin 2022.04.19

[kotlin] 코틀린 Android local.properties에 API Key 숨기고 활용하는 방법

이번에는 local.properties에 API Key를 숨기고 활용하는 방법에 대해서 알아보자. 개발하다 보면 많은 API Key를 사용하게 되는데, 이런 많은 Key를 가지고 Git이나 오픈되어 있는 공간에서 작업을 하다 보면 Key가 노출되어 악용될 위험이 있다. 이럴 때를 대비해서 Key를 숨기고 활용하는 방법에 대해서 알면 참 좋을 것 같다! local.properties 우선 local.properties 자신이 숨기고픈 Key를 입력한다. # api url url.weather="xxxxxx" # api key api.key="xxxxxx" # kakao map rest api key kakao.map.rest.api.key = "xxxxxx" 입력을 했다면 build.gradle(Modul..

Develop/Kotlin 2022.04.19

안드로이드 앱(행운복권) 기술서

프로젝트명 행운복권 프로젝트기간 2020.11 ~ 2021.01 (3개월간) 참여인력 개인 프로젝트 사용한 기술스택 Kotlin, Android Studio, MVVM 디자인 패턴 프로젝트 소개 군 전역 후 관심이 있던 코딩에 대해서 제대로 배우고자 했고 그 중에서 하고싶었던 앱 개발을 하기로 했다. Kotlin을 공부하면서 앱 개발과 배포를 목표로 정했기 때문에 기안을 복학 전인 2021년 3월 전까지로 잡아 공부했다. 군대에 있을 때부터 복권에 관심이 많았는데 미국 복권에 대한 정보는 없는 것 같아 한국 복권과 미국 복권에 대한 정보를 전부 알려주는 앱을 개발하고자 했다. 그런데 미국 복권에 대한 정보를 찾기에는 쉽지 않았고 미국 복권에 경우 대행 업체로 사고 판다는 것을 알게 되었다. 그래서 미국 ..

스타트 업(Matrios) 안드로이드 앱 개발 아웃소싱

🔗 Link MATRIOS Hi, We’re MATRIOS 상상 속의 기술을 실현시켜 세상에 긍정적인 변화를 일으키고자 하는 스타트업, 매트리오즈입니다. Study Hard, Really Hard 국내 유일의 On-device 시선추적 AI 기술 보유 스타트업 Deep-tech matrios.co.kr ℹ️ Info 매트리오즈는 AI 기반의 모바일 아이트래킹 프로그램을 개발 중인 스타트업으로, 아이트래킹 기술을 별도 기기 없이 내장 카메라가 달려 있는 컴퓨터, 핸드폰 등에서 프로그램을 다운만 받으면 작동가능하도록 시도했고 기술 개발에 성공했습니다. 진행기간 : 21.07.01 - 21.11.30 주최 : Matrios ✏️ Activity Android 개발 협업 진행(Android 개발자, 인공지능 개..

Project/Outsourcing 2021.11.25

[kotlin] 코틀린 Android 코루틴(Coroutine) 활용

이번에는 코틀린에서 자주 사용되는 코루틴(Coroutine)에 대해서 알아보도록 하자. 코루틴은 스레드와 기능적으로 비슷하지만 하나의 스레드 내에서 여러 개의 코루틴이 실행되는 개념으로 비동기 프로그래밍에 권장하는 동시 실행 설계 패턴이다. 이전에 알아보았던 MVVM 패턴에서도 코루틴을 사용하여 텍스트를 DB에 저장할 때 사용된 것을 확인할 수 있다. 코루틴은 단일 스레드 내에서 여러 개의 코루틴을 실행할 수 있기 때문에, 많은 양의 동시 작업을 처리할 수 있으면서 메모리 절약의 장점이 있다. 쉽게 생각해서 하나의 스레드 내에 여러 개의 코루틴을 통해 작업을 할 수 있는 것이다. 코루틴에 대해서 간단하게 알아보았으니 활용하는 방법에 대해서 알아보도록 하자. Gradle 설정 우선 프로젝트를 하나 생성하고..

Develop/Kotlin 2021.11.19

[kotlin] 코틀린 Android MVVM 패턴 구현

이전에 Room DB를 통해 텍스트를 입력하면 텍스트가 저장되어 UI에 뿌려지는 방식을 구현해봤다. 이번에는 MVVM 패턴에 대해서 알아보자. MVVM 패턴이란 Model, View, ViewModel을 가리키며 ViewModel을 사용하여 Model과 View를 분리하는 것이 특징이다. View는 xml, Activity, Fragment 등이 되고, Model은 내부/ 외부 DB가 된다. Repository로 Room이나 다른 웹 서비스에 접근하고 ViewModel에 collback 해주면, ViewModel이 observer에 response해준다. (LiveData를 통해 View를 관찰) 그럼 LiveData와 이전에 만들었던 Room을 통해 MVVM 패턴을 구현해보자. Room DB에 대한 내..

Develop/Kotlin 2021.08.30