Интеграция входа через Google
Интегрируйте вход через Google в приложение, чтобы пользователи могли легко проходить аутентификацию с помощью своих аккаунтов Google
«Интеграция входа через Google» — бесплатный урок Firebase Auth & Realtime Database Apps на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Firebase Auth & Realtime Database Apps, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Firebase Auth & Realtime Database Apps содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Welcome to Google Sign-In
Google Sign-In is a secure way to let users log into your app using their Google accounts. It's fast, convenient, and users trust it.
This lesson will guide you through integrating Google Sign-In with Firebase Authentication, making your app more accessible.
Why Google Sign-In?
Using Google Sign-In offers several benefits:
- Ease of Use: Users don't need to create new passwords.
- Security: Leverages Google's robust authentication system.
- Trust: Users are familiar with the Google sign-in flow.
- Developer Simplicity: Firebase handles much of the complexity.
Integration Steps Overview
Integrating Google Sign-In with Firebase involves a few key steps:
- Enable Google as a provider in Firebase.
- Configure your app's Google Sign-In client.
- Handle the user's sign-in flow.
- Exchange the Google credential for a Firebase credential.
- Sign in the user to Firebase.
Enable Google in Firebase
First, you need to tell Firebase that you'll be using Google Sign-In.
Go to your Firebase Console, select your project, then navigate to Authentication > Sign-in method. Find 'Google' and enable it. Make sure to save your changes!
Web Client ID for Auth
Even for mobile apps, Firebase often uses a Web Client ID to securely authenticate with Google's backend services. This ID ensures that the Google token received by your app can be verified by Firebase.
After enabling Google Sign-In in the Firebase Console, Firebase automatically creates and links a Web Client ID for you. You'll typically find this in your project's `google-services.json` (Android) or `GoogleService-Info.plist` (iOS) file.
Configure Google Sign-In Client
In your application, you need to configure the Google Sign-In client. This setup includes requesting the user's ID token, which Firebase will use for authentication.
Here's a conceptual example of how you'd set up these options:
class GoogleSignInOptions {
boolean requestIdToken;
String webClientId;
GoogleSignInOptions(String clientId) {
this.webClientId = clientId;
}
GoogleSignInOptions requestIdToken(boolean value) {
this.requestIdToken = value;
return this;
}
String build() {
return "Options(ID_Token:" + requestIdToken + ", ClientID:" + webClientId + ")";
}
}
public class Main {
public static void main(String[] args) {
String WEB_CLIENT_ID = "YOUR_WEB_CLIENT_ID.apps.googleusercontent.com";
GoogleSignInOptions gso = new GoogleSignInOptions(WEB_CLIENT_ID)
.requestIdToken(true); // Request ID token for Firebase Auth
System.out.println("Google Sign-In options configured:");
System.out.println(gso.build());
}
}Initiate Sign-In Flow
Once the Google Sign-In client is configured, you'll typically have a "Sign in with Google" button. When the user taps this button, you'll launch the Google Sign-In intent to prompt the user to choose their Google account.
After the user selects an account, Google returns an authentication result, which includes the ID token we requested earlier.
Authenticate with Firebase
With the Google ID token in hand, the next step is to create a Firebase credential using this token and then sign in to Firebase Authentication.
Firebase handles the verification of the Google token and creates a new user or links to an existing one.
class GoogleAuthProvider {
static String getCredential(String idToken) {
return "GoogleCredential(" + idToken.substring(0, 10) + "...)";
}
}
class FirebaseAuth {
void signInWithCredential(String credential) {
System.out.println("Firebase Auth: Signing in with " + credential);
// Simulate success
System.out.println("User signed in successfully!");
}
}
public class Main {
public static void main(String[] args) {
// Imagine this ID token comes from Google Sign-In result
String googleIdToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
// 1. Create a Firebase credential from the Google ID token
String credential = GoogleAuthProvider.getCredential(googleIdToken);
// 2. Sign in to Firebase with the credential
FirebaseAuth auth = new FirebaseAuth();
auth.signInWithCredential(credential);
}
}Check Your Understanding
What is the primary piece of information obtained from Google Sign-In that Firebase uses to authenticate a user?
Google Sign-In Summary
You've learned how to integrate Google Sign-In with Firebase Authentication! This powerful combination provides a secure and user-friendly way for users to access your application.
Key takeaways:
- Enable Google as a provider in Firebase.
- Configure your app's Google Sign-In client to request an ID token.
- Use the obtained ID token to create a Firebase credential.
- Sign in to Firebase Auth with that credential.
Next, we'll explore other social login options like Facebook and GitHub!
Часто задаваемые вопросы
Урок «Интеграция входа через Google» бесплатный?
Да — полный текст урока «Интеграция входа через Google» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Firebase Auth & Realtime Database Apps, подпишись на CoddyKit PRO. Курс Firebase Auth & Realtime Database Apps содержит 4 уроков всего.
Чему я научусь в уроке «Интеграция входа через Google»?
Интегрируйте вход через Google в приложение, чтобы пользователи могли легко проходить аутентификацию с помощью своих аккаунтов Google Ты практикуешь Firebase Auth & Realtime Database Apps с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Firebase Auth & Realtime Database Apps?
Предыдущий опыт не требуется. Firebase Auth & Realtime Database Apps на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Интеграция входа через Google»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Firebase Auth & Realtime Database Apps?
Да. Каждый урок Firebase Auth & Realtime Database Apps включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Интеграция входа через Google
- Аутентификация через Facebook и GitHub
- Анонимная и настраиваемая аутентификация
- Интеграция входа через Apple