최근 지원 라이브러리 버전

이 페이지에서는 최신 지원 라이브러리 패키지 출시에 관한 세부정보를 제공합니다. 이전 출시의 경우에는 지원 라이브러리 버전 보관 파일을 참조하세요.

버전 28.0.0 프로덕션

(2018년 9월 21일)

지원 라이브러리 28.0.0의 안정화 버전이며 프로덕션에 적합합니다. android.support 패키지에 따른 마지막 기능 출시로 개발자는 AndroidX로 이전하는 것이 좋습니다.

새로운 기능

  • AnimatedStateListDrawableCompat을 통해 애니메이션 효과를 적용한 채로 드로어블 상태 간 전환이 가능합니다.
  • VectorDrawableCompat으로 그라데이션과 ColorStateList 채우기 및 획을 지원합니다.

버전 28.0.0 RC 2

(2018년 8월 27일)

이번 지원 라이브러리 출시 버전은 기능 면에서 완전하고 API의 공개 부분이 안정적이라고 판단됩니다. 이번 출시 버전은 심각한 문제가 발생하지 않는다는 전제하에 최종 안정화 버전으로 제공됩니다. 이번 버전은 프로덕션 환경에서 안전하게 사용할 수 있습니다. 문제가 발생할 경우 공개 Issue Tracker에 보고해 주세요.

해결된 문제

  • Proguard에서 View Model Application 생성자 삭제(공개 문제 112230489)
  • 'AnimatedStateListDrawableCompat' 상태 지속 문제 수정
  • mediarouter 1.0.0에서 media2 종속성 삭제
  • 홈 버튼을 누를 때 'Fragment.getViewLifecycleOwner()'가 중단되지 않습니다(공개 문제 113070421)([공개 문제 113070421](https://issuetracker.google.com/issues/113070421))

버전 28.0.0 RC 1

(2018년 8월 6일)

이번 지원 라이브러리 출시 버전은 기능 면에서 완전하고 API의 공개 부분이 안정적이라고 판단됩니다. 이번 출시 버전은 심각한 문제가 발생하지 않는다는 전제하에 최종 안정화 버전으로 제공됩니다. 이번 버전은 프로덕션 환경에서 안전하게 사용할 수 있습니다. 문제가 발생할 경우 공개 Issue Tracker에 보고해 주세요.

참고: media2와 같은 일부 라이브러리의 경우 API 표면이 아직 완료되지 않아서 알파 단계로 유지됩니다. 프로덕션에서는 알파 라이브러리를 사용하지 않는 것이 좋습니다. API 표면이 소스 및 바이너리에서 호환되지 않는 방식으로 변경될 수 있으므로 라이브러리는 프로덕션에서 알파 라이브러리에 의존하지 않아야 합니다.

해결된 문제

  • BottomNavigationView 메뉴가 디자인 지원 라이브러리에서 올바르게 초기화되지 않습니다.
  • PositionalDataSource가 데이터베이스에 사전 보류된 항목 삽입을 올바르게 처리하지 않습니다.
  • 슬라이더가 품질이 나쁘고 응답하지 않습니다.
  • 'SlicesProviderCompat.getPinnedSpecs()'가 사용자 ID를 URI에 추가하지 않습니다.
  • RoutePlayer2: 원격 재생이 로컬 재생으로 다시 전환되지 않습니다.
  • 캐시된 슬라이스 파싱이 작업 중에 비정상 종료합니다.
  • Google 검색 앱이 정적 슬라이스 렌더링 중에 비정상 종료됩니다.
  • 선택을 삭제하여 데이터 세트가 변경된 경우 RecyclerView 선택 라이브러리에서 ConcurrentModificationException이 발생합니다.
  • PreferenceThemeOverlay가 최신 머티리얼 테마로 업데이트되었습니다. 맞춤 테마를 제공하지 않은 경우 PreferenceThemeOverlay가 기본 테마로 사용됩니다.
  • PreferenceThemeOverlay.v14 및 PreferenceThemeOverlay.v14.머티리얼 테마가 지원 중단되고 대신 PreferenceThemeOverlay를 사용합니다.
  • PreferenceGroup 공개 상태가 이제 하위 요소와 연결됩니다. 또한 상위 그룹을 숨기면 하위 요소가 계층 구조에 표시되지 않습니다. Preference.isShown()을 사용하여 환경설정이 계층 구조에서 사용자에게 실제로 표시되는지 여부를 확인합니다.
  • Preference.onSetInitialValue(boolean, Object)는 더 이상 사용되지 않고 onSetInitialValue(Object)로 대체되었습니다. 또한 PreferenceDataStore는 이제 기본값을 올바르게 복원합니다.

버전 28.0.0 베타 1

(2018년 7월)

이번 지원 라이브러리 출시 버전은 심각한 문제가 발생하지 않는다면 기능 면에서 완전하고 API의 공개 부분이 안정적이라고 판단됩니다. 이번 출시 버전은 프로덕션 환경에서 안전하게 사용할 수 있지만 버그를 포함할 수 있습니다. 문제가 발생할 경우 공개 Issue Tracker에 보고해 주세요.

해결된 문제

  • 선택 불가능한 항목에서 GestureSelectionHelper가 이벤트 소모
  • 슬라이더 값을 업데이트 중일 때 슬라이더 슬라이스의 엄지 아이콘이 중복될 수 있음
  • IconCompat의 TYPE_URI 아이콘 손상
  • 탐색 막대를 사용하여 환경 설정 비정상 종료
  • Slice.toString() 비정상 종료
  • OffsettingListUpdateCallback.onMoved()가 mCallback.onMoved() 대신 mCallback.onRemoved() 호출(문제 110711937)

버전 27.1.1

(2018년 4월)

해결된 문제

  • AsyncListDiffer가 getChangePayload를 호출하지 않음(AOSP 문제 73961809)
  • Fragment ViewModel의 onCleared가 호출되지 않음(AOSP 문제 74139250)
  • 어댑터가 null인 경우에도 RecyclerView.setRecycledViewPool()가 attachCount를 증가시킴
  • SmoothScroller.onStop에서 stop() 또는 startSmoothScroller()를 호출하는 경우 RecyclerView NPE
  • 프래그먼트 교체 트랜잭션으로 인해 새 프래그먼트가 표시된 후 이전 프래그먼트가 깜박임(AOSP 문제 74051124)
  • 27.1.0의 로더 콜백 브레이킹 체인지(AOSP 문제 74135998)
  • 세로 그리드 뷰 세트 열 >1인 경우 RTL 레이아웃이 작동하지 않음
  • FragmentPagerAdapter를 사용하는 경우 ViewPager에서 onLoadFinished가 여러 번 호출됨
  • AsyncListDiffer가 현재 목록을 설정한 후 업데이트를 전달해야 함(AOSP 문제 74003309)
  • 27.1.0에서 ShareActionProvider로 인해 ClassCastException이 발생함
  • ViewPager를 사용하는 경우 프래그먼트 수명 주기가 변경됨(AOSP 문제 73976255)

버전 28.0.0 알파 1

(2018년 3월)

참고: 28.0.0-alpha1은 Android P 개발자 미리보기를 지원하기 위한 출시 전 버전입니다. API 노출 영역은 변경될 수 있으며 지원 라이브러리의 안정적인 최신 버전의 기능이나 버그 수정이 포함되지 않을 수도 있습니다. P 개발자 미리보기에 관한 자세한 내용은 출시 노트를 참조하세요.

중요 변경사항

  • 이전에 Android KTX 공지에서 언급했듯이 Google은 계속해서 전체 라이브러리에서 androidx 패키지 프리픽스를 채택하고 있습니다. heifwriter, recyclerview-selection 등 새로운 라이브러리는 이 새로운 패키지에서부터 선택됩니다. android.*androidx.*을 나눔으로써 플랫폼과 번들되는 API 및 다양한 Android 버전에서 작동하는 앱 개발자용 정적 라이브러리를 더 명확하게 알 수 있게 되기를 바랍니다.
  • support-core-ui, support-core-utils 및 support-compat의 일부를 더 작은 라이브러리로 분할했습니다. 이 변경사항은 향후 지원 라이브러리 종속성을 없애는 데 도움이 됩니다. 이제 다음과 같은 새로운 라이브러리를 사용할 수 있습니다.
    • asynclayoutinflater(support-core-ui에서 가져옴)
    • collections(support-compat에서 가져옴)
    • coordinatorlayout(design에서 가져옴)
    • cursoradapter(support-core-ui에서 가져옴)
    • customview(support-core-ui에서 가져옴)
    • documentfile(support-core-utils에서 가져옴)
    • drawerlayout(support-core-ui에서 가져옴)
    • interpolator(support-core-ui에서 가져옴)
    • loader(support-fragments 및 core-utils에서 가져옴)
    • localbroadcastmanager(support-core-utils에서 가져옴)
    • print(support-core-utils에서 가져옴)
    • slidingpanelayout(support-core-ui에서 가져옴)
    • swiperefreshlayout(support-core-ui에서 가져옴)
    • viewpager(support-core-ui에서 가져옴)

새로운 API

  • recyclerview-selectionRecyclerView에 항목 선택 지원 기능을 제공합니다. 패키지는 다음과 같은 기능을 제공합니다.
    • RecyclerView 목록에서 선택된 항목 집합의 변경사항 생성, 수정, 검사 및 모니터링 지원
    • 직관적인 다중 선택 작업 지원:
      • 터치 방식 선택 기능을 사용하면 직관적인 길게 누른 후 드래그 동작으로 여러 범위의 항목을 선택할 수 있습니다.
      • 마우스 기반 밴드 선택 기능을 사용하면 기존의 마우스 포인터 대역/올가미 동작으로 RecyclerView 목록에서 항목의 블록을 선택할 수 있습니다.
    • 휴대폰과 터치 지원 노트북 폼 팩터 등 터치 중심 기기 및 포인터 중심 기기 지원
  • HEIF Writer는 HEIF 형식의 정지 이미지 작성 지원 기능을 제공합니다.
  • 디자인 라이브러리
    • 새로운 애플리케이션 테마 Theme.MaterialComponents가 구성요소의 새로운 속성 및 업데이트된 스타일과 함께 도입되었습니다.
    • 다음과 같은 구성요소가 추가되었습니다.
      • BottomAppBar
      • Chip
      • ChipGroup
      • MaterialButton
      • MaterialCardView
  • 슬라이스는 앱에 다른 앱의 템플릿 콘텐츠를 삽입할 수 있는 프레임워크를 제공합니다.
    • slice-builders에는 템플릿 형식으로 콘텐츠를 만들 수 있는 메서드가 포함됩니다.
    • slices-view에는 이러한 콘텐츠를 표시할 수 있는 메서드가 포함됩니다.
  • 브라우저 액션은 앱 개발자가 URL을 위해 일관된(단 맞춤설정할 수 있는) 컨텍스트 메뉴를 시작할 수 있는 프로토콜을 제공합니다. 이 기능은 브라우저 작업 지원 기능을 구현하는 브라우저 앱(예: Chrome. Chrome에서는 이 기능이 아직 개발 중임)에서 사용할 수 있습니다.
  • ContextCompat.getSystemService()getSystemServiceName()을 사용하면 모든 API 레벨에서 시스템 서비스를 유형별로 조회할 수 있습니다.

버그 수정

  • Fragment ViewModel의 onCleared가 호출되지 않음(AOSP 문제 74139250)
  • FragmentPagerAdapter를 사용하는 경우 ViewPager에서 onLoadFinished가 여러 번 호출됨(AOSP 문제 74182171)
  • RecyclerView의 LinearLayoutManager'의 smoothScrollToPosition()이 특정 상황에서 불규칙적인(앞뒤로) 움직임을 표시함(AOSP 문제 71567765)

버전 27.1.0 출시

(2018년 2월)

중요 변경사항

  • 로더의 기본 구현이 수명 주기를 사용하도록 재작성되었습니다. API는 변경되지 않지만 다음과 같은 여러 가지 동작 변경사항이 있습니다.
    • 이제 기본 스레드에서만 initLoader(), restartLoader(), destroyLoader()를 호출할 수 있습니다.
    • 이제 로더의 onStartLoading()onStopLoading()이 포함된 FragmentActivity/Fragment가 각각 시작하고 중지할 때 호출됩니다.
    • onLoadFinished()onStart()onStop 사이에서만 호출됩니다. 따라서 이제 onLoadFinished() 시 Fragment 트랜잭션을 안전하게 실행할 수 있습니다.
    • 이제 로더와 관련된 FragmentController 메서드는 더 이상 사용되지 않습니다.
  • DialogFragment의 getDialog()는 이제 onDestroyView()까지 null이 아니고 대신 dismiss() 시 null이 됩니다. 이제 getDialog().isShowing()이 false를 반환하는지 확인하여 onStop() 시 대화상자가 수동으로 닫혔는지 확인할 수 있습니다.

새로운 API

  • RecyclerViewListAdapterAsyncListDiffer와 함께 사용하면 백그라운드 스레드에서 목록 차이를 더 쉽게 계산할 수 있습니다. 따라서 RecyclerView가 UI 스레드에서의 작업을 최소화하고 콘텐츠 변경사항을 자동으로 애니메이션 처리할 수 있습니다. 내부적으로 DiffUtil이 사용됩니다.
  • SortedList.ReplaceAll을 사용하면 삽입, 삭제, 변경 이동에 적절한 애니메이션을 실행하는 SortedList의 모든 데이터를 업데이트할 수 있습니다(이동은 삭제 후 삽입으로 처리됩니다).
  • FragmentActivity 및 Fragment가 이제 ViewModelStoreOwner를 구현하며 ViewModelProviders.of()를 사용하는 대신 ViewModelProvider 생성자와 함께 사용할 수 있습니다.
  • 프래그먼트에 이제 동등한 get 메서드의 NonNull 객체를 반환하거나 IllegalStateException을 발생시키는 requireContext(), requireActivity(), requireHost(), requireFragmentManager() 메서드가 있습니다.
  • findViewById()@NonNull compat 버전인 requireViewById()가 타겟을 찾을 수 없을 때 IllegalArgumentException을 발생시키는 WindowCompat, ActivityCompat, ViewCompat에 추가되었습니다.
  • LoaderCallbacks 메서드에 이제 적절한 @Nullable@NonNull 주석이 있습니다.
  • FileProvider가 이제 새로운 <external-media-path> 요소를 통해 API 21 이상 기기에서 getExternalMediaDirs()를 지원합니다.

버그 수정

  • ViewPager 내에서 onCreate 시 로더를 초기화하는 프래그먼트의 수명 주기가 중단됨
  • onLoadFinished 시 LoaderManager가 IllegalStateException을 발생시킴
  • onCleared 시 LoaderViewModel이 로더를 지우지 않음
  • android.arch.lifecycle.ViewModelStoreOwner의 클래스 파일을 찾을 수 없음
  • dismiss() 직후 DialogFragment onDismiss가 호출되지 않음
  • 다운로드 가능한 글꼴을 사용할 때 출시 키 기기에서 국가 플래그 이모티콘이 작동하지 않음
  • 환경설정 라이브러리가 이전 버전의 Android에서 작동하지 않는 속성을 사용함
  • MediaCompat의 testlib 아티팩트 유형이 잘못 문서화됨(AOSP 문제 71559905)
  • TypefaceCompatUtil에서 Google Sans 비정상 종료
  • 컬렉션을 사용하는 ArraySet 생성자 노출
  • updateApi가 보존해야 하는 .ignore 파일을 삭제함
  • BrowseFragment에서 중복된 MainFragments가 생성됨
  • CarRecyclerView에서 리플렉션 사용 삭제
  • FragmentManagerImpl.checkStateLoss에서 java.lang.IllegalStateException 발생
  • android.support.v4.content.PermissionChecker.checkSelfPermission을 사용하는 경우 (문서화되지 않은) java.lang.SecurityException 발생
  • setAdapter에서 State.mPreviousLayoutItemCount가 지워지지 않아 RecyclerView IndexOutOfBoundsException 발생(AOSP 문제 37657125)
  • ViewPager 내에서 onCreate 시 로더를 초기화하는 프래그먼트의 수명 주기가 중단됨 (AOSP 문제 34831613)
  • FragmentManagerImpl.execSingleAction이 비정상 종료됨

버전 27.0.2 출시

(2017년 11월)

버그 수정

  • EmojiEditTextHelperNullPointerException을 발생시킴
  • IllegalStateException: 프래그먼트가 아직 첨부되지 않음
  • 화면의 아무 곳이나 탭하여 '전송' 아이콘 팝업을 닫을 수 없음
  • MediaMetadataCompatBadParcelableException을 발생시킴

버전 27.0.1 출시

(2017년 11월)

버그 수정

  • startActivityForResult()가 호출된 후 LifecycleRegistry의 상태가 잘못됨 (문제 65665621)
  • 이전 API 레벨에서 사용 중지된 버튼의 색상이 너무 밝음
  • 사용자가 스크롤한 후 RecyclerView의 항목을 클릭할 수 없음 (AOSP 문제 66996774)
  • 음성 안내 지원에서 추가 옵션을 클릭해도 시스템에서 새 팝업을 알리거나 새 옵션에 포커스를 추가하지 않음

버전 27.0.0 출시

(2017년 10월)

API 차이점

API 변경사항

  • Null 허용 여부 주석이 다음을 포함하여 다양한 API에 추가되었습니다. 이에 따라 null 허용 여부 유형이 제대로 처리되지 않을 경우 Kotlin 컴파일 오류가 발생할 수 있습니다.
  • Fragment에서 공유 요소 전환 등 프래그먼트 전환에 Transition의 지원 라이브러리 버전을 사용할 수 있습니다.
  • 콘텐츠 페이징 라이브러리(android.support.content.ContentPager)가 ContentProvider를 통해 노출된 페이지 콘텐츠 지원 기능을 제공합니다. 이 라이브러리를 사용하면 클라이언트가 UI 스레드에서 많은 비용이 드는 프로세스 간 '커서 창 스왑'을 사용하지 않고 Android 8.0 기능을 위한 호환성 라이브러리를 제공할 수 있습니다.
  • ViewCompat이 이제 getImportantForAutofill(), isImportantForAutofill(), setAutofillHints(), setImportantForAutofill() 등 자동 완성 메서드용 래퍼를 추가합니다.
  • Leanback에 새로운 기능과 개선된 기능이 추가되고 지원 중단된 클래스가 삭제되었습니다.
    • Picker에서 이제 setSeparators() 메서드를 사용하여 각 열 사이에 여러 구분 기호를 사용할 수 있습니다.
    • ArrayObjectAdapterDiffUtil에서 제공하는 출력을 사용할 수 있도록 DiffCallback이 추가되었습니다.
    • 가변 컨트롤이 있는 미디어 플레이어를 지원하기 위한 인프라가 추가되어 빨리 감기, 반복, 셔플, 다음, 이전, 되감기를 위한 선택적 컨트롤이 추가되었습니다.
    • MediaControllerGlue, PlaybackControlGlue, PlaybackControlSupportGlue, PlaybackOverlayFragment가 삭제되었습니다.
  • 테스트를 위해 PollingCheck 유틸리티가 AOSP CTS에서 포팅됩니다. 이 유틸리티는 제한 시간 내에 조건이 발생하는지 폴링합니다.
  • PermissionCompatDelegate을 사용하여 Android 5.0용 인스턴트 앱에서 런타임 권한을 지원하기 위해 인프라가 추가되었습니다.
  • 이제 신뢰할 수 있는 맞춤 탭이 애플리케이션과 원래 URI 간의 관계를 정의할 수 있는 기능과 함께 지원됩니다.
  • AmbientMode 헤드리스 프래그먼트를 사용하여 Android Wear 대기 모드가 더 간편하게 지원되며 아키텍처 구성요소 사용과 호환되는 대기 모드도 지원됩니다.
  • Wear팀에서는 이 중요한 변경사항에 대한 개발자 의견을 받고 있습니다. 자세한 내용은 Android Wear 출시 노트를 참조하세요.
  • V14 이전 API가 지원 중단됨에 따라 android.support.v7.NotificationCompat(v4 NotificationCompat을 대신 사용), KeyEventCompat, ParallelExecutorCompat, SearchViewCompat 등 지원 중단된 클래스가 삭제되었습니다.
  • 이제 이전된 Wear manifest 메타데이터 상수를 모두 android.support.wear.utils.MetadataConstants를 통해 사용할 수 있습니다.
  • 이제 WearableActivity만이 아니라 모든 활동에 대기 모드 지원 기능을 사용할 수 있습니다. 자세한 내용은 AmbientMode 참조를 참조하세요.
  • RoundedDrawable이 이제 XML 인플레이션을 지원합니다.

버그 수정

  • 지원 라이브러리 27 및 다운로드 가능한 글꼴로 사용할 경우 애플리케이션이 비정상 종료됨
  • SDK를 업데이트한 후 생성된 새 프로젝트에서 다운로드 가능한 글꼴이 작동하지 않음
  • 최신 업그레이드에서 SpeechRecognizer API가 손상됨
  • 애니메이션 뷰를 삭제한 후 그리는 동안 프래그먼트 관련 비정상 종료
  • support-leanback-demos 미디어 재생이 모두 손상됨
  • Android 지원 라이브러리가 <meta-data>를 manifest에 추가함
  • FontResourcesParserCompat이 android: attrs를 이해해야 함
  • Leanback Glue가 Pause 입력 키를 지원하지 않음
  • 여러 패키지가 동일한 아티팩트 ID를 공유하는 경우 IDE에 해결되지 않은 기호가 있음
  • CarExtender의 null 포인터 예외
  • MediaController를 만든 후 잘못된 셔플/반복 모드에서 PlaybackState를 설정함
  • 이동하는 동안 라이브러리 클러스터 기본 포스터가 다음 클러스터로 계속됨
  • 추천 카드 메타데이터가 잘림
  • RecyclerView.attachViewToParent()에서 IllegalArgumentException 발생
  • SavedState를 언마셜링할 때 ClassNotFoundException 발생(AOSP 문제 37133281)
  • RecyclerView에서 포커스 멈춤
  • Leanback LayoutManager에서 ANR 수정

버전 26.1.0 출시

(2017년 9월)

지원 라이브러리를 아키텍처 구성요소Lifecycles와 통합하기 위한 특별 출시입니다. Lifecycles 라이브러리를 사용하지 않는 경우 26.0.2에서 업데이트 할 필요가 없습니다. 자세한 내용은 아키텍처 구성 요소 출시 노트를 참조하세요.

중요 변경사항

버전 26.0.2 출시

(2017년 8월)

버그 수정

  • 지원 라이브러리 26.0.0에서 메뉴 아이콘이 평평해짐
  • GuidedAction.multilineDescription이 Leanback에서 제대로 작동하지 않음

버전 26.0.1 출시

(2017년 8월)

버그 수정

  • FontCompat 26.0.0이 O-MR1 기기에서 비정상 종료됨
  • 26.0.0 디자인 지원 라이브러리에 multidex 지원 기능을 포함해서는 안 됨(문제 63999442))
  • 26.0.0 이후 AppBarLayout의 왼쪽 패딩이 300픽셀임
  • PlaybackTransportControl 이동 기능이 손상됨
  • onCreate가 종료되기 전에 Fragment.onCreateView가 호출됨
  • android.support.v4.media.MediaMetadataCompat을 언마셜링할 때 android.BadParcelableException: ClassNotFoundException 발생

버전 26.0.0 출시

(2017년 7월)

중요: 지원 라이브러리는 이제 Google의 Maven 저장소를 통해서 사용할 수 있습니다. SDK Manager에서 지원 저장소를 다운로드할 필요가 없습니다. 자세한 내용은 지원 라이브러리 설정을 참조하세요.

중요 변경사항

  • 최소 SDK 버전이 14로 변경되었습니다. 따라서 버전 14 이전 API 레벨과의 호환성을 위해서만 존재했던 많은 API가 지원 중단되었습니다. 이러한 API의 클라이언트는 지원 중단된 각 API의 참조 페이지에 설명된 대로 동등한 프레임워크로 이전해야 합니다.
  • Wear UI 라이브러리에 Wear 기기에서 작동하는 패턴 및 레이아웃을 구현하는 데 도움이 되는 클래스가 포함됩니다. 자세한 내용은 Wear UI 라이브러리 사용을 참조하세요.
  • 퍼센트 지원 모듈은 지원 중단되었습니다. 이 모듈의 클라이언트 SDK Manager에서 별도의 아티팩트로 제공되는 새로운 ConstraintLayout 위젯으로 이전해야 합니다.
  • android.support.v7.app.NotificationCompat 및 이에 포함되는 클래스가 지원 중단되었으며 향후 출시에서 삭제될 예정입니다.

새로운 API

  • RecyclerView의 새로운 fastScrollEnabled 부울 플래그. 사용 설정된 경우 fastScrollHorizontalThumbDrawable, fastScrollHorizontalTrackDrawable, fastScrollVerticalThumbDrawable, fastScrollVerticalTrackDrawable을 설정해야 합니다.

API 차이점

버그 수정

  • RecyclerView.toString()의 무한 루프
  • Canary 6으로 업그레이드한 후 API 16 AVD에서 Kotlin 프로젝트를 실행할 때 ResourceNotFoundException 발생
  • 지원 라이브러리 26.0.0-beta2를 사용하는 디자인 뷰에서 java.lang.AssertionError 발생
  • 지원 라이브러리 위젯의 Android 스튜디오 레이아웃 미리보기가 손상됨
  • 환경 설정이 속성을 사용하여 생성되지 않은 경우 Preference.setSingleLineTitle()이 무시됨
  • 지원 라이브러리 25.3.0/25.4.0 버전의 DAC 'Since' 주석이 잘못됨
  • ResourcesCompat.getFont()에서 예외가 발생함
  • 툴바 제목이 굵은 글꼴로 표시되지 않음
  • maxLines를 사용한 자동 크기 조정으로 예기치 않은 결과가 발생함
  • TextView.checkForRelayout()의 NullPointerException
  • 레이아웃 중에 AppCompatTextViewAutoSizeHelper.setRawTextSize()가 requestLayout()을 호출함
  • EmojiAppCompatTextView 비정상 종료
  • 텍스트가 변경될 때 Autosize TextView기 자동으로 조정되지 않음
  • Instacart의 화면 손상
  • MenuItemCompat의 UnsupportedOperationException
  • NotificationCompat이 API 24 이상에서 작업을 완전히 추출하지 않음
  • 레이아웃 업데이트 시 CoordinatorLayout 고정 문제