Browse Source

fix(mobile): Fix background backup on iOS (#4038)

Alex 1 year ago
parent
commit
47ea47ce14

+ 11 - 0
mobile/.vscode/settings.json

@@ -0,0 +1,11 @@
+{
+  "dart.flutterSdkPath": ".fvm/flutter_sdk",
+  // Remove .fvm files from search
+  "search.exclude": {
+    "**/.fvm": true
+  },
+  // Remove from file watching
+  "files.watcherExclude": {
+    "**/.fvm": true
+  }
+}

+ 5 - 1
mobile/lib/modules/backup/services/backup.service.dart

@@ -218,6 +218,9 @@ class BackupService {
     bool anyErrors = false;
     bool anyErrors = false;
     final List<String> duplicatedAssetIds = [];
     final List<String> duplicatedAssetIds = [];
 
 
+    // DON'T KNOW WHY BUT THIS HELPS BACKGROUND BACKUP TO WORK ON IOS
+    await PhotoManager.requestPermissionExtend();
+
     for (var entity in assetList) {
     for (var entity in assetList) {
       try {
       try {
         if (entity.type == AssetType.video) {
         if (entity.type == AssetType.video) {
@@ -248,7 +251,8 @@ class BackupService {
 
 
           req.fields['deviceAssetId'] = entity.id;
           req.fields['deviceAssetId'] = entity.id;
           req.fields['deviceId'] = deviceId;
           req.fields['deviceId'] = deviceId;
-          req.fields['fileCreatedAt'] = entity.createDateTime.toUtc().toIso8601String();
+          req.fields['fileCreatedAt'] =
+              entity.createDateTime.toUtc().toIso8601String();
           req.fields['fileModifiedAt'] =
           req.fields['fileModifiedAt'] =
               entity.modifiedDateTime.toUtc().toIso8601String();
               entity.modifiedDateTime.toUtc().toIso8601String();
           req.fields['isFavorite'] = entity.isFavorite.toString();
           req.fields['isFavorite'] = entity.isFavorite.toString();