Java 在android中使用svg时getSVGFromAssets()中的NullPointerException

Java 在android中使用svg时getSVGFromAssets()中的NullPointerException,java,android,svg,Java,Android,Svg,当我试图从资产中获取.svg文件时,我得到的是nullPointerException。当我调用getSVGFromResource()使用库支持svg时,也会发生同样的情况 svg = SVGParser.getSVGFromAsset(getAssets(), "aa.svg"); 我在上面得到了这个例外 svg文件:aa.svg 请帮我弄清楚为什么会发生这种事。。谢谢 在SVG文件中,显然有一些东西SVG android在解析时无法很好地处理。这是一个非常简单的文件,所以候选文件不多 您

当我试图从资产中获取
.svg
文件时,我得到的是
nullPointerException
。当我调用
getSVGFromResource()
使用库支持svg时,也会发生同样的情况

svg = SVGParser.getSVGFromAsset(getAssets(), "aa.svg");
我在上面得到了这个例外

svg文件:aa.svg


请帮我弄清楚为什么会发生这种事。。谢谢

在SVG文件中,显然有一些东西SVG android在解析时无法很好地处理。这是一个非常简单的文件,所以候选文件不多

您可以尝试一次删除一个
元素,以查看导致异常的元素(如果有的话)

可能是路径命令的密集、无空格和格式问题。尝试向路径命令字符串添加空格。例如:

d="M 15,87 h -13 l 20 -56 h 14 l 19,56 h -12 l -4 -12 h -21 l -3,1 ..etc..
也可以是第一个path命令属性中的换行符。试着把它修好

另外,svg android库中有几个不同的分支,它们应用了各种错误修复。你可以试试其中一种


或者你可以试试我的库,AndroidSVG

作为NPE的一般问题来结束这个问题似乎很苛刻。这是在图书馆里发生的。在尝试调试库之前,在这里提出一个问题似乎是合理的。我已经重新打开了它。当我更改svg文件时,该库对某些svg文件不起作用。没有例外。谢谢!!请提供您的库的链接:)
 com.larvalabs.svgandroid.SVGParseException: java.lang.NullPointerException: Attempt to invoke virtual method 'float java.lang.Float.floatValue()' on a null object reference
            at com.larvalabs.svgandroid.SVGParser.parse(Unknown Source)
            at com.larvalabs.svgandroid.SVGParser.getSVGFromInputStream(Unknown Source)
            at com.larvalabs.svgandroid.SVGParser.getSVGFromAsset(Unknown Source)
d="M 15,87 h -13 l 20 -56 h 14 l 19,56 h -12 l -4 -12 h -21 l -3,1 ..etc..