diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..50b360e --- /dev/null +++ b/android/app/src/main/res/values/strings.xml @@ -0,0 +1,5 @@ + + + + 730226042143-mv9dlpk9cesirgjh2o0f9hvsk0ks8r2f.apps.googleusercontent.com + \ No newline at end of file diff --git a/lib/feature/login/controllers/login_controller.dart b/lib/feature/login/controllers/login_controller.dart index 9fc790c..225a490 100644 --- a/lib/feature/login/controllers/login_controller.dart +++ b/lib/feature/login/controllers/login_controller.dart @@ -12,7 +12,9 @@ class LoginController extends GetxController { var isPasswordHidden = true.obs; var isLoading = false.obs; // Loading state for UI - final GoogleSignIn _googleSignIn = GoogleSignIn(); // Singleton instance + final GoogleSignIn _googleSignIn = GoogleSignIn( + scopes: ['email', 'profile', 'openid'], + ); // Singleton instance void togglePasswordVisibility() { isPasswordHidden.value = !isPasswordHidden.value; @@ -71,26 +73,27 @@ class LoginController extends GetxController { final GoogleSignInAuthentication googleAuth = await googleUser.authentication; - logC.i("Google Access Token: ${googleAuth.accessToken}"); - logC.i("Google ID Token: ${googleAuth.idToken}"); - if (googleAuth.idToken == null || googleAuth.idToken!.isEmpty) { - Get.snackbar("Error", "Google sign-in failed. No token received."); + Get.snackbar("Error", "Google sign-in failed. No ID Token received."); return; } + String idToken = googleAuth.idToken!; + logC.i("Google ID Token: $idToken"); + + // Send ID Token to backend var response = await http.post( Uri.parse("${APIEndpoint.baseUrl}${APIEndpoint.loginGoogle}"), - body: jsonEncode({"token": googleAuth.idToken}), + body: jsonEncode({"id_token": idToken}), // Ensure correct key headers: {"Content-Type": "application/json"}, ); if (response.statusCode == 200) { var data = jsonDecode(response.body); - String token = data['token']; + String backendToken = data['token']; // Token received from your backend Get.snackbar("Success", "Google login successful!"); - logC.i("Google Login Token: $token"); + logC.i("Backend Auth Token: $backendToken"); } else { var errorMsg = jsonDecode(response.body)['message'] ?? "Google login failed"; Get.snackbar("Error", errorMsg);