import 'package:injectable/injectable.dart'; import '../../utils/async_util.dart'; import '../../utils/atmob_log.dart'; import '../../utils/http_handler.dart'; import '../api/atmob_api.dart'; import '../api/request/config_request.dart'; import '../api/response/config_response.dart'; @lazySingleton class ConfigRepository { final tag = "ConfigRepository"; final AtmobApi atmobApi; ConfigRepository(this.atmobApi) { AtmobLog.d(tag, '$tag....init'); refreshConfig(); } // 更新配置的值 void refreshConfig() { AsyncUtil.retry( () => requestConfigsData(), Duration(seconds: 3), maxRetry: 100, ).then((configsResponse) { final list = configsResponse.list; if (list == null || list.isEmpty) { return; } AtmobLog.d(tag, 'refreshConfig....list: $list'); }); } /// 获取配置信息 Future requestConfigsData() { return atmobApi .confs(ConfigRequest(confCodes: ['intimacy', 'default_avatar'])) .then(HttpHandler.handle(true)); } }