appCheckToken function
The current token, for attaching to something this library does not speak — a backend of your own.
forceRefresh asks the provider again rather than answering from cache.
Implementation
Future<AppCheckToken> appCheckToken({bool forceRefresh = false}) {
final completer = Completer<AppCheckToken>();
final receive = RawReceivePort();
receive.handler = (Object? message) {
receive.close();
try {
completer.complete(_readToken(message! as Uint8List));
} on Object catch (e) {
completer.completeError(e);
}
};
final rc = fdbAcGetToken(forceRefresh ? 1 : 0, receive.sendPort.nativePort);
if (rc != 0) {
receive.close();
return Future.error(StateError('appCheckToken before initAppCheck ($rc)'));
}
return completer.future;
}