반응형

Android 9

[Android Clean Architecture] Hilt 설정

1. Version Catalog 세팅 기준으로 했습니다.2. app, data, domain, presentation 모듈이 생성되어 있는 기준입니다.  Version Catalog (libs.versions.toml)[versions]......kotlin = "2.0.0"......#Hilthilt = "2.51.1"androidx-hilt = "1.2.0"#Kaptkapt = "1.8.10"#Kspksp = "2.0.0-1.0.21"[libraries]......#Hilthilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }hilt-compiler = { group = "com.google..

[Android] ViewModelStoreOwner 와 ViewModelProvider

ViewModelStoreOwner 와 ViewModelProvider 를 통한 특정 Activity, Fragment에서 ViewModel을 관리하는 방법에 대해 살펴보겠습니다. ◼️ MainActivity val customViewModelOwner: ViewModelStoreOwner = object : ViewModelStoreOwner { override val viewModelStore: ViewModelStore = ViewModelStore() } fun clearCustomViewModelStore() { customViewModelOwner.viewModelStore.clear() }위 코드에서 ViewModelStoreOwner 인..

Android/[Android] 2024.07.02

[Android Clean Architecture] 멀티 Module 생성

1. 모듈 생성  꼭 Android Library 선택!data, domain, presentation 각각 생성해줍니다.  2. app 모듈의 res 파일을 presentation 모듈로 이전 3. ApplicationClass 생성 및 설정위치: App 모듈 패키지 하위 import android.app.Applicationclass ApplicationClass: Application() { override fun onCreate() { super.onCreate() }} App 모듈 Manifest 설정  4. MainActivity를 presentation 모듈로 이동 4. 모듈 종속성 설정 data, presentation 모듈에 추가하는 것은 이번 포스팅에서 필요 없지..

Android/[Android] 2024.06.29

[Android] Version Catalog

Version Catalog를 사용하는 이유프로젝트 전체에서 사용되는 라이브러리를 중앙에서 관리할 수 있습니다.이는 라이브러리 버전을 일관성 있게 유지하는 데 도움이 됩니다.  예를 들어 클린 아키텍처 구조로 멀티 모듈을 사용하시면서 라이브러리 버전을 각 모듈별로 선언한다면, 라이브러리 버전이 변경될 때마다, 각 모듈의 라이브러리 버전을 변경해야 하는 번거로움이 발생합니다. Version Catalog를 사용하면 이러한 단점을 개선할 수 있습니다.   Version Catalog 생성해당 포스팅에서는 프로젝트 생성시 Version Catalog를 생성하여 진행하겠습니다. (작성일 기준 가장 최근 버전인 Koala는 프로젝트 생성시 디폴트로 Version Catalog가 적용됩니다!)  프로젝트를 생성하면..

[Android] Room : openHelperFactory & 암호화 DB

openHelperFactory는 Android에서 데이터베이스를 관리하기 위한 SQLiteOpenHelper 인스턴스를 생성하는 데 사용됩니다.주로 Room 데이터베이스 라이브러리와 함께 사용됩니다.Room은 SQLite 데이터베이스의 추상화 계층으로, 더 쉽고 안전하게 데이터베이스 작업을 수행할 수 있도록 도와줍니다. openHelperFactory의 주요 역할은 데이터베이스를 여는 데 필요한 SQLiteOpenHelper를 제공하는 것입니다.SQLiteOpenHelper는 데이터베이스 생성 및 업그레이드와 같은 작업을 처리합니다. Room 라이브러리에서 openHelperFactory는 데이터베이스 빌더에 전달되어 사용자 정의 SQLiteOpenHelper를 사용할 수 있도록 합니다.  SQLCip..

[Android Annotation] @Keep

@Keep @Keep 어노테이션은 Android 애플리케이션에서 ProGuard나 R8 같은 코드 난독화 도구를 사용할 때 특정 클래스, 메서드, 필드 등을 난독화하지 않도록 지시하는 어노테이션입니다. 언제 사용하면 될까?reflection를 사용하는 경우: 리플렉션을 통해 접근해야 하는 클래스나 메서드, 필드는 난독화되면 안됩니다. ProGuard나 R8이 난독화할 경우, 리플렉션 코드가 올바르게 동작하지 않을 수 있습니다.네이티브 코드와의 상호작용: JNI(Java Native Interface)를 통해 네이티브 코드와 상호작용하는 경우, 해당 네이티브 코드에서 참조하는 Java 메서드나 클래스는 난독화되면 안됩니다.외부 라이브러리와의 상호작용: 외부 라이브러리에서 특정 클래스나 메서드를 직접 호출하..

[Android Studio] 안드로이드 스튜디오 설치

바로 설명 시작하겠습니다. Download Android Studio & App Tools - Android DevelopersAndroid Studio provides app builders with an integrated development environment (IDE) optimized for Android apps. Download Android Studio today.developer.android.com위 링크에 접속하셔서 아래로 스크롤 하시면 다음과 같은 화면이 나타납니다.(Windows 64-bit) android-studio-2022.1.1.19-windows.zip 파일을 설치해 줍니다.  다운로드한 파일을 압축해제 하시고 원하시는 곳에 파일을 넣어주시면..

[Firebase] Authentication - 구글 로그인 간단하게 구현해보기

Firebase에서 제공하는 Authentication에서 구글 로그인을 간단하게 구현해 보았습니다. 우선 Firebase와 안드로이드 프로젝트를 연결해야 합니다!!!  Firebase와 Android 프로젝트 연동하기이번 글에서는 Firebase와 안드로이드 프로젝트를 연동하는 것을 보여드리겠습니다. 1. Firebase 콘솔 접속 https://console.firebase.google.com/?hl=ko 로그인 - Google 계정 이메일 또는 휴대전화 accounts.google.com 2dong-hyeok.tistory.com 1. Firebase에 본인이 만든 프로젝트에 접속하면 화면 좌측에 다음과 같이 확인하실 수 있습니다.     2. Authenticatio..

Android/Firebase 2022.12.25

[Firebase] Android 프로젝트 연동하기

이번 글에서는 Firebase와 안드로이드 프로젝트를 연동하는 것을 보여드리겠습니다. 1. Firebase 콘솔 접속 https://console.firebase.google.com/?hl=ko 로그인 - Google 계정이메일 또는 휴대전화accounts.google.com  2. 프로젝트 생성  3. 안드로이드 프로젝트 선택 중앙에 안드로이드 마커를 선택하시면 됩니다.   4. 정보 입력 패키지 이름은 여러분의 안드로이드 스튜디오에서 확인하실 수 있습니다.  SHA-1값 구하기1. 안드로이드 스튜디오에서 우측 상단 Gradle을 클릭합니다. 2. 만약 1번 그림처럼 Gradle이 열린다면File - Settings - Experimental ..

Android/Firebase 2022.12.25
반응형