Android Studio 2.0 Preview 가 2015년 11월 24일 새벽에 발표했습니다.
Instant Run
Accelerated build and deployment speeds
Next-generation Emulator
실제 관련된 자세한 영상은 다음 포스팅들을 체크해주세요
주로 새로운 기능을 써보면서 나왔던 현상들을 공유할 목적으로 작성합니다
실제로 여러가지 추가된 기능도 있지만, 바로 볼 수 있는 항목 위주로 적어봤습니다.
코드 및 레이아웃, values 관련 수정시 Application 처음부터 재시작 되지않고 해당 Activity 부터 재시작되어 적용되는 Run 기능입니다.
수정된 부분의 빌드에 대한 개선으로 인해 해당 Activity 만 재실행이 가능하게되어 좀 더 빠르게 테스트 테스트가 가능해진듯 합니다.
Instant Run
을 동작 시키기 위해서는 프로젝트 설정이 다음과 같이 지원해야 합니다
현재 프로젝트가 미지원인 경우 수동으로 작업하셔도 되고
Settings - Build, Execution, Deplyment - Instant Run 항목 진입시 Update Project
로 선택이 가능합니다.
Android Studio 2.0 Preview 에서는 기존 Run 과 달리 기본적으로 Instant Run
이 실행되며 IDE 도구 표시가 아래와 같이 바뀝니다.
변경점
변경 점 : 텍스트 색상
수정 전
<TextView
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_toLeftOf="@+id/status"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItem"
android:background="@drawable/border_gray"
android:textColor="@android:color/white"
android:singleLine="true"
android:textStyle="bold"
tools:text="Title"/>
수정 후
<TextView
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_toLeftOf="@+id/status"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItem"
android:background="@drawable/border_gray"
android:textColor="#FF0"
android:singleLine="true"
android:textStyle="bold"
tools:text="Title"/>
수정 후 캡쳐 화면을 보면 하단에 Applied changes, restarted activity
라고 표시되는데, 아마도 Instant Run
관련으로 Android 내부적으로 표시하도록 작업되어 있는것 같습니다.
코드 수정은 아직 Preview 단계라서 이런 현상이 발생하는지는 모르겠지만, 코드 수정후 Instant Run
을 기대하고 실행하면 별 문제 없이 실행되기도 하지만 주로 다음과 같은 현상이 주로 발생했습니다.
이 현상은 단순하게 알림이지만
Instant Run applied code changes.
You can restart the current activity by clicking here or pressing Ctrl+Shift+R anytime.
You can also configure restarts to happen automatically. (Dismiss, Dismiss All)
코드 수정시에는 Ctrl+Shift+R
을 이용해서 Activity 를 재실행하도록 알려주고 있습니다.
실제로 Run 관련 메뉴에 Restart Activity
라는 항목이 추가 되어있습니다.
아직 Android Studio 2.0 Preview 인 관계상 나타나는 오류 일수도 있지만, 코드 수정시 빈번히 나오는 오류였습니다.
해당 에러가 나오는 경우에는 별 수 없이 올바르게 빌드 후 Application 자체를 재시작해야만 합니다.
Code Change | Instant Run Support |
---|---|
Change instance method implementation | Supported |
Change static method implementation | Supported |
Add or remove a class | Supported |
Add, remove, or change a string resource | Supported but requires an Activity restart. |
정확한 문구 설명은 어렵습니다만, XML 리소스에서 현재 포커스된 위치의 Depth 표시를 간단하게 하고 있었습니다.
Instant Run
으로 코드 및 레이아웃 수정에 대한 체크 속도가 확실히 빠릅니다.Restart Activity
실행시 Applied changes, restarted activity
가 표시되었지만, 수정되지 않은 경우도 발생Instant Run
이 정상 동작!!반나절정도 간단하게 사용했지만, 기존 1.x에 비해서 실행에 대한 퍼포먼스는 확실히 상승한 듯 보였습니다.
체감상 빌드 로직 및 시간이 개선된것 같은(?) 느낌도 듭니다.
에뮬레이터를 좀 테스트해보고 싶었지만, 어떻게 실행해야하는지 찾을 수가 없어서 … 추후에 업데이트 하겠습니다.
comments powered by Disqus
Subscribe to this blog via RSS.
LazyColumn/Row에서 동일한 Key를 사용하면 크래시가 발생하는 이유
Posted on 30 Nov 2024