У меня уже есть проект с Google Drive API.Я могу использовать диск Google, добавив следующую строку.
[ [ GIDSignIn sharedInstance ] setClientID:kClientID ];
GIDSignIn* signin = [ GIDSignIn sharedInstance ];
signin.delegate = self;
signin.uiDelegate = self;
signin.scopes = [NSArray arrayWithObjects:kGTLRAuthScopeDrive, kGTLRAuthScopeDriveMetadataReadonly, nil];
[signin signIn];
И авторизовать сервис дисков с помощью строки внутри входа: didSignInForUser:
self.driveService.authorizer = currentUser.authentication.fetcherAuthorizer;
С этим я могу использовать всеGTLDrive API хочу без проблем.Теперь я хочу добавить Firebase в мой проект.После добавления firebase я получил новый идентификатор клиента, к которому я получаю доступ как
[ GIDSignIn sharedInstance ].clientID = [ FIRApp defaultApp ].options.clientID;
Теперь мне нужно установить вышеуказанный clientID с помощью FIRApp.options.cliendID, иначе я не могу аутентифицировать firebase.
GIDAuthentication* authentication = user.authentication;
FIRAuthCredential* credential = [ FIRGoogleAuthProvider credentialWithIDToken:authentication.idToken accessToken:authentication.accessToken ];
[ [ FIRAuth auth ] signInAndRetrieveDataWithCredential:credential completion:^(FIRAuthDataResult* authResult, NSError* error)
{
} ];
Когда я использую идентификатор клиента FirAuth, мой диск Google не работает.И когда я использую идентификатор клиента GoogleDrive, firebase аутентификация не работает.Я знаю, что он работает так, как задумано, но как мне сделать так, чтобы обе службы работали для моего единственного приложения?