init_sdk.dart 975 B

1234567891011121314151617181920212223242526272829303132
  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. switch (context.env) {
  11. case IntegrationEnv.develop:
  12. case IntegrationEnv.release:
  13. Directory directory = await getApplicationDocumentsDirectory();
  14. return Directory('${directory.path}/flowy').create().then(
  15. (Directory directory) async {
  16. await context.getIt<FlowySDK>().init(directory);
  17. },
  18. );
  19. case IntegrationEnv.test:
  20. await context.getIt<FlowySDK>().init(testDir());
  21. break;
  22. default:
  23. assert(false, 'Unsupported env');
  24. }
  25. }
  26. Directory testDir() {
  27. return Directory("${Directory.current.path}/.appflowy_dev");
  28. }
  29. }