Android.content.res.Resources $ NotFoundException при загрузке активности

В начале моего приложения должно отображаться всплеск активности, но при загрузке определенного объекта, расположенного в "src / drawabe / background_splash.xml", я всегда получаю следующее исключение:

E/AndroidRuntime: [ERB] CRASH: main in de.jzbor.epos.debug(11450)
E/AndroidRuntime: FATAL EXCEPTION: main
              Process: de.jzbor.epos.debug, PID: 11450
              java.lang.RuntimeException: Unable to start activity ComponentInfo{de.jzbor.epos.debug/de.jzbor.epos.activities.SplashActivity}: android.content.res.Resources$NotFoundException: Drawable de.jzbor.epos.debug:drawable/background_splash with resource ID #0x7f07005c
                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2891)
                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
                  at android.app.ActivityThread.-wrap11(Unknown Source:0)
                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
                  at android.os.Handler.dispatchMessage(Handler.java:108)
                  at android.os.Looper.loop(Looper.java:206)
                  at android.app.ActivityThread.main(ActivityThread.java:6735)
                  at java.lang.reflect.Method.invoke(Native Method)
                  at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
               Caused by: android.content.res.Resources$NotFoundException: Drawable de.jzbor.epos.debug:drawable/background_splash with resource ID #0x7f07005c
               Caused by: android.content.res.Resources$NotFoundException: File res/drawable/background_splash.xml from drawable resource ID #0x7f07005c
                  at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:910)
                  at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:680)
                  at android.content.res.Resources.getDrawableForDensity(Resources.java:992)
                  at android.content.res.Resources.getDrawable(Resources.java:928)
                  at android.content.Context.getDrawable(Context.java:605)
                  at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:351)
                  at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:200)
                  at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:87)
                  at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:128)
                  at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:149)
                  at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:29)
                  at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:54)
                  at android.support.v7.app.AppCompatDelegateImplV23.<init>(AppCompatDelegateImplV23.java:31)
                  at android.support.v7.app.AppCompatDelegateImplN.<init>(AppCompatDelegateImplN.java:31)
                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:198)
                  at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:183)
                  at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:519)
                  at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:70)
                  at de.jzbor.epos.activities.SplashActivity.onCreate(SplashActivity.java:11)
                  at android.app.Activity.performCreate(Activity.java:6975)
                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2844)
                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
                  at android.app.ActivityThread.-wrap11(Unknown Source:0)
                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
                  at android.os.Handler.dispatchMessage(Handler.java:108)
                  at android.os.Looper.loop(Looper.java:206)
                  at android.app.ActivityThread.main(ActivityThread.java:6735)
                  at java.lang.reflect.Method.invoke(Native Method)
                  at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
               Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #8: <bitmap> requires a valid 'src' attribute
                  at android.graphics.drawable.BitmapDrawable.updateStateFromTypedArray(BitmapDrawable.java:823)
                  at android.graphics.drawable.BitmapDrawable.inflate(BitmapDrawable.java:754)
                  at android.graphics.drawable.DrawableInflater.inflateFromXmlForDensity(DrawableInflater.java:142)
E/AndroidRuntime:     at android.graphics.drawable.Drawable.createFromXmlInnerForDensity(Drawable.java:1295)
                  at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1284)
                  at android.graphics.drawable.LayerDrawable.inflateLayers(LayerDrawable.java:279)
                  at android.graphics.drawable.LayerDrawable.inflate(LayerDrawable.java:194)
                  at android.graphics.drawable.DrawableInflater.inflateFromXmlForDensity(DrawableInflater.java:142)
                  at android.graphics.drawable.Drawable.createFromXmlInnerForDensity(Drawable.java:1295)
                  at android.graphics.drawable.Drawable.createFromXmlForDensity(Drawable.java:1254)
                  at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:897)
                    ... 30 more

styles.xml

<style name = "SplashTheme" parent = "Theme.AppCompat.NoActionBar">
    <item name = "android:windowBackground">@drawable/background_splash</item>
</style>

background_splash.xml

<?xml version = "1.0" encoding = "utf-8"?>
<layer-list xmlns:android = "http://schemas.android.com/apk/res/android">

<item
    android:drawable = "@color/primaryColor"/>

<item>
    <bitmap
        android:gravity = "center"
        android:src = "@mipmap/ic_launcher"/>
</item>

Возможно, это как-то связано с суффиксом «.debug» в конфигурации сборки, но я не мог найти решения.

buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }

    debug {
        applicationIdSuffix ".debug"
        debuggable true
    }

}

[Редактировать] Итак, благодаря вашей помощи (особенно @kvaruna) я понял, что проблема как-то связана с растровым изображением. Кто-нибудь знает, можно ли там использовать растровое изображение и как избежать ошибки?

Попробуйте изменить bkg_splash.xml вот так<?xml version = "1.0" encoding = "utf-8"?> <layer-list xmlns:tools = "http://schemas.android.com/tools" xmlns:android = "http://schemas.android.com/apk/res/android"> <item > <shape android:shape = "rectangle" > <gradient android:angle = "315" android:startColor = "#FF06BEB6" android:endColor = "#FF0E90D8" android:type = "linear" /> </shape> </item> <item android:drawable = "@drawable/your_image" android:gravity = "center"/> </layer-list>
kvaruna 10.01.2019 12:45

проверьте это stackoverflow.com/a/54103686/5305430

sushildlh 10.01.2019 12:47

Похоже, у вас нет background_splash в папке для переноса по умолчанию.

ADM 10.01.2019 13:11

@kvaruna Спасибо за вашу помощь - проблема неплохо решена. Но я все еще не умею использовать растровое изображение - есть ли возможность это сделать?

jzbor 10.01.2019 13:55

@jzbor Он должен работать с написанным вами кодом. <item> <bitmap android:src = "@drawable/logo_half_white"/> </item> Какую исходную папку вы используете? Чтобы получить растровое изображение. Я бы предложил использовать путь @drawable для расположения растрового изображения.

kvaruna 10.01.2019 15:30
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
5
1 353
0

Другие вопросы по теме