Android 基础知识

Android 主页 Android 概述 Android 下载安装和开发环境配置 Android Studio IDE Android 架构 Android 应用程序组件 Android Hello World 示例 Android 资源 Android 活动 Android 服务 Android 广播接收器 Android 内容提供者 Android 片段 Android Intents/Filters

Android 用户界面

Android UI 布局 Android UI 控件 Android 事件处理 Android 样式和主题 Android 自定义组件

Android 高级概念

Android 拖放 Android 通知 Android 基于位置的服务 Android 发送电子邮件 Android 发送短信 Android 拨打电话 Android 发布应用程序

Android 实用示例

Android 警报对话框 Android 动画 Android 音频捕捉 Android 音频管理器 Android 自动完成 Android 最佳实践 Android 蓝牙 Android 相机 Android 剪贴板 Android 自定义字体 Android 数据备份 Android 开发者工具 Android 模拟器 Android Facebook 集成 Android 手势 Android 谷歌地图 Android 图像效果 Android 图像切换 Android 内部存储 Android JetPlayer Android JSON 解析器 Android Linkedin 集成 Android 旋转加载器 Android 本地化 Android 登录应用 Android 媒体播放器 Android 多点触控 Android 导航 Android 网络连接 Android NFC 指南 Android PHP/MySQL Android 进度圈 Android 进度条 Android 推送通知 Android 渲染脚本 Android RSS 阅读器 Android 屏幕投射 Android SDK 管理器 Android 传感器 Android 会话管理 Android 共享首选项 Android SIP 协议 Android 拼写检查器 Android SQLite 数据库 Android 支持库 Android 测试 Android 文字转语音 Android TextureView Android Twitter 集成 Android UI 设计 Android UI 模式 Android UI 测试 Android WebView 布局 Android Wi-Fi Android Widgets Android XML 解析器

Android 其他

Android 面试问题 Android 有用的资源 Android 测验


Android - SIP 协议

SIP 代表(会话发起协议)。 它是一种协议,可让应用程序轻松设置呼出和呼入语音呼叫,而无需直接管理会话、传输级通信或音频记录或回放。


SIP 应用程序

SIP 的一些常见应用是。

  • 视频会议
  • 即时消息

开发要求

以下是开发 SIP 应用程序的要求 −

  • Android 操作系统必须为 2.3 或更高版本
  • 您必须有数据连接或 WIFI
  • 您必须拥有 SIP 帐户才能使用此服务。

SIP 类

以下是 Android SIP API 中包含的类的摘要:

序号 类 & 描述
1

SipAudioCall

通过 SIP 处理 Internet 音频呼叫

2

SipErrorCode

定义 SIP 操作期间返回的错误代码

3

SipManager

为 SIP 任务提供 API,例如发起 SIP 连接,并提供对相关 SIP 服务的访问

4

SipProfile

定义 SIP 配置文件,包括 SIP 帐户、域和服务器信息

5

SipSession

表示与 SIP 对话或不在对话内的独立事务关联的 SIP 会话


SIP 的功能

SIP 主要有以下几个功能。

  • SIP 允许建立用户位置
  • SIP 提供了一种呼叫管理机制
  • SIP 提供功能协商,让通话的各方都能同意他们之间支持的功能

SIP 的组件

SIP 有两个主要组件,如下所列。

  • 用户代理客户端 (UAC)
  • 用户代理服务器 (UAS)

UAC

UAC 或用户代理客户端是那些生成请求并将这些请求发送到服务器的最终用户。这些请求是由在其系统上运行的客户端应用程序生成的。

UAS

UAS 或用户代理服务器是那些获取由 UAC 生成的请求的系统。 UAS 处理这些请求,然后根据请求相应地生成响应。


SipManager

SipManager 是一个用于 SIP 任务的 Android API,例如发起 SIP 连接,并提供对相关 SIP 服务的访问。 此类是任何 SIP 操作的起点。 您可以使用 newInstance() 获取它的实例。

SipManager 具有许多管理 SIP 任务的功能。 下面列出了一些功能。

序号 类 & 描述
1

close(String localProfileUri)

关闭指定的配置文件用以不拨打或不接听电话

2

getCallId(Intent incomingCallIntent)

从指定的来电广播意图中获取呼叫 ID

3

isOpened(String localProfileUri)

检查是否在 SIP 服务中打开了指定的配置文件以拨打和/或接听电话

4

isSipWifiOnly(Context context)

如果 SIP 仅在 WIFI 上可用,则返回 true

5

isRegistered(String localProfileUri)

检查 SIP 服务是否已成功将配置文件注册到 SIP 提供商(在配置文件中指定)以接收呼叫

6

isVoipSupported(Context context)

如果系统支持基于 SIP 的 VOIP API,则返回 true

7

takeAudioCall(Intent incomingCallIntent, SipAudioCall.Listener listener)

创建一个 SipAudioCall 来接听来电

8

unregister(SipProfile localProfile, SipRegistrationListener listener)

手动从相应的 SIP 提供商注销配置文件以停止接收更多呼叫