Question

Je vous envoie plusieurs fichiers PDF via SOAP qui sera reçu par un client Android. Mais lors de la réception de la réponse SOAP, il jette OutOfMemoryException.

Je veux savoir si une limitation de son kSOAP ou Android. S'il vous plaît me guider comment surmonter.

Merci.

Était-ce utile?

La solution

Je suggère de ne pas le faire. Il suffit de mettre l'url brut au fichier pdf dans le message du savon et de télécharger le pdf séparément indépendant du savon. Cela fonctionne très bien pour moi avec les fichiers PDF ainsi que des images ..

Alors un peu plus en détail:

L'un des résultats de la requête SOAP doit contenir une URL publique complète au fichier PDF quelque part sur Internet.

Ensuite, utilisez DownloadManager ou tout ce que vous voulez en termes de développement Android pour obtenir le fichier téléchargé en utilisant l'URL que vous avez obtenu de la réponse du savon. Mais n'avez pas le PDF enveloppé dans le demande de savon. De cette façon, vous pouvez également afficher une barre de progression pendant le téléchargement et ainsi de suite bien. Le téléchargement de fichiers sur Android est documenté partout ..

Autres conseils

Je maintenant que c'est vieille question, mais peut-être j'aider d'autres développeurs. La façon la plus efficace d'envoyer un grand contenu binaire de / vers le service web est le transfert MMD (SOAP avec des pièces jointes). Le problème est que la bibliothèque ksoap2 ne prend pas en charge cette fonctionnalité, mais vous pouvez essayer le générateur de http://easywsdl.com. Ce que je sais est qu'il prend en charge le transfert MMD et vous permet d'envoyer / récupérer des fichiers très volumineux binaires. Bien sûr, le transfert de MMD doit être activé aussi du côté du service Web.

scroll top