Я пытаюсь создать вход с опцией как для Facebook, так и для Google.Facebook только предлагает пользователю продолжить, как будто у пользователя не установлено приложение Facebook.Google, с другой стороны, предлагает пользователю выбрать учетную запись только в первый раз.Другие последующие входы просто войдут в систему автоматически.Как мне включить эти опции.Я также интегрировал провайдеров входа в Firebase.[! [Нечто подобное тому, чего я хочу достичь при каждом входе в Google] [1]] [1]
Я использую собственную базу реагирования, реагируюnative google, войдите в систему и отреагируйте на native fbsdk.
Вот мой код для входа в Google
googleLogin = async () => {
try {
// Add any configuration settings here:
const data = await GoogleSignin.signIn();
// create a new firebase credential with the token
const credential = firebase.auth.GoogleAuthProvider.credential(data.idToken, data.accessToken)
// login with credential
const currentUser = await firebase.auth().signInAndRetrieveDataWithCredential(credential);
Actions.home()
console.warn(JSON.stringify(currentUser.user.toJSON()));
} catch (e) {
console.warn("Error " + e);
}
}
Вот мой код для входа в Facebook
facebookLogin = () => {
LoginManager.logInWithReadPermissions(['public_profile', 'email'])
.then((result) => {
if (result.isCancelled) {
return Promise.reject(new Error('The user cancelled the request'));
}
// Retrieve the access token
return AccessToken.getCurrentAccessToken();
})
.then((data) => {
// Create a new Firebase credential with the token
const credential = firebase.auth.FacebookAuthProvider.credential(data.accessToken);
// Login with the credential
return firebase.auth().signInWithCredential(credential);
})
.then((user) => {
// If you need to do anything with the user, do it here
// The user will be logged in automatically by the
// `onAuthStateChanged` listener we set up in App.js earlier
})
.catch((error) => {
const { code, message } = error;
// For details of error codes, see the docs
// The message contains the default Firebase string
// representation of the error
});
}