У меня есть собственное приложение, которое использует вход в Google. В настоящее время я могу войти в систему с помощью одной из своих учетных записей Google, на которой зарегистрирован мой мобильный телефон, но мне нужно сделать OAuth для другой учетной записи Google. в моем стеке аккаунтов Google это для доступа к API. Мне нужен serverAuthToken для дополнительных аккаунтов
Библиотека, которую я использую для входа в Google - https://github.com/react-native-community/google-signin
Что я делал до сих пор:
const firebaseGoogleLogin = async () => {
try {
await GoogleSignin.hasPlayServices();
const userInfo = await GoogleSignin.signIn();
if (userInfo) {
await storeToken(userInfo);
// eslint-disable-next-line no-console
console.log('User info retrieved during login', userInfo);
}
// create a new firebase credential with the token
// eslint-disable-next-line max-len
const credential = firebase.auth.GoogleAuthProvider.credential(userInfo.idToken, userInfo.accessToken);
// login with credential
// eslint-disable-next-line no-unused-vars
const firebaseUserCredential = await firebase.auth().signInWithCredential(credential);
console.log('Logged in')
} catch (error) {
if (error.code === statusCodes.SIGN_IN_CANCELLED) {
console.log('sign in cancelled', error);
} else if (error.code === statusCodes.IN_PROGRESS) {
console.log('signin in progress error', error);
} else if (error.code === statusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
console.log('play services are not available or outdated', error);
} else {
console.log('some other error occurred', error);
}
}
};
Результат для кода выше:
Это код, который я использовал для входа в свою основную учетную запись Google, после входа я при запуске модальных сервисов воспроизведения для входа с другими учетными записями, используя описанное выше, но модальный закрывается с загрузкой se c и закрывается, показывает мне Logged in
в журнале, поскольку я уже вошел в систему, в сервисах воспроизведения автоматически Обойти возможность выбора учетной записи
Вышеуказанная проблема возникает только в android, ios, кажется, нормально даже после входа в систему с учетной записью
* 1 023 * Попытка взломать, если нет способа для авторизации нескольких учетных записей, так как учетная запись, уже вошедшая в нее, обходит модал службы воспроизведения, я думаю выйти из системы пользователя, как только он вошел в мое приложение (уровень процесса ) а внутри основной деятельности у меня могут быть сервисы игры еще? это правильный способ сделать!