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

Добавьте встроенную видимость в свое VoIP-приложение с помощью последней альфа-версии Telecom

Время на чтение: 2 минуты
Посмотреть профиль пользователя Nataraj K R
Nataraj K R Developer Relations Engineer, Android Developer Engineering

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

В Jetpack Telecom 1.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 app – приложение с открытым исходным кодом.

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