Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过XML与服务器和android客户端通信_Java_Android_Xml_Parsing_Out Of Memory - Fatal编程技术网

Java 通过XML与服务器和android客户端通信

Java 通过XML与服务器和android客户端通信,java,android,xml,parsing,out-of-memory,Java,Android,Xml,Parsing,Out Of Memory,我正在通过XML与服务器通信。XML变得如此巨大,以至于我现在在Android手机上出现OOM错误 我正在使用URLConnection while(null != (xmlResponse = reader.readLine())) { sb.append(xmlResponse); } reader.readLine()花费了太多时间,最终导致我的应用程序崩溃。有没有更好的方法来解析巨大的XML???或者任何lib???您可

我正在通过XML与服务器通信。XML变得如此巨大,以至于我现在在Android手机上出现OOM错误

我正在使用URLConnection

 while(null != (xmlResponse =
 reader.readLine())) {
                 sb.append(xmlResponse);
              }

reader.readLine()花费了太多时间,最终导致我的应用程序崩溃。有没有更好的方法来解析巨大的XML???或者任何lib???

您可以使用Android XmlPullParser,以便在下载时执行解析。

如果您在执行readline时有OOM,则可能是因为行太长。在读取时注意将缓冲区限制为几kb会有所帮助。

我正在使用XMLPullParser,但我只能在能够读取xml时使用它。当读卡器运行时,它会给我一个OOM错误。readLine()