浏览代码

Update README.md

Guy Blank 7 年前
父节点
当前提交
c01e1588fd
没有帐户链接到提交者的电子邮件
共有 1 个文件被更改,包括 29 次插入0 次删除
  1. 29
    0
      README.md

+ 29
- 0
README.md 查看文件

29
  * [Multipart/form upload](#user-content-multipartform-data-example--post-form-data-with-file-and-data)
29
  * [Multipart/form upload](#user-content-multipartform-data-example--post-form-data-with-file-and-data)
30
  * [Upload/Download progress](#user-content-uploaddownload-progress)
30
  * [Upload/Download progress](#user-content-uploaddownload-progress)
31
  * [Cancel HTTP request](#user-content-cancel-request)
31
  * [Cancel HTTP request](#user-content-cancel-request)
32
+ * [iOS Background Uploading](#user-content-ios-background-uploading)
32
  * [Android Media Scanner, and Download Manager Support](#user-content-android-media-scanner-and-download-manager-support)
33
  * [Android Media Scanner, and Download Manager Support](#user-content-android-media-scanner-and-download-manager-support)
33
  * [Self-Signed SSL Server](#user-content-self-signed-ssl-server)
34
  * [Self-Signed SSL Server](#user-content-self-signed-ssl-server)
34
  * [Transfer Encoding](#user-content-transfer-encoding)
35
  * [Transfer Encoding](#user-content-transfer-encoding)
475
 
476
 
476
 [See document and examples](https://github.com/joltup/rn-fetch-blob/wiki/Fetch-API#fetch-replacement)
477
 [See document and examples](https://github.com/joltup/rn-fetch-blob/wiki/Fetch-API#fetch-replacement)
477
 
478
 
479
+### iOS Background Uploading
480
+ Normally, iOS interrupts network connections when an app is moved to the background, and will throw an error 'Lost connection to background transfer service' when the app resumes. To continue the upload of large files even when the app is in the background, you will need to enable IOSUploadTask options.
481
+
482
+First add the following property to your AppDelegate.h:
483
+```
484
+@property (nonatomic, copy) void(^backgroundTransferCompletionHandler)();
485
+```
486
+Then add the following to your AppDelegate.m:
487
+```
488
+- (void)application:(UIApplication *)application
489
+handleEventsForBackgroundURLSession:(NSString *)identifier
490
+  completionHandler:(void (^)(void))completionHandler {
491
+  self.backgroundTransferCompletionHandler = completionHandler;
492
+}
493
+```
494
+The following example shows how to upload a file in the background:
495
+ ```js
496
+ RNFetchBlob
497
+    .config({
498
+        IOSBackgroundTask: true, // required for both upload
499
+        IOSUploadTask: true, // Use instead of IOSDownloadTask if uploading
500
+        uploadFilePath : 'file://' + filePath
501
+    })
502
+    .fetch('PUT', url, {
503
+            'Content-Type': mediaType
504
+        }, RNFetchBlob.wrap(filePath));
505
+```
506
+
478
 ### Android Media Scanner, and Download Manager Support
507
 ### Android Media Scanner, and Download Manager Support
479
 
508
 
480
 If you want to make a file in `External Storage` becomes visible in Picture, Downloads, or other built-in apps, you will have to use `Media Scanner` or `Download Manager`.
509
 If you want to make a file in `External Storage` becomes visible in Picture, Downloads, or other built-in apps, you will have to use `Media Scanner` or `Download Manager`.