init_sdk.dart 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import 'dart:io';
  2. import 'package:app_flowy/startup/launcher.dart';
  3. import 'package:app_flowy/startup/startup.dart';
  4. import 'package:path_provider/path_provider.dart';
  5. import 'package:flowy_sdk/flowy_sdk.dart';
  6. import 'package:flutter/material.dart';
  7. class InitRustSDKTask extends LaunchTask {
  8. @override
  9. LaunchTaskType get type => LaunchTaskType.dataProcessing;
  10. @override
  11. Future<void> initialize(LaunchContext context) async {
  12. WidgetsFlutterBinding.ensureInitialized();
  13. Directory directory = await getApplicationDocumentsDirectory();
  14. final documentPath = directory.path;
  15. return Directory('$documentPath/flowy').create().then((Directory directory) async {
  16. switch (context.env) {
  17. case IntegrationEnv.dev:
  18. // await context.getIt<FlowySDK>().init(Directory('./temp/flowy_dev'));
  19. await context.getIt<FlowySDK>().init(directory);
  20. break;
  21. case IntegrationEnv.pro:
  22. await context.getIt<FlowySDK>().init(directory);
  23. break;
  24. default:
  25. assert(false, 'Unsupported env');
  26. }
  27. });
  28. }
  29. }