title: Using cordova writeFile for a 20MB blob crashes (Android)
body: <p>I am trying to write a 20MB blob to file on an Android device. This code works fine for 4-5MB or so, but crashes for larger files.</p>
  
  <p><code>
  tp = cordova.file.dataDirectory; // for Android
  $cordovaFile.writeFile(tp, "temp-file.gif", blob,true);
  </code></p>
  
  <p>is there a way to handle larger blobs? thanks. I already have <code>android:largeHeap="true"</code> in the manifest.</p>
  
  <p>the logcat error:</p>
  
  <pre><code>E/JavaBinder(  809): !!! FAILED BINDER TRANSACTION !!!
  I/art     (  809): Background sticky concurrent mark sweep GC freed 62202(4MB) AllocSpace objects, 96(3MB) LOS objects, 20% free, 25MB/31MB, paused 20.488ms total 176.243ms
  E/JavaBinder(  809): !!! FAILED BINDER TRANSACTION !!!
  W/ActivityManager(  809): Exception thrown during pause
  W/ActivityManager(  809): android.os.TransactionTooLargeException
  W/ActivityManager(  809):   at android.os.BinderProxy.transactNative(Native Method)
  W/ActivityManager(  809):   at android.os.BinderProxy.transact(Binder.java:496)
  W/ActivityManager(  809):   at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:711)
  W/ActivityManager(  809):   at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:829)
  W/ActivityManager(  809):   at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2749)
  W/ActivityManager(  809):   at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2606)
  W/ActivityManager(  809):   at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2544)
  W/ActivityManager(  809):   at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:11721)
  W/ActivityManager(  809):   at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:11618)
  W/ActivityManager(  809):   at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:12330)
  W/ActivityManager(  809):   at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:11819)
  W/ActivityManager(  809):   at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86)
  </code></pre>