일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DataBinding
- 앱개발
- 목서버
- 쿼터뷰
- 카페오냥
- 서브모듈 sourcetree
- 서브모듈 pull
- 코틀린
- github
- 안드로이이드 submodule
- 게임개발
- 개발
- GIT
- Unity
- 앱
- Android
- firebase
- Android Studio
- 유니티
- submodule sourcetree
- Kotlin
- 2d게임
- 안드로이드
- gitlab submodule
- 내 맘대로 정리한 안드로이드
- java
- 안드로이드개발
- 타이쿤
- github submodule
- 티스토리
- Today
- Total
목록Android (45)
Uing? Uing!!
앞단 개발자의 기다림앱 개발자에게 서버 API를 기다리는 시간은 필연적이다. 이 기다림은 개발 전, 개발 중, 심지어 개발이 끝난 후에도 발생한다.기획이 완료되고, 디자인이 완성되고, 서버 API까지 완벽히 준비된 후에 앱 개발이 진행된다면 모든 것이 간단해지겠지만... 현실적으로 이런 상황은 드물다.서버와 앱 개발은 대부분 동시에 진행되기 때문에, 앞단 개발자들은 대개 이 시간을 효율적으로 활용할 방법을 찾는다.Mock Server 의 가치서버 API가 완성되기 전에 클라이언트 개발을 원활하게 하기 위해 많은 개발자들이 다음과 같은 방법들을 활용한다. 더미 API 요청: 서버에서 간단한 더미 API를 제공받아 테스트.더미 데이터 하드코딩: 앱 내부에서 가상의 데이터를 직접 생성해 사용.유닛 테스트 작성..
발단 요즈음 Compose를 도입하고 있는데, 앱에 그동안 안드로이드 뷰로만 사용하던 드랍다운 메뉴를 컴포즈로 새롭게 구현해 넣을 일이 생겼다. 아래는 문제가 되었던 DropDownMenu 구현의 예시이다. (실제 사용한 코드와는 다른데, 글의 가독성을 위해 최대한 단순화시켰다) @Composable fun DropdownMenuExample() { Box(modifier = Modifier.fillMaxWidth().wrapContentSize(Alignment.TopEnd)) { var popupVisible by remember { mutableStateOf(false) } IconButton(onClick = { popupVisible = popupVisible.not() }) { Icon(ima..
SHA1, SHA-256 확인법 안드로이드 스튜디오 우측 Gradle 목록에서, app > android > signingReport를 찾아 더블클릭하면, 아래처럼 SHA1과 SHA-256 인증키를 하단 run탭에 출력시킬 수 있다. Gradle Task 목록에 signingReport가 보이지 않을 때 해결법 최근 위와 같이 Task list not built... 라는 메시지만 나오고 signingReport가 갑자기 나오지 않은 적이 있는데 해결법은 간단했다. 일단 저기 있는 Task list not built...를 누르면 아래 창이 뜬다. 여기에서 Configure all Gradle tasks during Gradle Sync (this can make Gradle Sync slower) 의 ..
안드로이드 스튜디오에서 파일 편집을 하다가, 왼쪽 탐색기에서 지금 보고 있는 파일의 경로를 찾고 싶을 때가 있다. 프로젝트 > 앱 > 패키지 > 내부 패키지 > ... > 파일 의 경로를 직접 찾아 들어가기란 정말 귀찮은 일이다. 이번 포스팅에서는 탐색기에서 현재 편집 중인 파일에 즉시 접근할 수 있는 두 가지 방법을 소개한다. Select Opened File (Alt+F1, 1) : 편집 중인 파일 바로 접근하기 왼쪽 탐색기 탭의 오른쪽 위 아이콘 중, 조준점 같이 생긴 아이콘이 있다. 이 아이콘을 클릭하면 바로 좌측 탐색기에서 현재 보고 있는 파일을 열어 준다. Always Select Opened File : 편집 중인 파일 항상 접근하기 좌측 탐색기 탭의 설정 버튼을 클릭하면, Always Se..
반복되는 레이아웃 하나의 앱에는 자주 재사용되는 레이아웃이 있는 경우가 많다. 예를 들면, 거의 비슷하게 툴바가 앱 전역에 걸쳐 사용되고 있을 수 있다. 같은 툴바가 FirstActivity와 SecondActivity에 사용되는 경우를 살펴보자. 각 액티비티의 레이아웃은 이런 식으로 생성될 것이다. 이 예시에서는 화면이 Frist Activity와 Second Activity 두 개밖에 없지만, 같은 타이틀 바가 100여개의 화면에 적용되어야 한다면 어떨까. 모든 화면마다 툴바에 해당하는 이 부분이 추가되어야 할 것이다. 이렇듯 반복되는 레이아웃을 재활용할 수 있도록 만들어진 것이 include 태그이다. 태그 include 태그는 한 번 작성한 레이아웃의 일부를 여기저기에서 가져다 쓸 수 있도록 해 ..
데이터바인딩(databinding) 데이터바인딩을 활용하면 레이아웃에서 변수를 정의하고 활용할 수 있다. 데이터바인딩에 대한 포스팅은 별도로 작성 예정이지만, 간단히 데이터바인딩을 활용하는 예시는 이렇다. class MainActivity: AppCompatActivity() { private var _binding: ActivityFirstBinding? = null private val binding: ActivityFirstBinding get() = _binding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) _binding = DataBindingUtil.setContentView(t..
발단 잘 빌드되던 프로젝트가 갑자기 이런 메시지를 띄우면서 빌드되지 않았다. The Hilt Android Gradle plugin is applied but no com.google.dagger:hilt-android-compiler dependency was found. andorid-compiler 디펜던시는 build.gradle에 확실하게 잘 적용되어 있는데도 계속 빌드되지 않았다. 삽질 구글링을 해보며 여러 가지 나오는 방법들을 적용해 보았다. clean-rebuild도 해 보고, invalidate cache & restart도 해 보고, kapt를 annotationProcessor로 바꿔도 보고. 다 잘 돌아가지 않았는데, 딱 한 가지 방법이 잘 동작했다. 정확히 어떤 글에서 봤던 해결법..
나 혼자 개발한다면 git 히스토리를 살펴볼 일이 별로 없다. 하지만 다른 개발자와 한 팀으로 일한다면 현재 내가 보고 있는 코드가 어떻게 나온 코드인지 이해하기 위해 히스토리가 필요한 상황이 생긴다. 그렇다고 git 커밋 기록을 일일이 뒤져볼 수는 없는 일이다. 안드로이드가 제공하는 기능 두 가지, Annotate와 Git History를 사용하면 과거에 이 코드가 누구에 의해 어떻게 변화되어 왔는지를 확인할 수 있어 코드 이해도를 높여 준다. Annotate 안드로이드 스튜디오의 Annotate 기능은 지금 보고 있는 파일의 각 라인에 해당하는 마지막 커밋과 커밋을 진행한 사람을 보여 준다. 사용 방법은 간단하다. 1) 원하는 파일을 열어둔 후 shift를 두번 연속 눌러 검색기를 켠다. 2) ann..