2012-10-19 19 views
0

我並非試圖下載映像。我試圖得到從服務器的JSON響應。 當迴應很小時,一切都會好起來。但是,當我有一個巨大的迴應,我得到一個例外。異常內存不足「Thread-451」prio = 5 tid = 11 RUNNABLE

10-19 16:32:12.226: E/dalvikvm-heap(5504): Out of memory on a 33554448-byte allocation. 
10-19 16:32:12.230: I/dalvikvm(5504): "Thread-451" prio=5 tid=11 RUNNABLE 
10-19 16:32:12.230: I/dalvikvm(5504): | group="main" sCount=0 dsCount=0 obj=0x418c44d0 self=0x50ecd140 
10-19 16:32:12.230: I/dalvikvm(5504): | sysTid=5723 nice=0 sched=0/0 cgrp=apps handle=1361164216 
10-19 16:32:12.230: I/dalvikvm(5504): | schedstat=(0 0 0) utm=176 stm=69 core=0 
10-19 16:32:12.258: I/dalvikvm(5504): at org.apache.http.util.CharArrayBuffer.expand(CharArrayBuffer.java:~59) 
10-19 16:32:12.258: I/dalvikvm(5504): at org.apache.http.util.CharArrayBuffer.append(CharArrayBuffer.java:77) 
10-19 16:32:12.258: I/dalvikvm(5504): at org.apache.http.util.EntityUtils.toString(EntityUtils.java:136) 
10-19 16:32:12.258: I/dalvikvm(5504): at org.apache.http.util.EntityUtils.toString(EntityUtils.java:146) 
10-19 16:32:12.265: I/dalvikvm(5504): at fr.haploid.webservices.parsers.WebServiceJSONObjectParser$MyNetworkThread.work(WebServiceJSONObjectParser.java:198) 
10-19 16:32:12.265: I/dalvikvm(5504): at fr.haploid.webservices.parsers.WebServiceParser$NetworkThread.run(WebServiceParser.java:653) 
10-19 16:32:12.273: W/dalvikvm(5504): threadid=11: thread exiting with uncaught exception (group=0x40fb4300) 
10-19 16:32:12.297: E/AndroidRuntime(5504): FATAL EXCEPTION: Thread-451 
10-19 16:32:12.297: E/AndroidRuntime(5504): java.lang.OutOfMemoryError 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at org.apache.http.util.CharArrayBuffer.expand(CharArrayBuffer.java:59) 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at org.apache.http.util.CharArrayBuffer.append(CharArrayBuffer.java:77) 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at org.apache.http.util.EntityUtils.toString(EntityUtils.java:136) 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at org.apache.http.util.EntityUtils.toString(EntityUtils.java:146) 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at fr.haploid.webservices.parsers.WebServiceJSONObjectParser$MyNetworkThread.work(WebServiceJSONObjectParser.java:198) 
10-19 16:32:12.297: E/AndroidRuntime(5504):  at fr.haploid.webservices.parsers.WebServiceParser$NetworkThread.run(WebServiceParser.java:653) 
10-19 16:37:12.367: I/Process(5504): Sending signal. PID: 5504 SIG: 9 

有沒有人知道我該如何解決這個問題?

回答

0

不幸的是,沒有什麼神奇的事情要做!你需要改變你的Web服務來發送更輕量級的json文件。我相信你可以在幾個部分切割你的json文件。如果它是一個很長的列表,你可以考慮例如分頁。