Google finalmente vuelve al debate sobre tabletas con laPixel Tablet, un dispositivo de entretenimiento para el hogar que también funciona como un centro de hogar inteligente. En sureseña de la Pixel Tablet, Ben Sin de XDA dice que ofrece el "mejor software de tableta Android" que ha probado. Sin duda, es una idea prometedora porque, con suerte, la experiencia del software solo mejorará a partir de ahora a medida que la tableta reciba nuevas funciones a través de actualizaciones del sistema operativo y de las aplicaciones. Una de esas funciones que podría recibir es la capacidad de transmitir o transferir llamadas desde su teléfono a la tableta.

Imagina que estás en casa haciendo tareas domésticas o descansando en el sofá viendo la televisión cuando recibes una llamada de un ser querido en Google Meet. Claro, puedes atender la llamada con tu teléfono en la mano, pero si lo mueves a tu tableta, obtendrás una pantalla mucho más grande y mejores parlantes. Transferir medios puede ser tan simple como presionar el botón "transmitir" en la aplicación y luego seleccionar la tableta (esto solo funciona con la Pixel Tablet por ahora, ya que es la única tableta Android que admite actuar como receptor de Cast). En Android 13+, incluso puedes transferir medios a un dispositivo de transmisión fuera de la aplicacióna través del conmutador de salida del sistema operativo. Con el tiempo, incluso podrás transmitir llamadas de Google Meet desde tu teléfono a tu tableta. Y todo esto es gracias a la nueva biblioteca Telecom Jetpack de Google.

La nueva biblioteca Telecom Jetpack de Android

Durante la sesión “Building for the future of Android” en Google I/O 2023 a principios de este año, Google anunció que lanzaría una nueva biblioteca Jetpack llamada “Telecom” que simplifica la superficie API para la integración de la pila de telecomunicaciones y también posibilita nuevas funciones, como la conmutación/enrutamiento de audio sin problemas y la transferencia de llamadas VoIP. En concreto, el ingeniero de relaciones con los desarrolladores, Dan Galpin, dijo lo siguiente:

“En otro nuevo ejemplo de API diseñadas específicamente para este fin, estamos lanzando una nueva biblioteca Jetpack que admite el trabajo en segundo plano relacionado con las llamadas, simplifica el servicio API de la pila de telecomunicaciones y brinda compatibilidad con versiones anteriores para las funciones recién lanzadas. Incluye compatibilidad con conmutación y enrutamiento de audio sin inconvenientes y transferencia de llamadas para aplicaciones VoIP, aprovechando el SDK multidispositivo”.

ElSDK multidispositivo, para quienes no lo sepan, proporciona API que simplifican la detección de dispositivos cercanos, la activación de dispositivos, las comunicaciones seguras y las sesiones multidispositivo a través de Bluetooth, Wi-Fi y banda ultra ancha. Se anunció en Google I/O del año pasado y se presentó en versión preliminar en agosto de ese mismo año, pero aparentemente dejará de estar en versión preliminar este verano.

En una de las diapositivas sobre la biblioteca Telecom Jetpack, se muestra una captura de pantalla de una llamada de Google Meet con el cuadro de selección de salida de Android en la parte superior. El cuadro de selección de salida muestra que hay una llamada de Meet en curso con “Jamie Hall” y le da al usuario la opción de continuar reproduciendo el audio de la llamada en “este teléfono” o transmitir/transferir la llamada a la tableta Pixel del usuario.

Transmisión y transferencia de llamadas de Android en una diapositiva sobre la biblioteca Telecom Jetpack

Ahora bien, no está claro si esta captura de pantalla es solo una maqueta, ya que Google Meet aún no admite la transmisión/transferencia de llamadas de esta manera. Sin embargo, el punto es que la biblioteca Telecom Jetpack lo hace posible en primer lugar, y los desarrolladores de aplicaciones VoIP ya pueden experimentar con esta función, ya que la versión alfa inicial de la biblioteca ya se ha lanzado.

La versión 1.0.0-alpha01 de la biblioteca Core Telecom selanzóen Google I/O el 10 de mayo de 2023 e “introduce la API CallsManager que las aplicaciones VoIP pueden usar para integrarse con el marco Telecom en un dispositivo. Las llamadas notificadas a la plataforma se benefician de la prioridad de ejecución en primer plano, la visibilidad en dispositivos Bluetooth, portátiles y automotrices y el enrutamiento de audio simplificado”. Para los dispositivos que ejecutan versiones anteriores de Android (hastaAndroid 8.0 Oreo), la API CallsManager “envuelve la API ConnectionService heredada”.

Los desarrolladores de aplicaciones VoIP ya pueden jugar con esta función, ya que se ha lanzado la versión alfa inicial de la biblioteca.

Elcódigo fuentede la biblioteca Telecom Jetpack proporciona detalles adicionales sobre lo que permite. Para empezar, revela que la API CallsManager realmente permite que las aplicaciones VoIP "añadan sus llamadas al servicio del sistema Android Telecom", lo que hace que otros servicios "sean conscientes de [sus] llamadas de aplicaciones VoIP", lo que genera un "entorno más estable". Por ejemplo, si se añade una llamada VoIP al sistema Telecom, un dispositivo portátil puede responder una llamada entrante. Básicamente, el dispositivo portátil tratará la llamada VoIP como si fuera una llamada telefónica normal, lo que significa que la funcionalidad de control de llamadas será más consistente en todos los dispositivos. Actualmente, para que las llamadas VoIP aparezcan incluso en algunos tipos de dispositivos portátiles conectados, la notificación de la llamada VoIP debe reenviarse desde el teléfono al dispositivo portátil.

Las aplicaciones que integran la biblioteca Telecom Jetpack registran las capacidades que admiten. CAPABILITY_BASELINE significa que la aplicación VoIP solo admite que sus llamadas se agreguen al sistema Telecom; CAPABILITY_SUPPORTS_VIDEO_CALLING indica que la aplicación VoIP tiene la capacidad de realizar videollamadas; finalmente, CAPABILITY_SUPPORTS_CALL_STREAMING indica que la aplicación VoIP admite la transmisión de llamadas.

Ladiferenciaentre transmitir una llamada en tiempo real y transferirla es que, en el primer caso, la llamada sigue siendo gestionada por el dispositivo de origen (como el teléfono), pero el audio y los controles multimedia se "transmiten" al dispositivo receptor (como la tableta). En cambio, transferir una llamada implica mover la llamada por completo del dispositivo de origen al dispositivo receptor.

No sé si Google planea actualizar la pila de telefonía de Android y/o su aplicación de marcador propia para soportar la transmisión de llamadas telefónicas regulares, pero supongo que esta capacidad estará limitada a las llamadas VoIP por el momento.

¿Qué pasó con las llamadas cercanas?

A fines de 2021, descubrí evidencia de que Google estaba preparando una funciónde llamadas cercanasque le permitiría vincular su teléfono para "acceder a las llamadas desde [su] teléfono directamente desde [su] Nest Hub [sic] cuando esté cerca". No está claro si esta función estaba destinada al Nest Hub real o a su pariente cercano, la Pixel Tablet, pero en cualquier caso, no he visto ninguna evidencia desde entonces de que Google esté avanzando con esta función.

Llamadas cercanas: función Android 12L

En cambio, parece que Google decidió darle vida a esta función a través de nuevas API de plataforma y la biblioteca Jetpack antes mencionada. La compañía experimentó con las API de "llamadas entre dispositivos" y "enrutamiento de audio de llamadas externas" en Android 13 que se reelaboraron en las API que tenemos ahora enAndroid 14.También seagregóun nuevo rol exclusivo del sistema llamado SYSTEM_CALL_STREAMING que otorga a su titular los permisos CALL_AUDIO_INTERCEPTION y RECORD_AUDIO, dos permisos que permiten respectivamente que una aplicación "acceda al audio de enlace ascendente y descendente de una llamada en curso" y grabe audio. Vale la pena señalar que Google Play Services se define como el titular del rol en los teléfonos Pixel con Android 14, lo que sugiere que la aplicación Play Services manejará la transmisión real del audio de la llamada que anuncia la biblioteca Jetpack Telecom.

Una cosa que no me queda clara es si la transmisión y transferencia de llamadas estarán disponibles en todas las versiones de Android compatibles con la biblioteca Jetpack. Con suerte, Google podrá ofrecer más claridad al respecto pronto cuando anuncie la disponibilidad de la biblioteca.