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