1. Descripción general
La verificación del número de teléfono de Firebase (PNV de Firebase o FPNV) es un método más rápido y seguro para verificar números de teléfono. A diferencia de la verificación basada en SMS, que requiere que los usuarios finales reciban e ingresen un código de un mensaje de texto, la PNV de Firebase funciona obteniendo el número de teléfono asignado a la SIM del dispositivo directamente del operador conectado con un solo toque. Esto reduce la fricción para el usuario final, mejora la confiabilidad al no depender de la entrega de mensajes SMS y elimina los vectores de abuso que se suelen explotar cuando se usan SMS.

En este codelab, aprenderás a compilar un agente de voz de IA "Buscador de restaurantes" que usa la verificación del número de teléfono de Firebase para verificar el número de teléfono del usuario final antes de confirmar una reserva de mesa.
Requisitos previos
- La versión más reciente de Android Studio
- Un dispositivo Android o emulador con el nivel de API 26 o posterior
Qué aprenderás
- Configura un proyecto de Firebase con Firebase PNV.
- Usa la PNV de Firebase en el modo de prueba para crear prototipos sin una cuenta de facturación ni una SIM real.
- Integra el SDK de PNV de Firebase en una app para Android.
- Verifica un número de teléfono con la API de una sola llamada.
- (Opcional) Prepara tu app para producción.
2. Configura el proyecto de muestra
Crea un proyecto de Firebase
- Accede a la consola de Firebase con tu Cuenta de Google.
- Haz clic en el botón para crear un proyecto nuevo y, luego, ingresa un nombre (por ejemplo,
Tera Bites).
- Haz clic en Continuar.
- Si se te solicita, revisa y acepta las Condiciones de Firebase y, luego, haz clic en Continuar.
- Opcional: Habilita la asistencia de IA en Firebase console (llamada "Gemini en Firebase").
- Para este codelab, no necesitas Google Analytics, por lo que debes desactivar la opción de Google Analytics.
- Haz clic en Crear proyecto, espera a que se aprovisione y, luego, haz clic en Continuar.
Descarga el código
Ejecuta los siguientes comandos para clonar el código de muestra de este codelab:
git clone https://github.com/GoogleCloudPlatform/devrel-demos
cd codelabs/firebase-pnv-android
Abre el directorio firebase-pnv-android en Android Studio.
Conecta tu proyecto de Android a Firebase
- En Firebase console, en el centro de la página de descripción general del proyecto, haz clic en el ícono de Android o en Agregar app para iniciar el flujo de trabajo de creación de la app.
- En el campo Nombre del paquete de Android, ingresa el nombre del paquete de la app:
com.google.firebase.example.fpnv. - Haz clic en Registrar app.
- Sigue las instrucciones para descargar el archivo
google-services.jsony muévelo al directorioapp/del código que acabas de descargar. - Haz clic en Siguiente.
Habilita Firebase AI Logic
En este codelab, se usa Firebase AI Logic para potenciar el agente de voz potenciado por IA. Para habilitar Firebase AI Logic en tu proyecto de Firebase, haz lo siguiente:
- En Firebase console, ve a AI Services > AI Logic.
- Haz clic en Comenzar.
- Haz clic en Comienza a usar esta API para usar la API de Gemini Developer.
- Haz clic en Habilitar API y confirma.
3. Configura el PNV de Firebase en modo de prueba
El modo de prueba te permite verificar un número de teléfono "falso" con un token de prueba para el desarrollo.
Únete al programa de versión beta pública de los servicios del sistema de Google
Inscribe tu dispositivo de desarrollo en el canal beta de los servicios del sistema de Google para usar el modo de prueba:
- Navega a la página Android App Testing - Google system services.
- Haz clic en Convertirme en verificador.
Ahora eres verificador beta de los servicios del sistema de Google.
Agrega la dependencia de la PNV de Firebase
En la base de código de tu proyecto para Android, las dependencias de las bibliotecas de Firebase PNV y Firebase AI Logic ya están definidas en el archivo :
[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" }
En el archivo Gradle (generalmente ) de tu módulo (a nivel de app), declara la dependencia de la biblioteca de Firebase PNV:
dependencies {
// ... other dependencies
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.ai.logic)
// Add this line
implementation(libs.firebase.pnv)
// ...
}
Genera un token de prueba
- En Firebase console, ve a Seguridad > Verificación por teléfono.
- Selecciona la pestaña Prueba.
- Selecciona el código de país de tu número de teléfono de prueba y haz clic en Generar token.
- Copia la cadena de token generada.
Habilita la sesión de prueba en tu código
- De vuelta en tu proyecto de Android, abre el archivo
ChatViewModel.kty busca la funciónverifyPhoneNumber(). - Inicializa el cliente de
FirebasePhoneNumberVerificationy habilita la sesión de prueba. Para ello, pega el token que copiaste de Firebase console: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. Ejecuta la app
Ahora que implementaste la PNV de Firebase, es momento de ejecutar la app.
- En Android Studio, haz clic en Ejecutar para iniciar la app en el emulador de Android o en un dispositivo físico.
- Una vez que se inicie la app, deberías ver una pantalla como esta:

- Haz clic en Iniciar llamada y preséntate.

- El agente de voz de IA debería solicitarte los detalles de la reserva. Una vez que proporciones los detalles, se te pedirá que mires la pantalla para verificar tu número de teléfono:

- Cuando termines, verás una pantalla de verificación completa:

- Haz clic en Finalizar sesión para terminar la llamada.
5. (Opcional) Actualiza al modo de producción
Actualiza tu plan de precios de Firebase
Para usar Firebase PNV en el modo de producción, tu proyecto de Firebase debe tener el plan de precios de pago por uso (Blaze), lo que significa que está vinculado a una cuenta de Facturación de Cloud.
- Una cuenta de facturación de Cloud requiere una forma de pago, como una tarjeta de crédito.
- Si es la primera vez que usas Firebase y Google Cloud, verifica si cumples con los requisitos para obtener un crédito de USD 300 y una cuenta de Facturación de Cloud de prueba gratuita.
- Si realizas este codelab como parte de un evento, pregúntale al organizador si hay créditos de Cloud disponibles.
Para actualizar tu proyecto al plan Blaze, sigue estos pasos:
- En Firebase console, selecciona la opción para actualizar tu plan.
- Selecciona el plan Blaze. Sigue las instrucciones en pantalla para vincular una cuenta de Facturación de Cloud a tu proyecto.
Si necesitas crear una cuenta de Facturación de Cloud como parte de esta actualización, es posible que debas volver al flujo de actualización en Firebase console para completar la actualización.
Habilita el modo de producción de PNV de Firebase
- Agrega la huella digital SHA-256 de tu app:
- En Firebase console, ve a la página Configuración > General.
- Desplázate hacia abajo hasta la tarjeta Tus apps y busca tu app para Android.
- En el campo Huellas digitales del certificado SHA, agrega tu huella digital SHA-256. Consulta Autenticación de tu cliente para obtener detalles sobre cómo obtener la huella digital SHA-256 de tu app.
- Regresa a Seguridad > Verificación telefónica.
- Haz clic en Configurar producción. Verás una lista de las apps de tu proyecto que se habilitarán para producción y tendrás la oportunidad de agregar apps adicionales.
- Envía tu app para la verificación de la marca de OAuth y la revisión de cumplimiento de las políticas de privacidad. Google Cloud verificará que identifiques tu app y su política de privacidad de forma clara y precisa.
Para comenzar la revisión, haz clic en Continuar en Google Cloud. A veces, este proceso puede tardar 24 horas o más. - Mientras esperas la verificación de la marca, revisa las condiciones específicas del servicio de PNV de Firebase, que se vinculan en la consola.
- Una vez que tu app haya superado la verificación de la marca, marca la casilla para confirmar que aceptas las condiciones específicas del servicio y, luego, haz clic en Habilitar.
Firebase PNV ahora está activo en el modo de producción.
Quita el código de prueba
En tu proyecto de Android, borra la línea fpnv.enableTestSession(...).
Migra Firebase AI Logic para usar Vertex AI
Si usas créditos en tu cuenta de facturación, no podrás usarlos con la API de Gemini Developer. Sin embargo, puedes usarlos con la API de Gemini de Vertex AI.
- En Firebase console, ve a AI Services > AI Logic.
- Haz clic en Configuración.
- En API de Vertex AI Gemini, haz clic en Habilitar.
- En tu proyecto de Android, cambia la inicialización de Firebase AI Logic para usar el backend de Vertex AI en lugar de la 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. ¡Felicitaciones!
Integraste correctamente la verificación del número de teléfono de Firebase en una app para Android.
Temas abordados
- Configurar un proyecto para Firebase PNV
- Usar el modo de prueba para la creación de prototipos
- Implementar la API de Firebase PNV de una sola llamada
- Se actualiza al modo de producción.
Próximos pasos
- Obtén más información para personalizar el flujo de la PNV de Firebase.
- Obtén más información para verificar los tokens de PNV de Firebase.
- Consulta los precios y las cuotas.