본문 바로가기
5번 프로그래밍/Kotlin, 안드로이드 스튜디오

안드로이드 스튜디오 - Udacity 챕터2, 3장 7절 Exercise Creating and Adding a Fragment 조각 생성 및 추가

by 하늘나는 곰 2021. 6. 23.

챕터 2의 3장 App navigation은 동영상 강의가 친절하지 않다.

 

기본적으로 제공되어 있는 코드를 먼저 입력한 다음 수정을 하는 방향으로

 

수업이 진행된다.

 

본격적인 수업은 7장의 연습부터 실행하는데

 

제공된 코드의 내용과 동영상의 수업내용이 너무 다르다.

 

수업 내용 55초 부분 TitleFragment 라는 것을 처음으로 시도해 보는 장면인데

선생님의 말이 우선 너무 빠르다.

 

전문적인 용어가 나오기 시작하는데 생각할 여유는 없다.

그리고 수업의 화면에서는 저렇게 22줄의 코드만 나오지만,

 

왜인지 모르겠지만 나는 63줄의 코드가 만들어져 있다.

 

도대체 어디부터 손을 대야하는지 전혀 모르는 상황에

전부 다 지우는 것이 겁이나서 우선 주석처리를 전부 다 해주었다.

 

일단 따라 한다는 심정으로 적당한 선까지는 따라 갈 수 있었으나

결국은 역시 마지막 부분에서 또 사고가 일어났다.

 

수업에서는 자연스럽게 앱을 실행하였을때 왼쪽 구석과 같이 무언가가 뜨는 것을 알 수 있지만

나는 실행이 되지 않는다.

 

한번 더 말하지만 이 수업은 기본적으로 만들어져 있는 것을

우선 사용을 하고 있기 때문에 중간중간에 어디서 에러가 발생했는지 알 수없다.

 

그냥 맨땅에 헤딩으로 똑같이 움직여도 위와 같이 에러가 발생하는 것이다.

 

이번에는 무언가플러그인 같은 문제가 발생한 것 같다.

 

https://developer.android.com/jetpack/androidx/releases/navigation?hl=ko 

 

Navigation  |  Android 개발자  |  Android Developers

Navigation Navigation은 Android 애플리케이션 내에서 '대상' 사이를 탐색하는 프레임워크로, 대상이 Fragment, Activity 또는 기타 구성요소로 구현되었는지에 관계없이 일관된 API를 제공합니다. 최근 업데

developer.android.com

연결 되어있는 주소는 일단 이곳이고 navigation 이야기를 하는 것을 보면

맞게 찾아 온 것은 같은데

당연한 이야기 이지만 이 개발자 페이지를 또 어떻게 쓰는지 알리가 없다.

 

무언가 이것저것 적용하라고 한다.

뭔지 모르겠지만 일단 적용을 그대로 한번 해보자.

 

먼저 종속 항목 선언

 

build.gradle -> dependencies 쪽을 보면 좌우가 전혀 다른 것을 알 수 있다.

 

자 그럼 여기서 선택을 또 해야한다.

왼쪽 것을 싸그리 지우고 오른쪽으로 치환을 하느냐

단순히 내용만 추가 하는가?

 

다른 때 같으면 주석처리를 하고 테스트를 해보겠으나,

build.gradle 쪽은 잘못 지웠다가 꺼질까봐 수정을 잘 못하겠으니

그대로 복붙으로 붙여넣기를 해주자.

 

붉은색 밑줄이 생기거나 불편해 보이는 다른 현상은 느껴지지 않는다.

적용까지 아무 문제가 없다.

 

적용을 했더니 무언가 에러가 엄청나게 발생한 것같다.

 

방법을 바꿔서 기존 것은 주석처리 => 치환 작전으로 해보자.

 

아무리 해도 여기서 진도가 나가지 않습니다.

 

 

위 문제점은 플러그인 업데이트를 하면서 발생하는 것을 확인 했습니다.

 

압축파일을 쓰던 깃허브에서 다운을 받던

현재 최신버전의 안드로이드 스튜디오에서 실행을 하게되면

하단에 플러그인 업데이트 정보가 뜰것입니다.

 

내용은 대충 업그레이드를 하라고 하는데 문제가 여기서 업그레이드를 하면

진행이 되지 않습니다.

 

플러그인 업데이트를 하지 않은 상태에서 그대로 진행을 해보겠습니다.

 

여기까지는 문제 없습니다.

 

두번째도 크게 에러는 발생하지 않습니다.

 

단 주의 할점은 오타가 많이 발생 할 수 있습니다.

 

<fragment
android:id="@+id/titleFragment"
android:name="com.example.android.navigation.TitleFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

 

저는 여기서 /> 부분을 놓쳐서 몇번씩 오타가 나는 것을 확인했습니다.

 

다시 동영상 강의처럼 실행을 해주도록합시다.

이상이 없이 실행이 되는 것을 알 수 있습니다.

 

전체적으로 2-3 강의는 설명 자체가 너무 적어서 뭘하고 있는지

이해를 할 수 없는 것 같습니다.

 

일단 강의를 계속 진행해 보도록하겠습니다.

 

플러그인 업데이트를 해서 어떻게든 해보려고 했으나

 

4시간 정도 붙잡고 이것 저것을 해보아도 에러만 발생하고 있어

방향성을 못잡고 있습니다.

 

일단 되는데로 진행을 해보려고 합니다.

플러그인 업데이트 후에서 방법을 찾으신 분은 설명을 좀 부탁드립니다.

 

플러그인 업데이트 후에 뜨는 에러는

android.arch.navigation : navigation-fragment-ktx:2.3.0

android.arch.navigation : navigation-ui-ktx:2.3.0

두가지 입니다.

댓글