1

Ich bin auf Vektor-Drawables und sie funktionieren auch auf älteren Android-Versionen ziemlich gut. Meine App zielt auf 4+. Ich wechselte eine meiner Benachrichtigungen zu einem Vektorbild und dazu musste ich programmgesteuert VectorDrawableCompat verwenden. Plötzlich bekomme ich Ausnahmen für diese Benachrichtigung, weil die Ressource nicht gefunden werden kann.

Dies ist die Ausnahme:

Fatal Exception: android.content.res.Resources$NotFoundException: File res/drawable-hdpi-v4/vector_name.png from xml type xml resource ID #0x7f0201d5 
     at android.content.res.Resources.loadXmlResourceParser(Resources.java:3733) 
     at android.content.res.Resources.loadXmlResourceParser(Resources.java:3680) 
     at android.content.res.Resources.getXml(Resources.java:2215) 
     at android.support.graphics.drawable.VectorDrawableCompat.create(VectorDrawableCompat.java:408) 

Dies ist der Code, den ich laufen:

VectorDrawableCompat vector = VectorDrawableCompat.create(getResources(), R.drawable.vector_name, null); 

Meine gradle Datei hat diese Zeile vectorDrawables.useSupportLibrary = true und wie ich schon sagte, alle anderen Vektoren arbeiten gut aber ich benutze sie meistens mit AppCompatImageView.

EDIT: Ich sollte erwähnen, ich mache das in einem Bibliotheksmodul.

+0

Es könnte etwas sein, das die Entwickler vergessen haben, der Support-Bibliothek hinzuzufügen. Sie könnten ein Problem bei Google-Entwicklern melden. –

Antwort

0

Sie benötigen diese Zeile innerhalb des defaultConfig Block in Ihrer build.gradle Datei hinzufügen:

vectorDrawables.useSupportLibrary = true 

Dies wird die pngs für APIs unter 21 zur Laufzeit generieren, und Sie werden einen Fehler nicht erhalten, weil sie nicht sind gefunden.

+1

Ich benutze das bereits. – casolorz

0

Die Linie von Ihrem logcat sagt:

Fatal Exception: android.content.res.Resources $ NotFoundException: Datei-res/ziehbar-hdpi-v4/vector_name.png von xml xml-Typ Ressource ID # 0x7f0201d5

Es schlägt vor, dass Sie eine vektorielle_name.png anstelle einer XML-Datei in Ihrem zeichnenden Ordner verwenden.

Verwandte Themen