내 개발 과정에서 매우 이상한 버그가 발생했습니다 ... 테스트를 거친 모든 API 버전에서 앱은 완벽하고 부드럽고 오류없이 실행되지만 API 21에서만 실행됩니다. 다음과 같은 오류가 발생합니다. 어떤 단서 어떻게 고칠 수 있습니다.Android API 21 9patch 오류가 발생 했습니까?
06-08 12:59:49.703 2865-2865/de.eplus.b2p.alditalk.mock_local E/AndroidRuntime: FATAL EXCEPTION: main
Process: mypackage, PID: 2865
java.lang.RuntimeException: Unable to start activity ComponentInfo{de.eplus.b2p.alditalk.mock_local/mypackage.LoginActivity}: android.view.InflateException: Binary XML file line #72: Error inflating class EditText
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2739)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2804)
at android.app.ActivityThread.access$900(ActivityThread.java:181)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1473)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6066)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
Caused by: android.view.InflateException: Binary XML file line #72: Error inflating class EditText
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:770)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:813)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.inflate(LayoutInflater.java:511)
at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
at android.view.LayoutInflater.inflate(LayoutInflater.java:366)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at de.eplus.b2p.whitelabel.common.login.LoginActivity.onCreate(LoginActivity.java:290)
at android.app.Activity.performCreate(Activity.java:6368)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2692)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2804)
at android.app.ActivityThread.access$900(ActivityThread.java:181)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1473)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6066)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
Caused by: android.content.res.Resources$NotFoundException: File res/drawable-v21/abc_edit_text_material.xml from drawable resource ID #0x7f020015
at android.content.res.Resources.loadDrawableForCookie(Resources.java:3761)
at android.content.res.Resources.loadDrawable(Resources.java:3629)
at android.content.res.TypedArray.getDrawable(TypedArray.java:762)
at android.view.View.<init>(View.java:3991)
at android.widget.TextView.<init>(TextView.java:1012)
at android.widget.EditText.<init>(EditText.java:80)
at android.widget.EditText.<init>(EditText.java:76)
at android.support.v7.widget.AppCompatEditText.<init>(AppCompatEditText.java:60)
at android.support.v7.widget.AppCompatEditText.<init>(AppCompatEditText.java:56)
at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:112)
at android.support.v7.app.AppCompatDelegateImplV7.createView(AppCompatDelegateImplV7.java:980)
at android.support.v7.app.AppCompatDelegateImplV7.onCreateView(AppCompatDelegateImplV7.java:1039)
at android.support.v4.view.LayoutInflaterCompatHC$FactoryWrapperHC.onCreateView(LayoutInflaterCompatHC.java:44)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:732)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:813)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:821)
at android.view.LayoutInflater.inflate(LayoutInflater.java:511)
at android.view.LayoutInflater.inflate(LayoutInflater.java:415)
at android.view.LayoutInflater.inflate(LayoutInflater.java:366)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at de.eplus.b2p.whitelabel.common.login.LoginActivity.onCreate(LoginActivity.java:290)
at android.app.Activity.performCreate(Activity.java:6368)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2692)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2804)
at android.app.ActivityThread.access$900(ActivityThread.java:181)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1473)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6066)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #24: <nine-patch> requires a valid 9-patch source image
at android.graphics.drawable.NinePatchDrawable.updateStateFromTypedArray(NinePatchDrawable.java:445)
at android.graphics.drawable.NinePatchDrawable.inflate(NinePatchDrawable.java:401)
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1170)
at android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:185)
at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1170)
at android.graphics.drawable.InsetDrawable.inflate(InsetDrawable.java:105)
at android.graphics.drawable.Drawable.cr
이 문제를 해결할 수있는 사람이 있습니까? 파일
이고해상도/당김-V21/abc_edit_text_material.xml
은 내가 추측 APPCOMPAT lib 디렉토리에 포함되어 있습니다 ... 난 이미, 청소 모든 것을 여러 번 빌드 도구를 업데이트 모두를 다시 설치하고 심지어 장치를 열심히 조사하지만, 아무 것도 바뀌지 않았습니다. 나는 몇 주 전에 일했다 ... 갑자기 이런 일이 일어 났고 무엇이 바뀌 었는지 모른다 ... (프로젝트에 손대지 않았다)
'Android API 21 9patch error?'와'res/drawable-v21/abc_edit_text_material.xml'이 일치하지 않습니다. xml과 9 패치를 비교하는 방법은 무엇입니까? org.xmlpull.v1.XmlPullParserException : 이진 XML 파일 라인 # 24 :에 유효한 9 패치 원본 이미지가 필요함 –
발생 원인 : org.xmlpull.v1.XmlPullParserException : 이진 XML 파일 줄 # 24 :에 유효한 9 패치 소스 이미지가 필요합니다. 스택 트레이스의 마지막 원인 –
glethien
그래, 정확하게 이전 주석에 추가 한 내용. 9 개의 패치 ** 이미지 **를 사용하고 있지 않다는 것을 알려줍니다. ** 이미지 **는 XML 파일과 다른 점을 유의하십시오. 대략 9 개의 패치에 대해 다소 혼란 스럽습니다. –