Android(7)
-
android Socket IO Random Chat - nickname
닉네임 화면 compose로 ui를 구성하는 건 생략하려고 합니다. ( 혹시 궁금하시면 한번 글 작성해보겠습니다. 댓글로 남겨주시면 감사하겠습니다. ) 각자 원하는 스타일이 다를 수 있기 때문에 그거에 맞춰서 만들어 주시면 됩니다. 간단하게 그냥 텍스트에 버튼 달고 log로 확인하셔도 무방합니다. 자! 이제 어떻게 연결하고, 사용하는지 그 과정을 소개하도록 하겠습니다. 대략적인 과정은 이렇습니다. 닉네임 만들고 -> emit 으로 전송 -> 소켓에서 닉네임 체크 -> 중복 결과 안드로이드로 전송 -> 화면에 결과 알려줌 1. Viewmodel 위의 화면을 mainScreen라 부르겠습니다. 먼저 socket을 만들어야겠죠? viewmodel 에 하나 만들어줍니다. 참고로 저는 최대한 ..
2022.11.28 -
Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 3(Domain)
전 편이 궁금하신 분들은 아래에 링크로 ㄱㄱ 2022.10.07 - [분류 전체보기] - Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 2 Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 2 :: 개발하는무사시 dev-musa.tistory.com 이번 글에서는 Domain 영역을 어떻게 만들었는지 적으려고 합니다. 부족한 글 봐주셔서 감사합니다. Domain 영역입니다. WeatherRepository Retrofit2를 이용하여 통신을 할 것이고 1. getWeather 함수는 날씨 공공 데이터에서 받아올 단기예보를 위한 함수입니다. 2. getCurrentWeather 함수는 현재 시간의 날씨를 받아오기 위한 함수입니다. ..
2022.10.08 -
어노테이션 뜻, 이유, 장점
Annotation @Compose, @Override, @Module 클래스나 함수, 메서드, 변수 등 여러 곳에 사용하는데 왜 사용할까?? Annotation은 무엇인가요? 1. 컴파일러에게 코드 문법 에러를 체크하도록 정보 제공 2. 빌드 또는 배치 시 코드를 자동으로 생성할 수 있도록 정보 제공 3. 실행 시 특정 기능을 실행하도록 정보 제공 Annotation 의 뜻은 무엇일까? 정보를 제공한다 = *메타데이터의 역할 어노테이션을 사용하여 의미 부여, 기능 주입 등을 가능하게 한다!!! ( *메타 데이터 = 데이터를 설명해주는 데이터, 데이터를 위한 데이터!! ) 그럼 Annotation 을 왜 사용할까?? Annotation 은 정보를 제공함으로써 강력한 이점이 존재한다. 그 이점때문에 사용한..
2022.09.25 -
android Insta app clone coding 5편 - Multi module compose navigation (멀티모듈에서 컴포트 네비게이션으로 화면전환)
멀티모듈에서 화면 전환 시 문제가 발생 문제 : 로그인 모듈에 있는 로그인스크린에서 로그인 버튼 클릭 시 앱모듈에 있는 Bottom Navigation에 피드로 진입해야하는데 어떻게 연결 해야하는지 몰랐다. 해결하기 위한 노력 : 1. 당연히 구글링 - 이때 찾아본건 ( compose navigation, nested graph , bottom navigation ) 2. 그리고 적용 근데 안돼서 다시 검색 3. 곰곰히 생각해보기 ㅋㅋㅋ 해결 방안 : base module은 다른 모듈에서 모두 사용하니 base module 에 전체 화면에 대한 NavItem을 넣어두고 앱 모듈에 전체 Nav그래프를 만들때 그 안에 로그인, 회원가입, 페북로그인, 홈을 넣어둔다. 자세히 말하면 로그인 모듈에는 1. 로그인..
2022.06.13 -
gradle kotlin dsl migration - 2. Gradle 에서 kts 로 migration
1편에 이어 두 번째 시간입니다. 여기서는 기존의 Gradle 파일을 바꾸는 작업을 하겠습니다. groovy에서 kotlin으로 변경할 때는 몇 가지 규칙이 있습니다. https://developer.android.com/studio/build/migrate-to-kts?hl=ko Groovy에서 KTS로 빌드 구성 이전 | Android 개발자 | Android Developers Gradle 구성 파일을 Groovy에서 KTS로 이전합니다. developer.android.com 규칙의 내용은 공식 홈페이지에서 확인이 가능합니다. But 저것만 보면 조금 이해하기 어렵더라구요. 저랑 같이 한번 실습을 통해 무엇을 어떻게 바꾸는지 한번 확인해보도록 하겠습니다!! 여기서 먼저 settings.gradle..
2022.05.24 -
gradle kotlin dsl migration - 1.BuildSrc 폴더 생성하고 그 안에 build.gradle.kts 생성
android의 multi module, modularization을 통한 이점으로 android clone coding에 차별화를 두고 싶었습니다. 시작은 좋았지만...모듈화를 할 때 build gradle 관리를 kts 를 이용해서 하는 걸 보고 migration 하다가 삽질한 게 최근 업데이트된 걸로 그나마 알려드리고 싶어 글을 적습니다. 그래서 kotlin dsl? kts? 그게 뭐야?? 먹는건가?? DSL이란 Domain Specific Language의 약자로 특정 분야에 최적화된 프로그래밍 언어를 뜻한다. 상용구 코드를 최소화하기 위해 명령형 코드 대신 선언적 코드 형식을 따르고, Kotlin DSL은 코틀린의 언어적인 특징으로 가독성이 좋고 간략한 코드를 사용하여 Gradle 스크립팅을 하..
2022.04.27