Skip to content

Latest commit

 

History

History
34 lines (29 loc) · 1.42 KB

File metadata and controls

34 lines (29 loc) · 1.42 KB

FlowySDK

FlowySDK works as the AppFlowy application Back-end. It will be initialized before the application launch. Check out the initialization sequence diagram shown below.

file : flowy_sdk.plantuml

  1. FlowyRunner will get called when the entry point, the main function, got called.
  2. FlowyRunner call initialize function on each task that registers as a LaunchTask one by one.
  3. InitRustSDKTask calls the init function and passes the working directory into FlowySDK.
     getIt<FlowySDK>().init(directory)
    The directory is different according to the IntegrationMode, which means running AppFlowy on developing mode will not alter the data on release mode.
    1. IntegrationMode.release
     Directory documentsDir = await getApplicationDocumentsDirectory();
     final directory = Directory('${documentsDir.path}/flowy')
    1. IntegrationMode.develop
     Directory documentsDir = await getApplicationDocumentsDirectory();
     final directory = Directory('${documentsDir.path}/flowy_dev')
    1. IntegrationMode.test
     final directory = Directory("${Directory.current.path}/.sandbox")
  4. InitAppWidgetTask initialize the ApplicationWidget and call runApp function.
  5. InitPlatformServiceTask start the NetworkListener.

WIP

typing...💬️