Android vil snart la apper strømme samtalelyd fra telefonen til nettbrettet

Et nytt programvarebibliotek gjør det mulig for apper å strømme VoIP-anrop fra telefonen til nettbrettet. Slik fungerer det.

Google er endelig tilbake i nettbrettdiskusjonen med Pixel-nettbrett, en hjemmeunderholdningsenhet som fungerer som en smarthjemhub. I hans anmeldelse av Pixel-nettbrettet, XDAs Ben Sin sier at det gir den "beste Android-nettbrettprogramvaren" han noen gang har testet. Det er absolutt lovende å høre fordi programvareopplevelsen forhåpentligvis bare vil forbedres herfra ettersom nettbrettet mottar nye funksjoner gjennom OS og appoppdateringer. En slik funksjon den kan motta er muligheten til å strømme eller overføre samtaler fra telefonen til nettbrettet.

Tenk deg at du er hjemme og løper rundt og gjør husarbeid eller slapper av på sofaen og ser på TV når du får en samtale fra en du er glad i på Google Meet. Jada, du kan ta samtalen med telefonen i hånden, men hvis du flytter den til nettbrettet, får du en mye større skjerm og bedre høyttalere. Overføring av media kan være så enkelt som å trykke på "cast"-knappen i appen og deretter velge nettbrettet (dette fungerer bare med Pixel-nettbrettet foreløpig siden det er det eneste Android-nettbrettet som støtter å fungere som en rollebesetning mottaker). På Android 13+ kan du til og med overføre media til en cast-enhet utenfor appen

gjennom operativsystemets utgangsbryter. Etter hvert kan du til og med strømme Google Meet-anrop fra telefonen til nettbrettet. Og alt dette er takket være Googles nye Telecom Jetpack-bibliotek.

I løpet av "bygge for fremtiden til Android”-sesjon på Google I/O 2023 tidligere i år, kunngjorde Google at det ville gi ut et nytt Jetpack-bibliotek kalt “Telecom” som forenkler API-overflaten for telekom-stabelintegrasjon og gjør også nye funksjoner mulig, som sømløs lydbytte/ruting og VoIP-anrop overføre. Konkret sa Developer Relations Engineer Dan Galpin følgende:

"I et annet nytt eksempel på spesialbygde APIer, gir vi ut et nytt Jetpack-bibliotek som støtter anropsrelaterte bakgrunnsarbeid, forenkler telecom stack API-tjenesten, og bringer bakoverkompatibilitet for nylig utgitte egenskaper. Den inkluderer støtte for sømløs lydbytte og ruting, og samtaleoverføring for VoIP-apper, som utnytter SDK-en på tvers av enheter."

De SDK på tvers av enheter, for de som ikke er klar over det, gir APIer som forenkler enhetsoppdagelse i nærheten, vekking av enheter, sikker kommunikasjon og økter med flere enheter over Bluetooth, Wi-Fi og ultrabredbånd. Den ble annonsert på fjorårets Google I/O og gikk i forhåndsvisning i august samme år, men den vil tilsynelatende gå ut av forhåndsvisningsstatus i sommer.

I et av lysbildene om Telecom Jetpack-biblioteket vises et skjermbilde av en Google Meet-samtale med Androids utgangsbryterboks på toppen. Utgangsbryteren viser at en Meet-samtale med "Jamie Hall" pågår og gir brukeren muligheten for å fortsette å spille av samtalelyden på «denne telefonen» eller streame/overføre samtalen til brukerens Pixel Tablett.

Nå er det uklart om dette skjermbildet bare er en mockup da Google Meet ikke støtter strømming/overføring av samtaler på denne måten ennå. Men poenget er at Telecom Jetpack-biblioteket gjør dette mulig i utgangspunktet, og utviklere av VoIP apper kan allerede leke med denne funksjonen siden den første alfaversjonen av biblioteket allerede har vært det løslatt.

Versjon 1.0.0-alpha01 av Core Telecom-biblioteket var løslatt på Google I/O 10. mai 2023, og den "introduserer CallsManager API som VoIP-apper kan bruke for å integrere med Telecom-rammeverket på en enhet. Anrop som varsles til plattformen drar nytte av utførelsesprioritet i forgrunnen, synlighet på Bluetooth, bærbar og bilenheter, og forenklet lydruting.» For enheter som kjører eldre versjoner av Android (alle vei tilbake til Android 8.0 Oreo), CallsManager API "omslutter den eldre ConnectionService API."

Utviklere av VoIP-apper kan allerede leke med denne funksjonen siden den første alfaversjonen av biblioteket allerede er utgitt.

De kildekode for Telecom Jetpack-biblioteket gir ytterligere detaljer om hva det muliggjør. For det første avslører den at CallsManager API faktisk gjør det mulig for VoIP-apper å "legge til samtalene sine til Android-systemtjenesten Telecom", noe som gjør andre tjenester "oppmerksom på [deres] VoIP-applikasjonsanrop" som fører til et "mer stabilt miljø." For eksempel, hvis et VoIP-anrop legges til telekomsystemet, kan en bærbar enhet svare på et innkommende anrop. I utgangspunktet vil den bærbare enheten behandle VoIP-samtalen som om det er en vanlig telefonsamtale, noe som betyr at samtalekontrollfunksjonaliteten vil være mer konsistent på tvers av enheter. For øyeblikket, for å få VoIP-anrop til og med å dukke opp på noen typer tilkoblede bærbare enheter, må VoIP-anropsvarslingen videresendes fra telefonen til den bærbare enheten.

Apper som integrerer Telecom Jetpack-biblioteket registrerer hvilke funksjoner de støtter. CAPABILITY_BASELINE betyr at VoIP-appen kun støtter å legge til sine samtaler i Telecom-systemet; CAPABILITY_SUPPORTS_VIDEO_CALLING indikerer at VoIP-appen har muligheten til å foreta videosamtaler; til slutt indikerer CAPABILITY_SUPPORTS_CALL_STREAMING at VoIP-appen støtter samtalestrømming.

De forskjell mellom å streame en samtale og å overføre en er at med førstnevnte, blir samtalen fortsatt behandlet av kildeenhet (som telefonen), men medielyden og kontrollene "streames" til vaskeenheten (som tablett). I motsetning til dette innebærer overføring av en samtale faktisk å flytte samtalen helt fra kildeenheten til vaskeenheten.

Jeg vet ikke om Google planlegger å oppdatere Androids telefonstabel og/eller førsteparts oppringingsapp for å støtte streaming vanlige telefonsamtaler, men min gjetning er at denne muligheten vil være begrenset til VoIP-samtaler for tiden å være.

Hva skjedde med Nearby Calling?

Tilbake på slutten av 2021 oppdaget jeg bevis på at Google forberedte en ringer i nærheten funksjon som lar deg koble telefonen din til å "få tilgang til samtaler fra [din] telefon direkte fra [din] Nest-hub [sic] når du er i nærheten." Det er uklart om denne funksjonen var ment for den faktiske Nest Hub eller dens nære slektning Pixel-nettbrettet, men i alle fall har jeg ikke sett noen bevis siden den gang for at Google går videre med dette trekk.

I stedet ser det ut til at Google bestemte seg for å bringe denne funksjonen til live via nye plattform-API-er og det nevnte Jetpack-biblioteket. Selskapet eksperimenterte med "anrop på tvers av enheter" og "ekstern samtale audio ruting” API-er i Android 13 som ble omarbeidet til API-ene vi nå har i Android 14. Det er også la til en ny systemrolle kalt SYSTEM_CALL_STREAMING som gir sin innehaver CALL_AUDIO_INTERCEPTION og RECORD_AUDIO tillatelser, to tillatelser som henholdsvis lar en app "få tilgang til opplink- og nedlinklyden til en pågående samtale" og ta opp lyd. Det er verdt å merke seg at Google Play Services er definert som rolleholderen på Pixel-telefoner som kjører Android 14, antyder at Play Services-appen vil håndtere selve strømmingen av samtalelyd som Jetpack Telecom-biblioteket annonserer.

En ting som ikke er klart for meg er om samtalestrømming og samtaleoverføring vil være på alle versjoner av Android Jetpack-biblioteket støtter. Forhåpentligvis kan Google gi klarhet i dette snart når det kunngjør tilgjengeligheten til biblioteket.