android latest - Android Studio 2.3 베타 1 지원 25.1.0 = 미리보기 깨짐




3 Answers

이슈 트래커에 따르면, 2017 년 1 월 10 일 :

https://code.google.com/p/android/issues/detail?id=230183

2.3.0-beta1 Gradle 플러그인을 사용하는 사용자는 다음을 추가하여 빌드 캐시를 비활성화하십시오.

android.enableBuildCache=false

gradle.properties 파일에 저장하고 문제가 해결되었는지 알려주십시오. gradle.properties에 줄을 추가 한 후 프로젝트를 다시 작성하십시오.

감사.

일부 사용자의 경우이 문제를 해결하는 것으로 입증되었습니다.

support library

Android Studio 2.3 Canary 3. 지원 라이브러리 25.1.0.

레이아웃 미리보기가 완전히 손상되었습니다. 지원 관련보기가 포함 된 항목은 미리보기 중에 손상된 것 같습니다.

모든 경우에 이것이 스택의 시작입니다.

Exception Details java.lang.NoSuchFieldError: ViewBackgroundHelper   
at android.support.v7.widget.AppCompatBackgroundHelper.loadFromAttributes(AppCompatBackgroundHelper.java:46)   
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:63)   
at android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.java:56)
....

.. 기타

레이아웃이 무엇인지는 중요하지 않습니다. ViewBackgroundHelper 피 묻은 ViewBackgroundHelper 관련 문제가 발생합니다. 어떤 종류의 레이아웃이 어떤지 또는 어떤 뷰가 있는지는 중요하지 않습니다. AppCompat를 통과하는 것으로 보이는 모든 것들이 미리보기에서이 오류를 발생시킵니다.

전에는 본 적이 없어요. 이전에 Android Studio 2.3 Canary 2 + Support 라이브러리 25.0.1을 사용했습니다.

이런 종류의 물건에 시간을 들이지 않고 Android Studio 또는 지원 라이브러리를 업그레이드 할 수없는 것 같습니다.

어떤 힌트도 주셔서 감사합니다.

최신 정보

나는 유일한 사람이 아닌 것처럼 보입니다. 이미 많은 사람들이 주인공으로 여기에 기록 된 버그를 발견했습니다.

https://code.google.com/p/android/issues/detail?id=230183

업데이트 2

여전히 AS 2.3 베타 1의 문제. 여전히 내 레이아웃을 볼 수 없습니다. 같은 java.lang.NoSuchFieldError: ViewBackgroundHelper 모든 곳에 java.lang.NoSuchFieldError: ViewBackgroundHelper 오류가 발생했습니다.




나는 트래커에 문제를 제기했다. 다른 참가자는 다른 비 안드로이드 라이브러리 종속성을 제거하면 문제가 사라지는 것을 발견했습니다. 그것을 기반으로 솔루션 (문제 스레드에서 재 게시 됨)을 발견했습니다.

추가 조사 후 추가 정보 :

Android Studio 2.2.3
2016 년 12 월 2 일에 빌드 # AI-145.3537739 빌드
JRE : 1.8.0_76-release-b03 amd64
JVM : JetBrains sro의 OpenJDK 64 비트 서버 VM

지원 라이브러리 : 25.1.0
빌드 도구 : 25.0.2

위의 스튜디오 버전 (2.2.3 Stable)에서 이것을 재현 할 수있게 된 후에이 스레드에서 다른 사람들이 제공 한 정보를 기반으로 다른 라이브러리 종속성을 제거하기 시작했습니다. Calligraphy 라이브러리 ( https://github.com/chrisjenx/Calligraphy )와 관련 코드를 제거한 후 레이아웃 미리보기가 올바르게 다시 시작되었습니다.

흥미롭게도 필자는 서예 라이브러리를 다시 추가 할 수 있었고 레이아웃 미리보기는 계속 작동했습니다. 어쩌면이 점은 안드로이드 gradle 플러그인과 관련된 일종의 캐싱 문제를 지적할까요?

이 문제가 발생하는 다른 사람들을 위해 다음과 같이 제안합니다.
1. 문제의 원인이되는 라이브러리를 찾아냅니다.
2. 라이브러리 종속성 및 관련 코드를 제거합니다.
3. 완전히 깨끗하게하고 건설하십시오.
4. 레이아웃 미리보기가 작동하는지 확인합니다.
5. 라이브러리 종속성을 다시 추가하십시오.
6. 완전히 깨끗하게하고 짓는다.
7. 레이아웃 미리보기가 작동하는지 확인합니다.

참고 : 필자는 서체가 "fontPath"라는 사용자 정의 xml 속성과 일부 컨텍스트 조작에 의존하기 때문에이 문제를 일으키는 것으로 의심됩니다. 후드에서 뷰 조작을 수행하는 라이브러리가있는 경우 먼저 해당 라이브러리를 제거하는 것이 좋습니다.




나는 문제가 안드로이드 스튜디오의 버전이 아닙니다.

문제는 Gradle 버전이 안정 버전 2.2.3으로 돌아가는 것입니다. 몇 가지 테스트를 거친 후에 저에게 적합합니다. 그것은 gradle 베타 버전의 버그이며 그것은 이미 Google에보고됩니다.




Related

android android-layout android-studio android-support-library appcompat