Hi Justin,
I apologize for the extremely long time it took for me to get back to you. I had this email in my inbox and I just never responded to it. I hope you are still working on your Firebase project and have been able to figure out a workaround for this problem.
As for your question about logging in every hour, it does unfortunately mean sending them back to Google to login every hour. We know this is not ideal, but it should be relatively seamless if you use authWithOAuthRedirect() and the user is only logged into one Google account at a time. Otherwise, this will definitely be an annoyance for users.
I did some investigation into long-lived access tokens for all of our providers, including Google. Google only returns a one hour access token when you go through their login flow. We do also receive a refresh token the very first time a user logs in. This refresh token, along with the apps ID and secret, can be used to generate a new, one hour access token. You can continue to do this for as long as you want, always generating a new hour long access token. Since the request requires the app's ID and secret, it must be done from your own server, not from the client.
At this point, we do not return the refresh token to you as a developer. We discussed internally if this is something we want to return, and we have decided against it. The main selling point of our login feature is that you don't need to set up your own server to use it. However, in order to use the refresh token properly and securely, you would need to have your own server. By that point, you mind as well have done the whole OAuth process yourself. As a result, we do not have plans to send back the refresh token.
We have ideas in the longterm to potentially store access tokens for all users and providers and keep them up-to-date automatically for you, so you don't have to do any work. I don't know if this will actually happen or when it will land, but it is something we are considering. Keep tuned!
Let me know if you have any followup questions. I'd be happy to discuss this further. I promise I'll be more responsive to your next email!
Jacob