Wprowadzenie natywnej widoczności w aplikacjach VoIP dzięki najnowszej wersji alfa Telecom
2 minuty czytania
W początkowej wersji biblioteki Jetpack Telecom wprowadziliśmy CallsManager, który zastąpił starszy interfejs ConnectionService API, aby uprościć integrację VoIP. CallsManager usprawnia zarządzanie cyklem życia połączeń i routingiem dźwięku, umożliwiając jednocześnie interakcje z powierzchniami zdalnymi, takimi jak smartwatche, urządzenia Bluetooth i Android Auto. Dodatkowo obsługuje rozszerzenia połączeń, które zapewniają bogatsze funkcje, takie jak obsługa uczestników, niestandardowe ikony, wyciszanie połączeń i podsumowanie spotkania na powierzchniach zdalnych. Zachowuje przy tym zgodność wsteczną z Androidem O (poziom API 26).
W oparciu o te podstawy Jetpack Telecom w wersji 1.1.0 wprowadza widoczność i wygodę na poziomie natywnym w aplikacjach VoIP innych firm. Ta najnowsza wersja wprowadza nowe, zaawansowane funkcje, w tym ujednoliconą historię połączeń, wykluczanie z dziennika połączeń i natywną funkcję wywołania zwrotnego, dzięki czemu zarządzanie połączeniami jest dla użytkowników łatwiejsze niż kiedykolwiek.
Przyjrzyjmy się bliżej nowościom i sposobom implementacji tych funkcji w aplikacjach.
Wypełnianie luki w dialerze: ujednolicona historia połączeń i wywołania zwrotne
Do tej pory użytkownicy musieli otwierać poszczególne aplikacje innych firm, aby wyświetlić historię połączeń VoIP lub oddzwonić na nieodebrane połączenie. Dzięki nowej funkcji zintegrowanego rejestrowania połączeń aplikacje dialera systemowego mogą teraz wyświetlać dzienniki połączeń bezpośrednio z aplikacji VoIP innych firm.
Co więcej, użytkownicy mogą teraz inicjować wywołanie zwrotne do kontaktu VoIP bezpośrednio z natywnego dialera systemowego, co usprawnia komunikację.
Jak to działa:
Aby włączyć tę funkcję:
- Zarejestruj się, aby otrzymywać wywołania zwrotne: Twoja aplikacja VoIP musi zarejestrować nową intencję chronioną przez system:
TelecomManager.ACTION_CALL_BACK. - Zaloguj połączenie: użyj
TelecomManager.addCall(lub powiązanych interfejsów Jetpack API), aby system automatycznie rejestrował połączenie. - Zarządzaj identyfikatorami połączeń: gdy połączenie jest zarejestrowane,
CallControlScope.getCallIdudostępnia unikalny identyfikator UUID. Dialer systemowy używa tego samegoTelecomManager.EXTRA_UUIDpodczas tworzenia intencji wywołania zwrotnego. - Zainicjuj wywołanie zwrotne: Twoja aplikacja musi przechowywać szczegóły połączenia powiązane z tym identyfikatorem UUID i nimi zarządzać. Gdy dialer systemowy uruchomi intencję wywołania zwrotnego z
EXTRA_UUID, Twoja aplikacja może bezproblemowo rozpoznać identyfikator i zainicjować połączenie z prawidłowymi szczegółami.
Szczegółowa kontrola: wykluczanie z dziennika połączeń
Zdajemy sobie sprawę, że nie wszystkie połączenia VoIP powinny być widoczne w historii natywnego dialera systemowego. Niezależnie od tego, czy chodzi o prywatność, komunikację efemeryczną czy zachowanie specyficzne dla aplikacji, musisz mieć kontrolę nad tym, co jest wyświetlane.
Aby to osiągnąć, wprowadzamy wykluczanie z dziennika połączeń. Możesz teraz uniemożliwić rejestrowanie określonych połączeń w dziennikach połączeń systemowych, ustawiając wartość logiczną isLogExcluded na true w CallAttributesCompat. Po skonfigurowaniu tej flagi połączenie pozostaje całkowicie ukryte w dziennikach systemowych, a natywny dialer go nie wyświetla.
Ważna uwaga dotycząca zgodności
Te zintegrowane funkcje rejestrowania i wywołań zwrotnych są dostępne na urządzeniach z Androidem 16.1 (SDK 36.1) lub nowszym. Aby skompilować aplikację za pomocą Androida SDK 36.1, kliknij tutaj.
Rozpocznij
Zachęcamy deweloperów do przetestowania tych integracji i sprawdzenia, jak ujednolicona historia połączeń i wywołania zwrotne mogą poprawić codzienne wrażenia użytkowników aplikacji VoIP.
Aby ułatwić Ci rozpoczęcie i zobaczenie tych interfejsów API w działaniu, przygotowaliśmy przykładową aplikację, która demonstruje nowe integracje.
- Wyświetl przykładową aplikację tutaj: https://github.com/android/platform-samples/tree/main/samples/connectivity/telecom
Aby zacząć wdrażać te funkcje, zapoznaj się z informacjami o wersji i dokumentacją.
Uwaga:: chociaż interfejsy Jetpack Telecom API w wersji 1.1.0 są dostępne do integracji, możliwość renderowania natywnych dzienników połączeń przez dialer systemowy jest wprowadzana etapami, począwszy od Google Meet. Aby chronić przed spamem, natywne dialery używają bezpiecznych list dozwolonych pakietów do kontrolowania wyświetlania VoIP. Do lokalnego testowania implementacji wywołań zwrotnych i rejestrowania zalecamy używanie aplikacji Telecom Sample Dialer z otwartym kodem źródłowym jako środowiska emulatora.
-
Nowości dotyczące produktówZapewnienie bezpiecznego korzystania z internetu i ochrona użytkowników przed szkodliwymi treściami to dla nas w Google Play priorytet.
Paul Feng • 2 minuty czytania -
Nowości dotyczące produktówDziś oficjalnie obchodzimy 5. rocznicę wydania Jetpack Compose 1.0. Od wersji 1.0, ogłoszonej 28 lipca 2021 r., do najnowszej wersji 1.11 interfejsy API znacznie się rozwinęły. Chcemy to uczcić.
Rebecca Franks, Nick Butcher, Loryn Hairston • 5 minut czytania -
Nowości dotyczące produktówAndroid Studio Quail 2 jest już stabilny i gotowy do użycia w środowisku produkcyjnym. Wprowadza do IDE równoległe przepływy pracy agenta, natywnie zintegrowane profilowanie wycieków pamięci i usuwanie awarii z uwzględnieniem kontekstu.
Amman Asfaw • 3 minuty czytania
Otrzymuj co tydzień najnowsze informacje o tworzeniu aplikacji na Androida na swoją skrzynkę odbiorczą.