При использовании пакета входа на Facebook в приложении, даже когда я нажимаю в другом месте экрана, а не в поле идентификатора, приложение переходит на другую страницу. Эта проблема присутствует в Google Войти также. Ниже приведена функция, которая вызывается при нажатии кнопки входа.
loginfb() async {
try {
final result = await InternetAddress.lookup('google.com');
if (result.isNotEmpty && result[0].rawAddress.isNotEmpty) {
print('connected');
signInWithFacebook().whenComplete(() {
createOdooContact();
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) {
return ProgressPage();
},
),
);
});
}
} on SocketException catch (_) {
print('Not Connected');
displayCancelDialog();
}
}
Ниже указана функция входа в Facebook
//* Login the app using Facebook credentials
Future<String> signInWithFacebook() async {
var facebookLoginResult =
await facebookLogin.logInWithReadPermissions(['email']);
var accessToken = facebookLoginResult.accessToken;
if (facebookLoginResult.status == FacebookLoginStatus.loggedIn) {
displayProf();
final AuthCredential credential = FacebookAuthProvider.getCredential(
accessToken: accessToken.token,
);
final AuthResult authResult =
(await _auth.signInWithCredential(credential));
final FirebaseUser user = authResult.user;
assert(user.email != null);
assert(user.displayName != null);
assert(!user.isAnonymous);
assert(await user.getIdToken() != null);
assert(!user.isAnonymous);
assert(await user.getIdToken() != null);
if (name.contains(" ")) {
name = name.substring(0, name.indexOf(" "));
}
final FirebaseUser currentUser = await _auth.currentUser();
assert(user.uid == currentUser.uid);
return 'signInWithFacebook succeeded: $user';
}
}