android.view.InflateException: строка двоичного файла XML # 37: ошибка раздувания кнопки класса

#android

#Android

Вопрос:

Привет, несколько дней назад я запустил свое приложение для Android на своем мобильном телефоне с версией Android 9, все работало отлично, к сожалению, с тех пор он вышел из строя, я больше не могу его использовать. Теперь я пытаюсь запустить свое приложение на другом телефоне с версией Android 5, но оно не работает. Не то, чтобы я не менял код. Какие-либо рекомендации? Спасибо

Вот ошибка из Logcat :

 Process: com.example.bachmaps, PID: 1887
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.bachmaps/com.example.bachmaps.MainActivity}: android.view.InflateException: Binary XML file line #37: Error inflating class Button
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3160)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3275)
    at android.app.ActivityThread.access$1000(ActivityThread.java:218)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1744)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:145)
    at android.app.ActivityThread.main(ActivityThread.java:7007)
    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:1404)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
 Caused by: android.view.InflateException: Binary XML file line #37: Error inflating class Button
    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.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.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469)
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
    at com.example.bachmaps.MainActivity.onCreate(MainActivity.java:23)
    at android.app.Activity.performCreate(Activity.java:6609)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1134)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3113)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3275) 
    at android.app.ActivityThread.access$1000(ActivityThread.java:218) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1744) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:145) 
    at android.app.ActivityThread.main(ActivityThread.java:7007) 
    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:1404) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
 Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.bachmaps:drawable/admin" (7f070056)  is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f070056 a=-1 r=0x7f070056}
    at android.content.res.Resources.loadDrawableForCookie(Resources.java:4017)
    at android.content.res.Resources.loadDrawable(Resources.java:3929)
    at android.content.res.Resources.loadDrawable(Resources.java:3779)
    at android.content.res.TypedArray.getDrawable(TypedArray.java:776)
    at android.view.View.<init>(View.java:4001)
    at android.widget.TextView.<init>(TextView.java:1043)
    at android.widget.Button.<init>(Button.java:115)
    at android.widget.Button.<init>(Button.java:108)
    at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:71)
    at android.support.v7.widget.AppCompatButton.<init>(AppCompatButton.java:67)
    at android.support.v7.app.AppCompatViewInflater.createButton(AppCompatViewInflater.java:187)
    at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:110)
    at android.support.v7.app.AppCompatDelegateImpl.createView(AppCompatDelegateImpl.java:1266)
    at android.support.v7.app.AppCompatDelegateImpl.onCreateView(AppCompatDelegateImpl.java:1316)
    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.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.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469) 
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
    at com.example.bachmaps.MainActivity.onCreate(MainActivity.java:23) 
    at android.app.Activity.performCreate(Activity.java:6609) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1134) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3113) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3275) 
    at android.app.ActivityThread.access$1000(ActivityThread.java:218) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1744) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:145) 
    at android.app.ActivityThread.main(ActivityThread.java:7007) 
    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:1404) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
 

Комментарии:

1. опубликовать соответствующий макет XML

2. не могли бы вы объяснить мне, что это такое, пожалуйста?

3. Казалось бы, ваш admin drawable недоступен для этой конкретной версии Android. То есть, например, он находится в папке с именем что-то вроде res/drawable-v23/ , в то время как Android 5 имеет 21-й уровень API.

Ответ №1:

Я выяснил, в чем была ошибка, я переместил все свое рисованное содержимое из drawable (v24) в drawable