[
https://issues.apache.org/jira/browse/CB-12460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15874386#comment-15874386
]
L Carvalho commented on CB-12460:
---------------------------------
The work around available at
http://stackoverflow.com/questions/40914978/using-cordova-writefile-for-a-20mb-blob-crashes-android
(writting using chunks) worked for me.
Anyway, it is just a workaround for this bug
> Memory leak storing files > 20 MB
> ---------------------------------
>
> Key: CB-12460
> URL: https://issues.apache.org/jira/browse/CB-12460
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin File
> Affects Versions: 3.5.0
> Environment: Android 6
> Reporter: L Carvalho
>
> Repro steps:
> 1. Download a file larger than 20 MB
> 2. Store it in local device using Cordova-file-api (any version)
> 3. When testing in Android device, the app crashes when writting the file blob
> Logcat output:
> E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 53011102
> byte allocation with 16777216 free bytes and 49MB until OOM
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.lang.StringFactory.newStringFromChars(Native Method)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.lang.AbstractStringBuilder.toString(AbstractStringBuilder.java:629)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.lang.StringBuilder.toString(StringBuilder.java:663)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONTokener.nextString(JSONTokener.java:211)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONTokener.nextValue(JSONTokener.java:107)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONTokener.readArray(JSONTokener.java:429)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONTokener.nextValue(JSONTokener.java:103)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONArray.<init>(JSONArray.java:92)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.json.JSONArray.<init>(JSONArray.java:108)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> org.apache.cordova.file.FileUtils$25.run(FileUtils.java:565)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
> 02-15 09:54:04.274 19648 19693 E AndroidRuntime: at
> java.lang.Thread.run(Thread.java:818)
> 02-15 09:54:04.276 600 2324 W ActivityManager: Force finishing activity
> MainActivity
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]