Skip to content Skip to sidebar Skip to footer

Vectordrawable Resources$notfoundexception While Xml Vector Drawable Resource File Does Exist

My app min SDK is 21 so its no need to add AppCompatDelegate.setCompatVectorFromResourcesEnabled(true); to Application class since its only for lower than 21 (anyway I tried to ad

Solution 1:

When I was applying patch for gradient sections I noticed that AndroidStudio highlighted these gradient sections saying that it is supported from API 24 and my project min API is 21. So I have decided to check other warnings like:

Very long vector path (1456 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector.

So I've started suspecting it as an issue source because there was an error message (red colored text) given in build window of AndroidStudio stating:

string too large to encode using UTF-8 written instead as 'STRING_TOO_LARGE'.

But there is no glue or pointing to source of this problem, its just states that I have a very long String somewhere in my project, so it could be preshipped realm database file for instance or something like. Finally I found an anomaly in one of my vector drawables - it was a path string containing about 51k chars! Of course no warning was given to me at importing time (svg to xml, done using AndroidStudio). Removing this path solved the crash issue but also a part of an image was lost. So I've degrouped a problematic path group using Sketch and after importing it resulted in 2 paths of 19k and 24k chars, which is not good either, but it works now without any crash. btw I am unable to find any information on string length limitations for vector/xml but gradle does apply this limitation at build time, so its known.

Image displays AndroidStudio warning and compile error

The limit of one xml string length revealed in this SO question and there is no official document on that could be found.

Post a Comment for "Vectordrawable Resources$notfoundexception While Xml Vector Drawable Resource File Does Exist"