code: public String getToken() throws IOException, GoogleAuthException {
      if (backOff != null) {
        backOff.reset();
      }
  
      while (true) {
        try {
          return GoogleAuthUtil.getToken(context, accountName, scope);
        } catch (IOException e) {
          // network or server error, so retry using back-off policy
          try {
            if (backOff == null || !BackOffUtils.next(sleeper, backOff)) {
              throw e;
            }
          } catch (InterruptedException e2) {
            // ignore
          }
        }
      }
    }
docs: Returns an OAuth 2.0 access token.
  
  <p>
  Must be run from a background thread, not the main UI thread.
  </p>