У меня есть странная проблема с памятью, которую я не могу решить. Я считаю, что у меня может быть проблема с обработкой websocket, но я не уверен, почему и где. Я попытался взять дамп памяти с Android Monitor, но, похоже, я не понимаю эту проблему. Я попытался добавить android: largeHeap = "true".Android Out of Memory
Я понятия не имею, куда идти оттуда и как бороться с этой проблемой или что проверить. Есть ли у вас какие-либо предложения в отношении того, что я могу сделать? Я использую firebase для регистрации ошибок в производстве, где я также получить эти стеки ошибок, когда ошибка происходит:
Exception java.lang.OutOfMemoryError: Failed to allocate a 916 byte allocation with 8388608 free bytes and 369MB until OOM; failed due to fragmentation (required continguous free 65536 bytes for a new buffer where largest contiguous free 32768 bytes)
java.nio.CharBuffer.allocate (CharBuffer.java:54)
java.nio.charset.CharsetDecoder.allocateMore (CharsetDecoder.java:226)
java.nio.charset.CharsetDecoder.decode (CharsetDecoder.java:188)
org.java_websocket.util.Charsetfunctions.stringUtf8 (Charsetfunctions.java:77)
org.java_websocket.WebSocketImpl.decodeFrames (WebSocketImpl.java:375)
org.java_websocket.WebSocketImpl.decode (WebSocketImpl.java:158)
org.java_websocket.client.WebSocketClient.run (WebSocketClient.java:185)
java.lang.Thread.run (Thread.java:818)
Я понимаю, этот вопрос является расплывчатым, но я был бы признателен только предложения, куда идти дальше.
Проверьте [мой ответ здесь] (http://stackoverflow.com/a/14775184/995926). Это вам поможет? – rekire
. Любое предложение приветствуется :) – gorgi93
что такое сообщение с сервера? похоже, что вы пытаетесь выделить очень большое строковое сообщение, которое вызывает сбой –