getToken method

  1. @override
Future<String?> getToken()
override

Implementation

@override
Future<String?> getToken() async {
  try {
    if (Platform.isIOS) {
      _checkApnsToken ??= Timer.periodic(
        const Duration(seconds: 5),
        (_) async {
          final apnsToken = await instance?.getAPNSToken();

          if (apnsToken != null) {
            _checkApnsToken?.cancel();
            await instance?.getToken();
          }
        },
      );
    }

    _token = await instance?.getToken();
    _streamControllerToken.add(_token);

    SeedKitLoggerService.i("get PUSH_TOKEN: $_token");

    return _token;
  } catch (e, s) {
    SeedKitLoggerService.e("getToken ERROR: $e", stackTrace: s);
    return null;
  }
}