Network.getStatus() returns true but then fails with error code auth/network-request-failed

It seems there is a delay between Network.getStatus() returning true and when a network call works.
If I add a delay of a few seconds after it returns true it works fine.
Has anyone experienced this?

e.g.

 this.networkHandler = Network.addListener('networkStatusChange', (status) => this.ngZone.run(async () => {
      // console.log('status.connected', status.connected)
      if (status.connected !== this.subjectIsNetworkConnected.value) {
        this.subjectIsNetworkConnected.next(!!status.connected);
      }
    }));

const sub = this.stateService.isNetworkConnected$.subscribe(async isNetworkConnected => {
      this.isNetworkConnected = !!isNetworkConnected;

   if (this.isNetworkConnected) {
            setTimeout(async () => {
              await this.loadStuff();
            }, 5000);
  }
//   if (this.isNetworkConnected) {
//              await this.loadStuff();
//  }

});

Here’s a great explanation: javascript - Event listener for network connection change - Stack Overflow

So there is no way to do this on an iOS device?

I guess I will just leave in a delay.

I think this is occurring when a user opens the app after it being in background mode and it reconnects to the network.