1. Présentation
La vérification du numéro de téléphone Firebase (Firebase PNV ou FPNV) est une méthode plus rapide et plus sécurisée pour valider les numéros de téléphone. Contrairement à la validation par SMS, qui exige que les utilisateurs finaux reçoivent et saisissent un code à partir d'un message, la validation du numéro de téléphone Firebase fonctionne en obtenant le numéro de téléphone attribué à la carte SIM de l'appareil directement auprès de l'opérateur connecté, en un seul geste. Cela réduit les frictions pour l'utilisateur final, améliore la fiabilité en ne dépendant pas de la réception des messages SMS et élimine les vecteurs d'utilisation abusive couramment exploités lors de l'utilisation des SMS.

Dans cet atelier de programmation, vous allez apprendre à créer un agent vocal d'IA "Restaurant Finder" qui utilise la vérification du numéro de téléphone Firebase pour valider le numéro de téléphone de l'utilisateur final avant de confirmer une réservation de table.
Prérequis
- La dernière version d'Android Studio
- Un appareil Android ou un émulateur avec le niveau d'API 26 ou supérieur
Points abordés
- Configurez un projet Firebase avec Firebase PNV.
- Utilisez Firebase PNV en mode test pour créer des prototypes sans compte de facturation ni carte SIM réelle.
- Intégrez le SDK Firebase PNV dans une application Android.
- Validez un numéro de téléphone à l'aide de l'API à appel unique.
- (Facultatif) Préparez votre application pour la production.
2. Configurer l'exemple de projet
Créer un projet Firebase
- Connectez-vous à la console Firebase à l'aide de votre compte Google.
- Cliquez sur le bouton pour créer un projet, puis saisissez un nom de projet (par exemple,
Tera Bites).
- Cliquez sur Continuer.
- Si vous y êtes invité, lisez et acceptez les Conditions d'utilisation de Firebase, puis cliquez sur Continuer.
- (Facultatif) Activez l'assistance IA dans la console Firebase (appelée "Gemini dans Firebase").
- Pour cet atelier de programmation, vous n'avez pas besoin de Google Analytics. Désactivez donc l'option Google Analytics.
- Cliquez sur Créer un projet, attendez que votre projet soit provisionné, puis cliquez sur Continuer.
Télécharger le code
Exécutez les commandes suivantes pour cloner l'exemple de code de cet atelier de programmation :
git clone https://github.com/GoogleCloudPlatform/devrel-demos
cd codelabs/firebase-pnv-android
Ouvrez le répertoire firebase-pnv-android dans Android Studio.
Associer votre projet Android à Firebase
- Dans la console Firebase, au centre de la page de présentation du projet, cliquez sur l'icône Android ou sur Ajouter une application pour lancer le processus de création d'application.
- Dans le champ Nom du package Android, saisissez le nom du package de l'application :
com.google.firebase.example.fpnv. - Cliquez sur Enregistrer l'application.
- Suivez les instructions pour télécharger le fichier
google-services.jsonet déplacez-le dans le répertoireapp/du code que vous venez de télécharger. - Cliquez sur Suivant.
Activer Firebase AI Logic
Cet atelier de programmation utilise Firebase AI Logic pour alimenter l'agent vocal d'IA. Pour activer Firebase AI Logic dans votre projet Firebase :
- Dans la console Firebase, accédez à Services d'IA > Logique d'IA.
- Cliquez sur Commencer.
- Choisissez d'utiliser l'API Gemini Developer en cliquant sur Premiers pas avec cette API.
- Cliquez sur Activer l'API, puis confirmez.
3. Configurer Firebase PNV en mode test
Le mode test vous permet de valider un faux numéro de téléphone à l'aide d'un jeton de test pour le développement.
Participer au programme bêta public des services système de Google
Pour utiliser le mode test, enregistrez votre appareil de développement sur le canal bêta des services système Google :
- Accédez à la page Test d'applications Android – Services système Google.
- Cliquez sur Devenir un testeur.
Vous êtes désormais testeur bêta pour les services système de Google.
Ajouter la dépendance Firebase PNV
Dans la base de code de votre projet Android, les dépendances des bibliothèques Firebase PNV et Firebase AI Logic sont déjà définies dans le fichier :
[versions]
# ... other dependencies
firebaseBom = "34.13.0"
[libraries]
# ... other libraries
firebase-bom = { module = "com.google.firebase:firebase-bom", version.ref = "firebaseBom" }
firebase-ai-logic = { module = "com.google.firebase:firebase-ai" }
firebase-pnv = { module = "com.google.firebase:firebase-pnv" }
Dans le fichier Gradle de votre module (au niveau de l'application, généralement ), déclarez la dépendance pour la bibliothèque Firebase PNV :
dependencies {
// ... other dependencies
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.ai.logic)
// Add this line
implementation(libs.firebase.pnv)
// ...
}
Générer un jeton de test
- Dans la console Firebase, accédez à Sécurité > Validation du numéro de téléphone.
- Sélectionnez l'onglet Test.
- Sélectionnez le code pays de votre numéro de téléphone de test, puis cliquez sur Générer un jeton.
- Copiez la chaîne de jeton générée.
Activer la session de test dans votre code
- De retour dans votre projet Android, ouvrez le fichier
ChatViewModel.ktet recherchez la fonctionverifyPhoneNumber(). - Initialisez le client
FirebasePhoneNumberVerificationet activez la session de test en collant le jeton que vous avez copié depuis la console Firebase :suspend fun verifyPhoneNumber(): String { // Initialize Firebase Phone Number Verification val fpnv = FirebasePhoneNumberVerification.getInstance() // Enable Test session fpnv.enableTestSession("PASTE_THE_TOKEN_YOU_COPIED_IN_PREV_STEP") // Trigger the Firebase PNV pop up val response = fpnv.getVerifiedPhoneNumber(context!!).await() val phoneNumber = response.getPhoneNumber() return phoneNumber }
4. Exécuter l'application
Maintenant que vous avez implémenté Firebase PNV, il est temps d'exécuter l'application.
- Dans Android Studio, cliquez sur Run (Exécuter) pour lancer l'application dans l'émulateur Android ou sur un appareil physique.
- Une fois l'application lancée, un écran semblable à celui-ci devrait s'afficher :

- Cliquez sur Démarrer l'appel, puis présentez-vous.

- L'agent vocal IA devrait vous demander des informations sur la réservation. Une fois que vous avez fourni les informations, vous devriez être invité à regarder votre écran pour valider votre numéro de téléphone :

- Une fois l'opération terminée, l'écran de validation s'affiche :

- Cliquez sur Mettre fin à la session pour terminer l'appel.
5. (Facultatif) Passer au mode Production
Passer à un forfait Firebase supérieur
Pour utiliser Firebase PNV en mode production, votre projet Firebase doit être associé à un compte de facturation Cloud et utiliser le forfait Blaze avec paiement à l'usage.
- Un compte de facturation Cloud nécessite un mode de paiement, comme une carte de crédit.
- Lors de promotions spéciales ou si vous effectuez cet atelier de programmation dans le cadre d'un événement, des crédits Google Cloud peuvent être disponibles (par exemple, la bannière en haut de cette page).
- Si vous débutez avec Firebase et Google Cloud, vérifiez si vous êtes éligible à un crédit de 300 $ et à un compte de facturation Cloud pour un essai sans frais.
Pour passer à la formule Blaze, procédez comme suit :
- Dans la console Firebase, sélectionnez Passer à une formule supérieure.
- Sélectionnez le forfait Blaze. Suivez les instructions à l'écran pour associer un compte de facturation Cloud à votre projet.
- Si vous avez demandé des crédits Google Cloud pour cet atelier de programmation, le compte de facturation s'appelle probablement
Google Cloud Platform Trial Billing AccountouMy Billing Account. - Si vous avez dû créer un compte de facturation Cloud lors de cette mise à niveau, vous devrez peut-être revenir au processus de mise à niveau dans la console Firebase pour la finaliser.
- Si vous avez demandé des crédits Google Cloud pour cet atelier de programmation, le compte de facturation s'appelle probablement
Activer le mode production Firebase PNV
- Ajoutez l'empreinte SHA-256 de votre application :
- Dans la console Firebase, accédez à Paramètres > Général.
- Faites défiler l'écran vers le bas jusqu'à la carte Vos applications, puis recherchez votre application Android.
- Dans le champ Empreintes de certificat SHA, ajoutez votre empreinte SHA-256. Pour savoir comment obtenir l'empreinte SHA-256 de votre application, consultez Authentifier votre client.
- Revenez à Sécurité > Validation du numéro de téléphone.
- Cliquez sur Configurer la production. Vous verrez la liste des applications de votre projet qui seront activées pour la production et vous pourrez en ajouter d'autres.
- Envoyez votre application pour la validation de la marque OAuth et l'examen des règles de confidentialité. Google Cloud vérifiera que vous identifiez clairement et précisément votre application et ses règles de confidentialité.
Pour lancer l'examen, cliquez sur Poursuivre dans Google Cloud. Ce processus peut parfois prendre 24 heures ou plus. - En attendant la validation de votre marque, consultez les conditions spécifiques au service Firebase PNV, disponibles dans la console.
- Une fois que votre application a passé la validation de la marque, cochez la case pour confirmer que vous acceptez les conditions d'utilisation spécifiques au service, puis cliquez sur Activer.
Firebase PNV est désormais actif en mode production.
Supprimer le code de test
Dans votre projet Android, supprimez la ligne fpnv.enableTestSession(...).
Migrer Firebase AI Logic pour utiliser Vertex AI
Si vous utilisez des crédits dans votre compte de facturation, vous ne pourrez pas les utiliser avec l'API Gemini Developer. Toutefois, vous pouvez les utiliser avec l'API Vertex AI Gemini.
- Dans la console Firebase, accédez à Services d'IA > Logique d'IA.
- Cliquez sur Paramètres.
- Sous API Vertex AI Gemini, cliquez sur Activer.
- Dans votre projet Android, modifiez l'initialisation de Firebase AI Logic pour utiliser le backend Vertex AI au lieu de Google AI :
val model = Firebase.ai( backend = GenerativeBackend.vertexAI(location = "us-central1") ).liveModel( modelName = "gemini-live-2.5-flash-native-audio", // ... other configuration )
6. Félicitations !
Vous avez intégré avec succès la vérification du numéro de téléphone Firebase à une application Android.
Points abordés
- Configurer un projet pour Firebase PNV
- Utiliser le mode test pour le prototypage.
- Implémenter l'API Firebase PNV à appel unique.
- Passer au mode production
Étapes suivantes
- Découvrez comment personnaliser le flux de validation du numéro de téléphone Firebase.
- Découvrez comment valider les jetons PNV Firebase.
- Consultez les tarifs et les quotas.