Android Studio에서 프로젝트를 만들 때 문제가 발생했습니다. (버전 1.5.1)
나는 내 행동을 단계별로 설명합니다.
- Android Studio를 엽니 다.
- 활동없이 새 프로젝트를 작성하십시오.
- 빈 활동을하십시오.
미리보기 모드에 문제가있을 수 있습니다.
이 메시지가 나타납니다.
Rendering Problems Exception raised during rendering: com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser(Ljava/lang/String;)Lorg/xmlpull/v1/XmlPullParser;
스택 추적에서 :
java.lang.NoSuchMethodError: com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser(Ljava/lang/String;)Lorg/xmlpull/v1/XmlPullParser;
at com.android.layoutlib.bridge.impl.ResourceHelper.getInternalComplexColor(ResourceHelper.java:146)
at com.android.layoutlib.bridge.impl.ResourceHelper.getColorStateList(ResourceHelper.java:231)
at android.content.res.BridgeTypedArray.getColorStateList(BridgeTypedArray.java:308)
at android.widget.TextView.<init>(TextView.java:776)
at android.widget.TextView.<init>(TextView.java:705)
at android.widget.TextView.<init>(TextView.java:701)
at com.android.layoutlib.bridge.MockView.<init>(MockView.java:50)
at com.android.layoutlib.bridge.MockView.<init>(MockView.java:45)
at com.android.layoutlib.bridge.MockView.<init>(MockView.java:41)
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:163)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727)
at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858)
at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at com.android.layoutlib.bridge.bars.CustomBar.<init>(CustomBar.java:95)
at com.android.layoutlib.bridge.bars.StatusBar.<init>(StatusBar.java:67)
at com.android.layoutlib.bridge.impl.Layout.createStatusBar(Layout.java:222)
at com.android.layoutlib.bridge.impl.Layout.<init>(Layout.java:144)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:213)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:426)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:510)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:498)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:888)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:498)
at com.android.tools.idea.rendering.RenderTask.access$600(RenderTask.java:72)
at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:610)
at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:607)
at com.android.tools.idea.rendering.RenderService.runRenderAction(RenderService.java:362)
at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:607)
at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:629)
at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel$6.run(AndroidDesignerEditorPanel.java:480)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
at com.intellij.util.Alarm$Request$1.run(Alarm.java:351)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
무엇이 문제 일 수 있습니까?
답변
몇 분 전에 업데이트 후 동일한 문제가 발생했습니다. 렌더링 문제를 해결하기 위해 수행 한 것은 레이아웃을 렌더링하는 데 사용되는 Android 버전을 Android Studio에서 “API 23 : Android 6.0″으로 다시 변경하는 것이 었습니다.
답변
java.lang.NoSuchMethodError : com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser (Ljava / lang / String;) Lorg / xmlpull / v1 / XmlPullParser;
애플리케이션이 클래스의 지정된 메소드 (정적 또는 인스턴스)를 호출하려고 시도하고 해당 클래스에 더 이상 해당 메소드의 정의가없는 경우 발생합니다. 일반적으로이 오류는 컴파일러에 의해 발생합니다. 이 오류는 클래스 정의가 호환되지 않는 경우에만 런타임시 발생할 수 있습니다.
이 동작을 사용 하려면 앱이 Android 6.0 (API 레벨 23) 을 대상으로해야합니다 . 추가 코드를 추가 할 필요가 없습니다.
답변
우분투 14.04에 android studio 2.1을 설치할 때도 동일한 문제가 발생했습니다.
아래 경로로 이동하여 API 23을 다운로드해야했습니다.
도구-> SDK 관리자-> Android SDK-> SDK 플랫폼-> 이름.
Android 6.0 (Marshwallow) 옵션을 확인하면 지금 다운로드됩니다. 이제 API 레벨 23을보고이 문제를 해결할 수있는 것을 선택하면됩니다.
답변
Windows 10의 Android Studio 1.5.1에서 비슷한 문제가 발생했습니다. 선택한 Android 버전에 상관없이 미리보기가 작동하지 않았습니다. stacktrace는 다음으로 시작합니다.
“java.lang.NoSuchMethodError : com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser (Ljava / lang / String;) Lorg / xmlpull / v1 / XmlPullParser;”
문제 tools:showIn="@layout/activity_main"
에서 속성 을 제거 RelativeLayout
하면 “N”을 제외한 모든 Android 버전에서 문제가 해결됩니다. Android 2.2, 2.3.3, 5.0.1 및 6.0을 사용하도록 설정했습니다.
액션이 왜 문제를 해결하는지 또는 왜 버전 N에서 작동하는지 설명 할 수 없습니다.
답변
이것은 적시에 답변이 아니지만 동일한 문제가 발생하는 다른 사람을 찾는 사람에게는 안드로이드 스튜디오의 업데이트가 트릭을 수행합니다. 위의 모든 제안이 효과가 있지만 업데이트를 원합니다 (버전 2.1.2).