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 nécessite que les utilisateurs finaux reçoivent et saisissent un code à partir d'un message texte, Firebase PNV 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 distribution de messages SMS et élimine les vecteurs d'abus couramment exploités lors de l'utilisation de SMS.

Dans cet atelier de programmation, vous apprendrez à 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
- Dernière version de Android Studio
- Appareil ou émulateur Android avec le niveau d'API 26 ou supérieur
Points abordés
- Configurer un projet Firebase avec Firebase PNV
- Utiliser Firebase PNV en mode test pour créer un prototype sans compte de facturation ni carte SIM réelle
- Intégrer le SDK Firebase PNV dans une application Android
- Valider un numéro de téléphone à l'aide de l'API d'appel unique
- (Facultatif) Préparer 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.json, puis 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 > AI Logic.
- 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.
Rejoindre le programme bêta public des services système de Google
Inscrivez votre appareil de développement au canal bêta des services système de Google pour utiliser le mode test :
- Accédez à la page Tests d'applications Android – Services système de 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 pour les bibliothèques Firebase PNV et Firebase AI Logic sont déjà définies dans le fichier :
[versions]
# ... other dependencies
firebaseBom = "34.12.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 par 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(context!!) // Enable Test session fpnv.enableTestSession("PASTE_THE_TOKEN_YOU_COPIED_IN_PREV_STEP") // Trigger the Firebase PNV pop up val response = fpnv.getVerifiedPhoneNumber().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 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 d'IA devrait vous demander des informations sur la réservation. Une fois que vous avez fourni les informations, il devrait vous inviter à regarder votre écran pour valider votre numéro de téléphone :

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

- Cliquez sur Arrêter la session pour mettre fin à l'appel.
5. (Facultatif) Passer en mode production
Mettre à niveau votre forfait Firebase
Pour utiliser Firebase PNV en mode production, votre projet Firebase doit être associé au forfait Blaze avec paiement à l'usage, ce qui signifie qu'il est associé à un compte de facturation Cloud.
- Un compte de facturation Cloud nécessite un mode de paiement, comme une carte de crédit.
- 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 d'essai sans frais.
- Si vous participez à cet atelier de programmation dans le cadre d'un événement, demandez à l'organisateur si des crédits Cloud sont disponibles.
Pour passer votre projet au forfait Blaze, procédez comme suit :
- Dans la console Firebase, sélectionnez l'option de mise à niveau de votre forfait.
- Sélectionnez le forfait Blaze. Suivez les instructions à l'écran pour associer un compte de facturation Cloud à votre projet.
Si vous avez dû créer un compte de facturation Cloud dans le cadre de cette mise à niveau, vous devrez peut-être revenir au processus de mise à niveau dans la console Firebase pour terminer la mise à niveau.
Activer le mode production de Firebase PNV
- Ajoutez l'empreinte SHA-256 de votre application :
- Dans la console Firebase, accédez à la page Paramètres > Général.
- Faites défiler l'écran jusqu'à la fiche 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 la page Authentifier votre client.
- Revenez à Sécurité > Validation par téléphone.
- Cliquez sur Configurer la production. Une liste des applications de votre projet qui seront activées pour la production s'affiche. Vous pouvez également ajouter d'autres applications.
- 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 commencer l'examen, cliquez sur Continuer dans Google Cloud. Ce processus peut parfois prendre 24 heures ou plus. - Pendant que vous attendez la validation de la marque, consultez les conditions spécifiques au service Firebase PNV, qui sont liées dans la console.
- Une fois votre application validée, cochez la case pour accepter les conditions 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 Gemini Vertex AI.
- Dans la console Firebase, accédez à Services d'IA > AI Logic.
- Cliquez sur Paramètres.
- Sous API Gemini Vertex AI, cliquez sur Activer.
- Dans votre projet Android, modifiez l'initialisation de Firebase AI Logic pour utiliser le backend Vertex AI au lieu de l'IA de Google :
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 dans une application Android.
Points abordés
- Configurer un projet pour Firebase PNV
- Utiliser le mode test pour le prototypage
- Implémenter l'API d'appel unique Firebase PNV
- Passer en mode production
Étapes suivantes
- Découvrez comment personnaliser le flux Firebase PNV.
- Découvrez comment valider les jetons Firebase PNV.
- Consultez la tarification et les quotas.