반응형

Android 7

[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 파일을 설치해 줍니다.  다운로드한 파일을 압축해제 하시고 원하시는 곳에 파일을 넣어주시면..

반응형