1

我通过 SOAP 发送多个 PDF 文件,Android 客户端将接收这些文件。但是当接收到 SOAP 响应时,它会抛出 OutOfMemoryException。

我想知道它是 kSOAP 还是 Android 的限制。请指导我如何克服它。

谢谢。

4

2 回答 2

1

我建议不要那样做。只需将pdf文件的原始url放入soap消息中,然后独立于soap单独下载pdf。这对我来说非常适合 PDF 文件和图像..

所以更详细一点:

您的 SOAP 请求结果之一应包含 Internet 上某处 PDF 文件的完整公共 URL。

然后在 Android 开发方面使用 DownloadManager 或任何您想要的东西,通过使用从肥皂响应中获得的 url 来下载文件。但是不要将 PDF 包含在肥皂请求中。这样,您还可以在下载过程中显示进度条等等。在 Android 上下载文件随处可见。

于 2011-02-03T18:15:59.410 回答
0

我现在这是一个老问题,但也许我可以帮助其他开发人员。从/向 Web 服务发送大型二进制内容的最有效方法是 MTOM 传输(带有附件的 SOAP)。问题是 ksoap2 库不支持此功能,但您可以尝试http://easywsdl.com生成器。我所知道的是它支持 MTOM 传输并允许您发送/检索非常大的二进制文件。当然,也必须在 Web 服务端启用 MTOM 传输。

于 2015-01-14T06:13:55.980 回答