Новости о продуктах

Новая альфа-версия Telecom позволяет добавить в приложение VoIP встроенную функцию видимости

Время на чтение: 2 минуты
Посмотреть профиль пользователя Nataraj K R
Nataraj K R Инженер по связям с разработчиками, разработка для Android

В первом выпуске библиотеки Jetpack Telecom был представлен класс CallsManager, который заменил устаревший API ConnectionService и упростил интеграцию VoIP. CallsManager упрощает управление жизненным циклом вызовов и маршрутизацию аудио, а также позволяет взаимодействовать с внешними устройствами, такими как умные часы, устройства Bluetooth и Android Auto. Кроме того, Telecom Jetpack поддерживает расширения для звонков, которые позволяют использовать дополнительные функции, такие как управление участниками, пользовательские значки, отключение звука звонка и сводка встречи на удаленных платформах. При этом сохраняется обратная совместимость с Android O (уровень API 26).

Jetpack Telecom v1.1.0 обеспечивает сторонним VoIP-приложениям удобство и видимость на уровне встроенных функций. В последней версии появились новые мощные возможности, в том числе единый журнал звонков, исключение списка вызовов и встроенная функция обратного вызова, благодаря которым управлять звонками стало проще, чем когда-либо.

Ниже мы расскажем о новых функциях и о том, как их можно использовать в приложениях.

Устранение пробелов в работе приложения "Телефон": единый журнал звонков и обратные вызовы

Раньше пользователям приходилось открывать отдельные сторонние приложения, чтобы посмотреть журнал VoIP-вызовов или перезвонить по пропущенному вызову. Благодаря новой функции регистрации звонков системные приложения для набора номера теперь могут показывать журналы звонков непосредственно из сторонних VoIP-приложений.

Более того, теперь пользователи могут перезванивать контактам VoIP прямо из встроенного номеронабирателя, что делает общение ещё удобнее.

Принципы работы

Чтобы включить эту функцию, выполните следующие действия:

  1. Регистрация обратных вызовов. Ваше VoIP-приложение должно зарегистрировать новое защищенное системой намерение: TelecomManager.ACTION_CALL_BACK.
  2. Зарегистрируйте звонок. Используйте TelecomManager.addCall или связанные API Jetpack, чтобы система автоматически зарегистрировала звонок.
  3. Управление идентификаторами звонков. При регистрации звонка CallControlScope.getCallId предоставляет уникальный UUID. Системная программа набора номера использует именно этот TelecomManager.EXTRA_UUID при создании намерения обратного вызова.
  4. Инициируйте обратный вызов. Ваше приложение должно хранить и обрабатывать сведения о звонке, связанные с этим UUID. Когда системное приложение "Телефон" запускает намерение обратного вызова с параметром EXTRA_UUID, ваше приложение может без проблем определить идентификатор и инициировать звонок с правильными данными.
integrated_call_log.png

Точная настройка: исключение журнала вызовов

Мы понимаем, что не все звонки VoIP должны быть видны в журнале звонков устройства. В зависимости от настроек конфиденциальности, особенностей приложения или характера общения вам может понадобиться управлять тем, что показывается в уведомлениях.

Чтобы решить эту проблему, мы добавили функцию исключения записей журнала вызовов. Теперь вы можете запретить запись определенных вызовов в системные списки вызовов, установив для логического значения isLogExcluded значение true в CallAttributesCompat. Если этот флаг настроен, звонок не будет отображаться в системных журналах и встроенном приложении для звонков.

Важное примечание о совместимости

Эти встроенные функции ведения журнала и обратного вызова доступны на устройствах с Android 16.1 (SDK 36.1) и более поздними версиями. Чтобы скомпилировать приложение с помощью Android SDK 36.1, следуйте инструкциям, приведенным здесь.

Начать

Мы рекомендуем разработчикам протестировать эти интеграции и узнать, как единый журнал звонков и обратные вызовы могут улучшить удобство использования VoIP-приложений.

Чтобы вам было проще начать работу с этими API, мы создали пример приложения, в котором показано, как их использовать.

Чтобы начать использовать эти функции, ознакомьтесь с примечаниями к выпуску и документацией.

Примечание. Хотя API Jetpack Telecom версии 1.1.0 доступны для интеграции, возможность системного приложения для звонков показывать нативные списки вызовов внедряется поэтапно, начиная с Google Meet. Чтобы защитить пользователей от спама, встроенные приложения для звонков используют белые списки безопасных пакетов для управления отображением VoIP. Для локального тестирования реализации обратного вызова и ведения журнала мы рекомендуем использовать в качестве среды эмулятора приложение Telecom Sample Dialer с открытым исходным кодом.

Автор:
Продолжить чтение