Feat: Fügt die Möglichkeit hinzu, einen Hintergrundtask sofort auszuführen
This commit is contained in:
@@ -3,6 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:isolate_manager/isolate_manager.dart';
|
import 'package:isolate_manager/isolate_manager.dart';
|
||||||
|
import 'package:uuid/uuid.dart';
|
||||||
import 'package:workmanager/workmanager.dart';
|
import 'package:workmanager/workmanager.dart';
|
||||||
|
|
||||||
import '../Tasks/BackgroundHandler/workers.dart';
|
import '../Tasks/BackgroundHandler/workers.dart';
|
||||||
@@ -50,4 +51,18 @@ class BackgroundTaskController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Führt den angegebenen Task sofort aus.
|
||||||
|
static Future<void> run(final String taskName) async {
|
||||||
|
if (!kIsWeb && Platform.isAndroid) {
|
||||||
|
final String uuid = const Uuid().v4();
|
||||||
|
unawaited(Workmanager().registerOneOffTask('$taskName-$uuid', taskName));
|
||||||
|
} else {
|
||||||
|
unawaited(IsolateManager.runFunction(runTask, {
|
||||||
|
'taskName': taskName,
|
||||||
|
'initialDelayMinutes': 0,
|
||||||
|
'frequencyMinutes': 0,
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user