写点什么

Android 新增 Telecom 库 jetpack,简化音频 / 视频通话应用开发

  • 2023-12-07
    北京
  • 本文字数:970 字

    阅读完需:约 3 分钟

Android 新增 Telecom 库 jetpack,简化音频/视频通话应用开发

Android 新增 Telecom 库 jetpack。该库目前为 Alpha 版本,旨在简化音频及视频通话应用的开发。它为 Android 开发人员提供了多个 API,支持应答 / 拒绝、音频路由等常见功能。


首先,新库会负责声明它使用哪些前台服务。这意味着开发者不需要显式遵守 Android 14 中新引入的的隐私要求。该库还可以确保用户离开应用时通话不会中断,而这对于开发者来说是透明的。


该 Telecom 库还为智能手表提供了一个 API,用于处理用户操作,如接听、拒绝、挂断和静音呼叫。该 API 可以流畅地在手表上显示与呼叫相关的信息,并且,当用户正在进行通话而又有另一个呼叫进入时,可以为用户保持当前呼叫。


新库提供的另一个主要功能是音频路由,因此,使用它的任何应用程序都不需要使用音频管理器来跟踪设备的音频状态及获取可用音频设备的列表等。该库可以列出所有可用的去向 / 来自蓝牙音频设备的流式音频端点。


该 Telecom 库引入了一个新的 CallsManager 类,取代了以前非 jetpack 库中提供的 ConnectionService 类。如果开发人员想要利用新类所带来的好处,就需要完成一项特定的迁移。


从 ConnectionService 迁移到 CallManager 非常简单,但也不是改下命名空间那么简单。你可以认为,CallManager 取代的是 ConnectionService ,而 CallControlScope 取代的是 ConnectionService.


下面的代码片段展示了如何添加一个具有给定属性的呼叫:


val attributes = CallAttributesCompat(        displayName = displayName,               address = address,       direction = CallAttributesCompat.DIRECTION_INCOMING,       callType = CallAttributesCompat.CALL_TYPE_AUDIO_CALL,       callCapabilities = (CallAttributesCompat.SUPPORTS_SET_INACTIVE                or CallAttributesCompat.SUPPORTS_STREAM                                or CallAttributesCompat.SUPPORTS_TRANSFER), )callsManager.addCall(        attributes      ) {                 // Call control scope 
}
复制代码


谷歌表示,在未来几个月,这个库会增加许多新功能,并且向后兼容至 Android O(API level 26)。如果你对使用它创建一个 Android VoIP 应用感兴趣,那么最好从谷歌的官方示例应用入手,它向开发者展示了如何使用各种 API。


原文链接:

https://www.infoq.com/news/2023/11/android-jetpack-telecom-library/


2023-12-07 08:005875

评论

发布
暂无评论
发现更多内容

低代码助力软件开发

树上有只程序猿

软件开发 低代码 可视化开发

OPPO ColorOS,重建用户和折叠屏的“亲密关系”

脑极体

OPPO

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

BlockChain先知

快速入门SRPC

1412

c++ 开源 workflow srpc 脚手架

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

股市老人

手帐怎么做?推荐这10款手帐达人都在用的好用软件!

彭宏豪95

效率 科技 在线白板 办公软件 笔记软件

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

石头财经

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

大瞿科技

第4期 | GPTSecurity周报

云起无垠

HypeX Labs:充分释放加密资产的潜力

股市老人

文心一言 VS 讯飞星火 VS chatgpt (117)-- 算法导论10.3 2题

福大大架构师每日一题

福大大架构师每日一题

Android推送问题排查

MobTech袤博科技

智能推送

观测云产品更新 | 优化 SSO 管理、新增监控器类型、优化场景等

观测云

数据可视化 单点登录 监控器

亚太手游市场规模超百亿,华为游戏中心助力伙伴实现持续增长

最新动态

来看看 Discourse 3.2.0.beta2 版本添加的新功能

HoneyMoose

csh与bash区别及csh常用语法

百度搜索:蓝易云

云计算 unix 运维 Shell csh

酷克数据发布HD-SQL-LLaMA模型,开启数据分析“人人可及”新时代

酷克数据HashData

Python 条件和 if 语句

小万哥

Python 程序员 软件 后端 开发

Linux远程管理工具

梦笔生花

3DCAT实时云渲染赋能聚好看科技,打造3D沉浸式互动视频云平台

3DCAT实时渲染

云渲染 实时渲染 实时云渲染

Android端自定义铃声

MobTech袤博科技

智能推送

Mojo——会燃的 AI 编程语言

CODING DevOps

人工智能:科学、医疗、工业的未来之光

测吧(北京)科技有限公司

测试

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

西柚子

Docker环境下部署Linux服务器ssh管理面板easynode

百度搜索:蓝易云

Docker 云计算 Linux SSH EasyNode

多年没有遇到如此流畅的面试了

HoneyMoose

腾讯云 CODING 快速应用中心,让您 10 分钟轻松玩转 AIGC

CODING DevOps

性能测试中数据处理经验分享

FunTester

INFINI Labs 产品更新 | Easysearch 优化字段压缩提升写入速度,Console 优化数据迁移和校验等功能

极限实验室

INFINI Console easysearch

AI 画图,DALL.E 3 正式发布!全面解读 OpenAI 公告

豆哥

openai AI绘画 DALL.E 3

Android 新增 Telecom 库 jetpack,简化音频/视频通话应用开发_Android/iOS_Sergio De Simone_InfoQ精选文章