rust_sdk.dart 1007 B

1234567891011121314151617181920212223242526272829
  1. import 'dart:io';
  2. import 'package:app_flowy/startup/startup.dart';
  3. import 'package:path_provider/path_provider.dart';
  4. import 'package:flowy_sdk/flowy_sdk.dart';
  5. class InitRustSDKTask extends LaunchTask {
  6. @override
  7. LaunchTaskType get type => LaunchTaskType.dataProcessing;
  8. @override
  9. Future<void> initialize(LaunchContext context) async {
  10. await appFlowyDocumentDirectory().then((directory) async {
  11. await context.getIt<FlowySDK>().init(directory);
  12. });
  13. }
  14. }
  15. Future<Directory> appFlowyDocumentDirectory() async {
  16. switch (integrationEnv()) {
  17. case IntegrationMode.develop:
  18. Directory documentsDir = await getApplicationDocumentsDirectory();
  19. return Directory('${documentsDir.path}/flowy_dev').create();
  20. case IntegrationMode.release:
  21. Directory documentsDir = await getApplicationDocumentsDirectory();
  22. return Directory('${documentsDir.path}/flowy').create();
  23. case IntegrationMode.test:
  24. return Directory("${Directory.current.path}/.sandbox");
  25. }
  26. }