Fail Android studio compatibility

1

I have a problem with my application. I currently program it in api 23 marshmallow android and I was running it on a Moto G5 plus physical device from api24 and it worked perfectly, but, try to test it on a Samsum j5 prime of api 23 and not it worked. Exiting an error ("The application stopped") and closing. I'm really new to programming, so I'd appreciate it if you explain in a simple way. Thank you.

Logcat:

09-16 16:58:22.185 13259-13259/? E/Zygote: v2
09-16 16:58:22.185 13259-13259/? E/Zygote: accessInfo : 0
09-16 16:58:23.515 13259-13259/com.example.eliseo.radio E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.eliseo.radio, PID: 13259
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.eliseo.radio/com.example.eliseo.radio.MainActivity}: android.view.InflateException: Binary XML file line #10: Binary XML file line #10: Error inflating class android.widget.ImageView
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3320)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3416)
    at android.app.ActivityThread.access$1100(ActivityThread.java:230)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1822)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:148)
    at android.app.ActivityThread.main(ActivityThread.java:7409)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
 Caused by: android.view.InflateException: Binary XML file line #10: Binary XML file line #10: Error inflating class android.widget.ImageView
    at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380)
    at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:487)
    at android.app.Activity.setContentView(Activity.java:2400)
    at com.example.eliseo.radio.MainActivity.onCreate(MainActivity.java:44)
    at android.app.Activity.performCreate(Activity.java:6904)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3267)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3416) 
    at android.app.ActivityThread.access$1100(ActivityThread.java:230) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1822) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:7409) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
 Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class android.widget.ImageView
    at android.view.LayoutInflater.createView(LayoutInflater.java:657)
    at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
    at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:487) 
    at android.app.Activity.setContentView(Activity.java:2400) 
    at com.example.eliseo.radio.MainActivity.onCreate(MainActivity.java:44) 
    at android.app.Activity.performCreate(Activity.java:6904) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3267) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3416) 
    at android.app.ActivityThread.access$1100(ActivityThread.java:230) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1822) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:7409) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
 Caused by: java.lang.reflect.InvocationTargetException
    at java.lang.reflect.Constructor.newInstance(Native Method)
    at android.view.LayoutInflater.createView(LayoutInflater.java:631)
    at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847) 
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
    at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:487) 
    at android.app.Activity.setContentView(Activity.java:2400) 
    at com.example.eliseo.radio.MainActivity.onCreate(MainActivity.java:44) 
    at android.app.Activity.performCreate(Activity.java:6904) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3267) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3416) 
    at android.app.ActivityThread.access$1100(ActivityThread.java:230) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1822) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:7409) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 
 Caused by: android.content.res.Resources$NotFoundException: Resource "com.example.eliseo.radio:drawable/fondo" (7f060055) is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f060055 a=-1 r=0x7f060055}
    at android.content.res.Resources.loadDrawableForCookie(Resources.java:4249)
    at android.content.res.Resources.loadDrawable(Resources.java:4156)
    at android.content.res.Resources.loadDrawable(Resources.java:4006)
    at android.content.res.TypedArray.getDrawable(TypedArray.java:886)
    at android.widget.ImageView.<init>(ImageView.java:157)
    at android.widget.ImageView.<init>(ImageView.java:145)
    at android.widget.ImageView.<init>(ImageView.java:141)
    at java.lang.reflect.Constructor.newInstance(Native Method) 
    at android.view.LayoutInflater.createView(LayoutInflater.java:631) 
    at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:706) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:774) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:847) 
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:527) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:380) 
    at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:487) 
    at android.app.Activity.setContentView(Activity.java:2400) 
    at com.example.eliseo.radio.MainActivity.onCreate(MainActivity.java:44) 
    at android.app.Activity.performCreate(Activity.java:6904) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3267) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3416) 
    at android.app.ActivityThread.access$1100(ActivityThread.java:230) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1822) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:148) 
    at android.app.ActivityThread.main(ActivityThread.java:7409) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

build.gradle:

apply plugin: 'com.android.application'

android {
compileSdkVersion 28
defaultConfig {
    applicationId "com.example.eliseo.radio"
    minSdkVersion 23
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0-rc02'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

drawable folder content

    
asked by Eliseo Baroni 16.09.2018 в 22:20
source

1 answer

0

The problem is that you can not inflate the layout since in line 10 you have defined a ImageView which can not be inflated:

  

Caused by: android.view.InflateException: Binary XML file line # 10:   Binary XML file line # 10: Error inflating class   android.widget.ImageView

The reason why this ImageView has this problem is that you are trying to load in a resource drawable/fondo which is not really an image or the resource does not exist :

  

Caused by: android.content.res.Resources $ NotFoundException: Resource   "com.example.eliseo.radio:drawable/fondo" (7f060055) is not a Drawable   (color or path): TypedValue {t = 0x1 / d = 0x7f060055 a = -1 r = 0x7f060055}

You comment that in some devices it works and in others it does not, this may be because you added the resource only in some folder /drawable-<API> dedicated for an API and not in all, in this case you can find the image only in /drawable-24 but not in /drawable-23 :

    
answered by 17.09.2018 / 17:58
source