Android-векторный срыв
Я использую векторные Drawables. Он работает хорошо на моих нескольких устройствах, но на моей Sony с Android 5.0.2 я получаю при запуске приложения:
java.lang.ArrayIndexOutOfBoundsException: length=32; index=32
at android.util.PathParser$PathDataNode.addCommand(PathParser.java:370)
at android.util.PathParser$PathDataNode.nodesToPath(PathParser.java:260)
at android.graphics.drawable.VectorDrawable$VPath.toPath(VectorDrawable.java:1265)
at android.graphics.drawable.VectorDrawable$VPathRenderer.drawPath(VectorDrawable.java:950)
Похоже, у меня есть некоторые svgs, преобразованные в xml с неподдерживаемыми тегами для этого устройства. Но как понять, какие из них и как быть уверенными, что он будет работать на всех других поддерживаемых устройствах.
Ответы
Ответ 1
Те же проблемы http://code.google.com/p/android/issues/detail?id=78162 (Закрыто: октябрь 2014) Проблема заключалась в том, что один из моих векторных xml содержал a научная нотация.
Итак, в этот момент, чтобы убедиться, что приложение будет работать на всех устройствах, убедитесь, что ваши векторные векторные элементы xml не содержат e -
Ответ 2
Эта ошибка может возникнуть на Android 5.0.1
Причина: при наличии дескрипторов векторного изображения в научном формате (научная нотация), например, 8.8e-5
Найдите в теге следующую запись ваших векторных изображений в проекте
Решение: решение об изменении этих чисел в формате без экспонентов в этом случае будет результатом, 0.000088
Ответ 3
В моем xml присутствовали атрибуты <group></group>
.
![введите описание изображения здесь]()
После решения проблемы удаления также было потрачено некоторое время, чтобы понять, где была проблема, и это были не буквы M и L (далее: https://developer.mozilla.org/en/docs/Web/SVG/Tutorial/Paths)
Ответ 4
Я получил эту ошибку после передачи моего svg через Android SVG в VectorDrawable. Оказалось, что некоторые из путей, которые он сгенерировал, имели букву "L" сразу после первого числа. Удаление этого исправлено с ошибкой.
Ответ 5
Поиск решения Я нашел некоторые обходные пути, например, переключить язык ОС на английский.
Вы можете прочитать больше в трекере проблем здесь и здесь.