Browse Source

Create sync method to App Group dir

Djorkaeff Alexandre 5 years ago
parent
commit
c98cff00b7
2 changed files with 26 additions and 0 deletions
  1. 14
    0
      fs.js
  2. 12
    0
      ios/RNFetchBlob/RNFetchBlob.m

+ 14
- 0
fs.js View File

@@ -135,6 +135,19 @@ function pathForAppGroup(groupName: string): Promise {
135 135
   return RNFetchBlob.pathForAppGroup(groupName)
136 136
 }
137 137
 
138
+/**
139
+ * Returns the path for the app group synchronous.
140
+ * @param  {string} groupName Name of app group
141
+ * @return {string} Path of App Group dir
142
+ */
143
+function syncPathAppGroup(groupName: string): string {
144
+  if (Platform.OS === 'ios') {
145
+    return RNFetchBlob.syncPathAppGroup(groupName);
146
+  } else {
147
+    return '';
148
+  }
149
+}
150
+
138 151
 /**
139 152
  * Wrapper method of readStream.
140 153
  * @param  {string} path Path of the file.
@@ -402,6 +415,7 @@ export default {
402 415
   writeFile,
403 416
   appendFile,
404 417
   pathForAppGroup,
418
+  syncPathAppGroup,
405 419
   readFile,
406 420
   hash,
407 421
   exists,

+ 12
- 0
ios/RNFetchBlob/RNFetchBlob.m View File

@@ -228,6 +228,18 @@ RCT_EXPORT_METHOD(pathForAppGroup:(NSString *)groupName
228 228
     }
229 229
 }
230 230
 
231
+#pragma mark - fs.syncPathAppGroup
232
+RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(syncPathAppGroup:(NSString *)groupName) {
233
+    NSURL *pathUrl = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:groupName];
234
+    NSString *path = [pathUrl path];
235
+
236
+    if(path) {
237
+        return path;
238
+    } else {
239
+        return @"";
240
+    }
241
+}
242
+
231 243
 #pragma mark - fs.exists
232 244
 RCT_EXPORT_METHOD(exists:(NSString *)path callback:(RCTResponseSenderBlock)callback) {
233 245
     [RNFetchBlobFS exists:path callback:callback];