Я работаю в приложении с использованием Ioni c 4. Одним из требований является то, что пользователь может войти в систему с помощью Facebook. Я следую этому уроку: https://www.djamware.com/post/5d949fa24ca99c5ee51238ef/ionic-4-tutorial-facebook-login-example, Facebook и работает почти идеально.
Я использую это приложение: https://github.com/jeduan/cordova-plugin-facebook4
При тестировании приложения я обнаружил, что вход в систему завершается неудачно, когда на устройстве установлено собственное приложение Facebook android.
Я повторил эксперимент на трех разных устройствах.
Здесь это процесс, когда приложение Facebook не установлено на устройстве:
Затем, когда я нажимаю кнопку входа в Facebook, Facebook окно входа в систему выглядит идеально:
Теперь , когда я пытался сделать то же самое, когда приложение facebook установлено на устройстве происходит следующее:
Я нажимаю на кнопку входа в Facebook
Появится окно входа в приложение facebook, и я вошел в приложение facebook.
Но это ошибка показывает:"При входе в это приложение произошла ошибка. Пожалуйста, попробуйте позже "
Я удалил приложение facebook, и логин работает снова.
Это мой логин код функции Facebook:
fbLogin() {
this.platform.ready().then(() => {
if (this.platform.is('android')) {
this.fb.login(['public_profile', 'user_friends', 'email'])
.then(res => {
if (res.status === 'connected') {
this.isLoggedIn = true;
this.getUserDetail(res.authResponse.userID);
this.router.navigateByUrl("/tutorial");
} else {
this.isLoggedIn = false;
}
})
.catch(e => console.log('Error logging into Facebook', e));
}
});
}
Я нашел это аналогичное приложение с другим плагином входа в Facebook для реакции: https://github.com/facebook/react-native-fbsdk/issues/633
Их «обходной путь» заключался в том, чтобы заставить приложение вызывать обычное окно входа в Facebook, например:
if (Platform.OS === "android") {
LoginManager.setLoginBehavior("web_only")
}
Есть ли подобный «обходной путь» или способ заставить использовать окно входа в Facebook без вызова приложения facebook?
Спасибо.