안드로이드 앱 개발 시, 다양한 이유로 여러 가지 빌드 변형(build variants)을 만들어야 할 필요가 있습니다. 예를 들어, 개발 중인 버전과 출시 버전을 구분하거나, 다양한 API 엔드포인트를 사용하는 버전을 만들어야 할 때입니다. 안드로이드 스튜디오와 Gradle을 사용하면 이러한 빌드 변형을 쉽게 관리할 수 있습니다. 여기서는 기본적인 빌드 변형 나누는 방법을 안내합니다.1. Build Types 설정하기빌드 타입은 일반적으로 개발(debug)과 출시(release) 두 가지가 기본적으로 설정되어 있습니다. 이를 기반으로 추가적인 설정을 할 수 있습니다.build.gradle 파일에서 android 섹션을 찾아 buildTypes 블록 안에 새로운 빌드 타입을 정의할 수 있습니다.andro..
YoYo 라이브러리는 안드로이드 앱에서 애니메이션을 쉽게 구현할 있게 해 주는 라이브러리입니다. Kotlin을 사용하여 YoYo 라이브러리를 사용하는 방법을 단계별로 설명하겠습니다. 1단계: 프로젝트에 YoYo 라이브러리 추가하기 먼저, YoYo 라이브러리를 프로젝트에 추가해야 합니다. build.gradle 파일 (Module: app)에 다음과 같은 의존성을 추가합니다. dependencies { implementation 'com.daimajia.androidanimations:library:2.4@aar' } 2단계: XML 레이아웃 파일에 애니메이션을 적용할 뷰 추가하기 XML 레이아웃 파일에 애니메이션을 적용할 뷰를 추가합니다. 예를 들어, ImageView에 애니메이션을 적용하려면 다음과 같..
TextClock은 TextView를 상속받아 시간 표시를 해주는 위젯입니다. 기본 정보는 이전에 작성한 포스팅을 참고해주세요. 2023.02.03 - [Android] - [Android] 시간을 표시해주는 TextClock 이번에 개발하다가 TextClock의 Format을 변경해야 했습니다. ex. 오전 10:00 -> 10:00 AM 보통은 앱에서 언어 변경을 할 때 쓰일 것으로 보입니다. 우선 동적으로 버튼을 눌렀을 때 Format을 변경하는 방법은 쉽습니다. btnModify.setOnClickListener { val timeFormat = if (LOCALE_LANGUAGE == Locale.KOREAN) { "a hh:mm" } else { "hh:mm a" } textClock.form..
안드로이드 앱에서 사용자가 직접 앱 내에서 언어를 변경할 수 있게 하려면 앱의 Context를 업데이트하여 새로운 로케일을 설정해야 합니다. 아래는 코틀린을 사용하여 안드로이드 앱에서 언어를 변경하는 방법입니다. fun updateLocale(context: Context, localeToSwitchTo: Locale): ContextWrapper { var context = context val resources = context.resources val configuration = resources.configuration if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { setLocaleForApi24(configuration, localeToSwitc..
하나의 프로젝트에 여러개의 모듈(ex. 라이브러리)이 있는 경우에 모듈이 2~3개라면 크게 차이 없겠지만 모듈 개수가 많을 때 빌드 시간도 불필요하게 오래 걸립니다. 그럴 때 Gradle 명령어를 통해 개별 빌드를 진행하는 방법을 알아보겠습니다. ./gradlew :모듈명:clean :모듈명:assemble Clean Project -> Rebuild Project 를 실행하는 것과 같은 결과입니다. 명령어가 실행되지 않을 경우에 Ctrl + Shift + Enter (debug highlighted command using IDE) 로 실행해보세요.
manifestPlaceholders는 Gradle의 build.gradle 파일에서 AndroidManifest.xml에 값을 동적으로 주입할 수 있게 해줍니다. AndroidManifest.xml에는 android:value="${MY_CUSTOM_VALUE}"와 같은 형태로 placeholder를 사용할 수 있습니다. 이러한 placeholders를 manifestPlaceholders라고 부릅니다. Gradle은 이러한 placeholders를 build.gradle 파일에 지정된 key-value pairs로 대체합니다. android { defaultConfig { // ... manifestPlaceholders = [ MY_CUSTOM_VALUE: "myCustomValue", ANOTHE..
화면에 시간을 표시해주고 싶을 때 예전에는 TextView에 Thread를 사용하여 1초씩 sleep을 걸면서... 했던 기억이 납니다. 하지만 TextClock을 이용하면 너무 쉽습니다. 사용방법은 아주 간단합니다. format은 사용자의 스마트폰이 12시간/24시간을 사용하냐에 따라 어떻게 보여줄 지 설정합니다. yyyy : 년 / MM : 월 / dd : 일 / a : 오전/오후 / hh : 시 / mm : 분 / ss : 초 TextView를 Extends 했기 때문에 textColor 변경 사이즈변경 폰트변경 다 가능합니다! 코드 중간에 속성을 변경하는게 아니라면 따로 코드에서 설정할 것도 없습니다. 시간 표시할 때 꼭 써보세요!
APK파일 앱 서명이 다르면 패키지명 충돌로 인해 설치가 안되는 문제가 있습니다. 따라서, 같은 keystore파일로 빌드를 해야하는데요. 앱 서명을 하지 않은 APK파일은 APK를 만든 사용자나 PC에 따라 패키지명이 충돌하는 경우가 있습니다. 이런 경우는 확인이 안되니 keystore 파일을 이용하여 앱 서명을 하여 사용해야 합니다. 앱 서명은 Signed APK 메뉴를 이용하여 만들면 되고.. 여기서는 앱 서명을 확인하는 방법을 설명하도록 하겠습니다. 먼저 JAVA가 설치된 폴더에서 bin\keytool 파일을 확인합니다. cmd의 해당 경로에서 다음과 같이 입력합니다. keytool -printcert -jarfile [APK 파일 이름]
- Total
- Today
- Yesterday
- 리눅스
- TextClock 언어 변경
- 언어 변환
- CreateProcess error=206
- removeAt
- Gif 로딩
- TextClock
- 스마트폰
- TextClock Format
- Coil 0.10.0
- 앱 서명 확인
- mysql
- 이미지 로딩 라이브러리
- 개별 빌드
- 안드로이드
- Android 앱 서명
- Locale 변경
- Android Studio 에러
- kotlin
- manifestPlaceholders
- java
- keystore 확인
- 데이터베이스
- build variants
- 빌드 변형
- Insert
- Database
- TextClock 상속
- 나중에 들어온 아이템 삭제
- Android
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |