Я использую GoogleAuthorizationCodeFlow для генерации учетных данных.
GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(
HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES)
.setDataStoreFactory(databaseDataStoreFactoryService)
.setAccessType("offline")
.build()
, где "databaseDataStoreFactoryService" - это DataStoreFactory , который вы предоставляете для сохранения и получения токенов Google где-либо.