initialize method
Implementation
Future<void> initialize() async {
if (_isInitialized) return;
if (_initCompleter != null) {
await _initCompleter!.future;
return;
}
_initCompleter = Completer<void>();
try {
await _loadPackageInfo();
await _loadDeviceId();
_isInitialized = true;
_logger?.debug(
this,
'AppInfoProvider initialized: appName=$_appName, appVersion=$_appVersion, packageName=$_packageName, deviceId=$_deviceId',
);
} catch (e, st) {
_logger?.error(
this,
'Failed to initialize AppInfoProvider',
error: e,
stackTrace: st,
);
} finally {
_initCompleter!.complete();
}
}