app_boot_starter 1.0.0 copy "app_boot_starter: ^1.0.0" to clipboard
app_boot_starter: ^1.0.0 copied to clipboard

a app start package to help handle start easy.

::logic::

easy handle app start load future task by implements AppStartRepository in initApp function, return your AppState. and fixError to handle start error

class AppStartRepositoryImpl implements AppStartRepository<AppState> {
  const AppStartRepositoryImpl();

  @override
  Future<AppState> initApp() async {

    /// 可以处理异步加载任务
    /// 返回初始化的 AppState
    await Future.delayed(const Duration(seconds: 1));
    if (_isErrorDebug) {
      // throw "App 初始化异常";
    }
    return AppState(0);
  }

  @override
  Future<void> fixError(Object error, {Object? extra}) async {
    await Future.delayed(const Duration(seconds: 1));
    // throw "App 无法修复";
    _isErrorDebug = false;
    return;
  }
}

::listen start action::

easy handle app start state by implements AppStartAction

class AppStartActionImpl implements AppStartAction<AppState> {

  const AppStartActionImpl();

  @override
  void onLoaded(BuildContext context, int cost, AppState state) {
    debugPrint("App启动耗时:$cost ms");
  }

  @override
  void onStartError(BuildContext context, Object error, StackTrace trace) {
    // TODO go start success
  }

  @override
  void onStartSuccess(BuildContext context) {
    // TODO go start success
  }
}
0
likes
120
pub points
79%
popularity

Publisher

verified publishertoly1994.com

a app start package to help handle start easy.

Documentation

API reference

License

MIT (LICENSE)

Dependencies

flutter, flutter_bloc

More

Packages that depend on app_boot_starter