Я пытаюсь реализовать Google_sign_in с моим текущим проектом.
Вот как я использую метод Signin: < /p>
final GoogleSignIn _googleSignIn = GoogleSignIn(
scopes: [
'email',
'profile',
],
);
String? _accessToken;
String? _refreshToken;
GoogleSignInAccount? _user;
String? get token => _accessToken;
bool get isAuthenticated => _accessToken != null;
Future signInWithGoogle() async {
try {
final account = await _googleSignIn.signIn();
final authentication = await account?.authentication;
final idToken = authentication?.idToken;
if (idToken != null) {
final response = await http.post(
Uri.parse('$baseAuthUrl/oauth2/google'),
headers: {'Content-Type': 'application/json'},
body: jsonEncode({'idToken': idToken}),
);
if (response.statusCode == 200) {
} else {
print('Error: ${response.body}');
}
}
} catch (e, stack) {
print('Google Sign-In error: $e');
print('Stacktrace: $stack');
}
}
< /code>
Я создал идентификатор клиента OAuth 2.0 с правильным отпечатком пальца и именем пакета. Когда я вызову метод SigniNwithGoogle, мои учетные данные будут напечатаны, но iDtoken всегда нулевой. defaultConfig {
applicationId "com.example.ranger"
minSdkVersion 21
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
< /code>
Я также добавил пакет в свой AndroidManifest, потому что его не было в нем < /p>
< /code>
Но он все еще не работает. Чего здесь не хватает? Есть ли дополнительные настройки?
Подробнее здесь: https://stackoverflow.com/questions/796 ... th-flutter