전체(112)
-
git rebase 기준 브랜치 / 대상 브랜치
기준 브랜치 : new base branch, 새로운 base가 될 브랜치대상 브랜치 : branch, 명시하지 않으면 현재 브랜치 git merge 기준 브랜치 : 현재 브랜치대상 브랜치 : branch, 병합 대상이 될 브랜치 > git rebase든 merge든 아래 깔리는 브랜치가 기준 브랜치라고 한다. [이슈 상황] 위 내용은 feature 브랜치에서 devleop으로 rebase 하는 경우에 나타나는 conflict 이다.[feature branch] git rebase devleop [이슈 원인]여기서 기준 브랜치는 develop, 대상 브랜치는 feature이기 때문에 저쪽에서 삭제했다는 것은 feature 브랜치에서 삭제가 되었다는 내용이다.여기서 git add . 을 해버리면 de..
2025.06.20 -
Gradle 파일(settings.gradle / build.gradle) 및 사용법 알아보기
Gradle 설치 후 구성된 디렉터리에서 .gradle 확장자를 가진 파일에 대해서 먼저 알아보도록 하겠습니다. 구성되는 .gradle 확장 파일은 settings.gradle(settings.gradle.kts), build.gradle(build.gradle.kts) 이 있습니다.각 파일은 groovy와 kotlin DSL 중 하나의 형태를 골라 구성할 수 있습니다. kotlin DSL로 포스팅을 통해 파일의 사용법을 알아보도록 하겠습니다.settings.gradle / settings.gradle.kts모든 gradle 프로젝트의 진입점이 되는 파일로, 주목적은 root project와 함께 빌드할 subproject를 추가하는 것입니다.그래서 root project만 존재하는 single proj..
2024.03.16 -
Gradle 개념 / 특징 및 Gradlew / 사용법 알아보기
안드로이드 개발 시 IDE에 내장된 Gradle을 사용하면서도 어설프게 알고 있던 내용들을 정리해보려고 합니다.Gradle이 무엇인지 개념부터 Gradlew과의 차이점, 사용법 알아보도록 하겠습니다.Gradle 개념Gradle은 빌드 자동화 도구의 한 종류 입니다. 빌드 자동화 도구에는 여러가지가 있는데요, 종류만 간단히 살펴보면 다음과 같습니다.make : 유닉스 계열 운영체제에서 사용되는 빌드 자동화 도구apache ant : 자바 빌드 자동화 도구maven : 자바 프로젝트 관리 도구(ant 기능 확장)gardle : groovy(자바에 스크립트 언어의 특징을 더한 동적 객체 지향 언어) 이용한 빌드 자동화 시스템apache ant와 maven은 xml 기반으로 구성되어 프로젝트가 방대해지는 경우 ..
2024.03.15 -
[Source Decomposition] NavController 동작과정
BottomNavigationItem( icon = { Icon( painter = painterResource(id = screen.drawableResId), contentDescription = stringResource(screen.stringResId) ) }, label = { Text(stringResource(screen.stringResId)) }, selected = currentDestination?.hierarchy?.any { it.route == screen.route } == true, onClick = { navController.navigate(screen.route) {..
2024.03.12 -
Mediaplayer와 VideoView 관계
VideoView 비디오뷰는 안드로이드 위젯의 하나로 MediaPlayer를 이용한 비디오 파일 관련 구현을 내부에 포함하고 있다. 따라서 단순히 레이아웃에 위젯을 추가하고 비디오 파일을 지정하는 것만으로 쉽게 비디오 파일을 재생할 수 있다. 물론 세부적인 컨트롤을 하려면 뒤에 소개하는 것처럼 MediaPlayer를 직접 사용해야 하지만, 대부분의 경우는 VideoView로 원하는 목적을 달성할 수 있다. 가장 먼저 할 일은 레이아웃에 비디오뷰 위젯을 추가하는 것이다. 다음은 길이는 부모와 같고, 높이는 210dp가 되는 비디오뷰의 예제이다. 다음으로 할 일은 비디오뷰에 재생하기 원하는 비디오 파일을 지정하는 것이다. 예를 들어 프로젝트의 raw 디렉토리에 포함된 sample.mp4를 재생하기 위해서는..
2024.03.12 -
Firebase Performance 서비스 추가 Gradle 설정 과정 참고(전이의존성 해결)
Firebase perf 추가 시 Auth어쩌구 에러 → Firebase BoM 사양에 맞춰 버전 업그레이드 iid랑 messaging 서비슨가 여튼 충돌 → force 구문 주석 처리했다가 버전 업그레이드 AbstractMethodException com.google.android.gms.common.Api$Client → Build.app에 있는 force 구문 google 관련 3개 버전 변경(최신으로) protobuf-lite protobuf-javalite duplicate exception → build.gradle에 configurations{ all*.exclude module:’protobuf-lite’} 추가 Process: kr.co.zumo.app.dev, PID: 3735 java..
2024.03.12