Add ability to cancel android DownloadManager fetches (#502)
This just requires a bit of bookkeeping that keeps track of the task ID to the download manager ID.
Note that the behavior of the download manager remove method is to remove the download and the downloaded file, whether partial or complete.
https://developer.android.com/reference/android/app/DownloadManager.html#remove(long...)
* bump to 0.10.8
* Update PULL_REQUEST_TEMPLATE
* Fix #468 "Messy error returns: Sometimes a string, sometimes an Error object"
* Cleanup: remove an unused constant and duplicate method definitions
* Cleanup:
- fix minor errors in JSDoc comments, for example {string]} => {string}
- fix parameter name "encode" => "encoding" (more logical, and it says so in the function's JSDoc too)
- json-stream.js: split a looooong log message string constant into two parts and fix a typo ("maually"), and the type for objects is "Object" (capitalized) in Flow type annotations
* Fix a (Flow) type conflict - fixes issue #461
* NEEDS REVIEW - Attempt to fix some of issue #460 (Error message normalization)
Error messages reported by iOS and Android versions should be as similar as possible. Also, within the same system there should be consistency. This patch is an attempt to bring a LITTLE more of this consistency to the error messages. I also fixed some very few minor language issues, like "does not exist" (is the correct English). I tried keeping the changes to a minimum.
Background: In my project code I want to know when a file already exists (e.g. after calling fs.createFile), and the only way is to check the error message string that I get. It's bad if they differ between versions (createFileASCII and createFile) and then also between Android and iOS version. At least some core part of the string should be the same, so that I have something to match.
Ideally messages should come from a centralized easy (easier) to maintain file (for both iOS and Android), and ideally both systems should have the same errors and messages as far as possible.
* Fixes https://github.com/wkh237/react-native-fetch-blob/issues/467 by improving the write() function of write streams: By resolving with the RNFetchBlobWriteStream instance instead of with "undefined" writes can now be chained:
RNFetchBlob.fs.writeStream(PATH_TO_FILE, 'utf8', true)
.then((ofstream) => ofstream.write('foo'))
.then((ofstream) => ofstream.write('bar'))
.then((ofstream) => ofstream.write('foobar'))
.then((ofstream) => ofstream.close())
Reference: https://github.com/wkh237/react-native-fetch-blob/issues/467#issuecomment-321194693
* bump to 0.10.8
* Update PULL_REQUEST_TEMPLATE
* Fix #468 "Messy error returns: Sometimes a string, sometimes an Error object"
* Cleanup: remove an unused constant and duplicate method definitions
* Cleanup:
- fix minor errors in JSDoc comments, for example {string]} => {string}
- fix parameter name "encode" => "encoding" (more logical, and it says so in the function's JSDoc too)
- json-stream.js: split a looooong log message string constant into two parts and fix a typo ("maually"), and the type for objects is "Object" (capitalized) in Flow type annotations
* Fix a (Flow) type conflict - fixes issue #461
* NEEDS REVIEW - Attempt to fix some of issue #460 (Error message normalization)
Error messages reported by iOS and Android versions should be as similar as possible. Also, within the same system there should be consistency. This patch is an attempt to bring a LITTLE more of this consistency to the error messages. I also fixed some very few minor language issues, like "does not exist" (is the correct English). I tried keeping the changes to a minimum.
Background: In my project code I want to know when a file already exists (e.g. after calling fs.createFile), and the only way is to check the error message string that I get. It's bad if they differ between versions (createFileASCII and createFile) and then also between Android and iOS version. At least some core part of the string should be the same, so that I have something to match.
Ideally messages should come from a centralized easy (easier) to maintain file (for both iOS and Android), and ideally both systems should have the same errors and messages as far as possible.
Fix Compilation Error in React Native 0.47.0 (#452)
createJSModules was removedin React Native 0.47.0 and results in the attached Build Error.
removing @Override fixes build (didn't remove function because I don't know if it should be kept for downard compatability?)
```
node_modules/react-native-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobPackage.java:23: error: method does not override or implement a method from a supertype
@Override
^
1 error
Incremental compilation of 1 classes completed in 0.219 secs.
:react-native-fetch-blob:compileReleaseJavaWithJavac FAILED
FAILURE: Build failed with an exception.
```
Fix IOS request timeout issue #368 by change default request setting to defaultSessionConfiguration, and make backgroundSessionConfigurationWithIdentifier optional