快速开始(包含呼叫邀请)
参考此文档,您可以了解并集成呼叫邀请功能。
准备环境
在开始集成音视频 UIKit 前,请确保开发环境满足以下要求:
- Android Studio 2020.3.1 或以上版本。
- Android SDK 25、Android SDK Build-Tools 25.0.2、Android SDK Platform-Tools 25.x.x 或以上版本。
- Android 4.4 或以上版本,且支持音视频的 Android 设备。
- Android 设备已经连接到 Internet。
前提条件
- 已在 ZEGO 控制台 创建项目,并申请有效的 AppID 和 AppSign,详情请参考 控制台 - 项目信息。
- 联系 ZEGO 技术支持,开通 UIKit 相关服务。
UI 实现效果
以下 Gif 为小米设备上的效果,不同设备可能会有不同的结果。
Note
以下离线通话的效果需要您实现在线呼叫邀请功能后,参考 向离线应用发送呼叫邀请 进一步集成离线推送功能。
在线通话 | 在线通话(APP处于后台状态) | 离线通话(APP被终止) |
---|---|---|
集成呼叫邀请功能
添加 ZegoUIKitPrebuiltCall 为依赖项
- 添加
jitpack
配置。
根据您的 Android Gradle 插件版本,选择对应的实现步骤。
7.1.0 或更高版本
低于 7.1.0 的版本
-
修改您的 app 级别的
build.gradle
文件。Untitleddependencies { ... implementation 'com.github.ZEGOCLOUD:zego_uikit_prebuilt_call_android:+' }
1
初始化呼叫邀请服务
在用户登录后,调用init
方法,并指定 userID
和 userName
来连接呼音视频通话服务。
我们建议在用户登录您的 App 后立即调用此方法。
- 用户登录后,需要初始化 ZegoUIKitPrebuiltCallService 以接收呼叫邀请。
- 用户登出时,需要调用
uninit
以清除先前的登录记录,以免影响下次登录。
Note
UIKit 默认语言为英文,如需修改为中文,请修改 ZegoUIKitPrebuiltCallInvitationConfig.translationText
。
Untitled
Application application = ; // Android 应用程序上下文
long appID = ; // 您的 AppID
String appSign =; // 您的 AppSign
String userID =; // 您的 userID,userID应仅包含数字、英文字母和'_'
String userName =; // 您的 userName
ZegoUIKitPrebuiltCallInvitationConfig callInvitationConfig = new ZegoUIKitPrebuiltCallInvitationConfig();
// 设置语言为中文
callInvitationConfig.translationText = new ZegoTranslationText(ZegoUIKitLanguage.CHS);
ZegoUIKitPrebuiltCallService.init(getApplication(), appID, appSign, userID, userName, callInvitationConfig);
1
ZegoUIKitPrebuiltCallService 组件属性
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
appID | long | 是 | 您从 ZEGO 控制台 获取的App ID。 |
appSign | String | 是 | 您从 ZEGO 控制台 获取的App Sign。 |
userID | String | 是 | userID 可以是电话号码或您自己用户系统上的用户ID。只能包含数字、字母和下划线(_)。 |
userName | String | 是 | userName 可以是任何字符或您自己用户系统上的用户名。 |
添加呼叫邀请按钮
您可以自定义 ZegoSendCallInvitationButton
的位置,传入您想要呼叫的用户的ID。
Untitled
String targetUserID = ; // 呼叫目标的用户 ID。
String targetUserName = ; // 呼叫目标的用户名。
Context context = ; // Android上下文。
ZegoSendCallInvitationButton button = new ZegoSendCallInvitationButton(context);
button.setIsVideoCall(true);
button.setInvitees(Collections.singletonList(new ZegoUIKitUser(targetUserID,targetUserName)));
1
ZegoSendCallInvitationButton 属性
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
invitees | Array | 是 | 被叫用户信息。必须包括 userID 和 userName。 |
isVideoCall | Boolean | 是 | 如果为 true,则按下按钮时进行视频通话,否则进行语音通话。 |
resourceID | String | 否 | 用于配置离线呼叫邀请铃声,需与在 ZEGO 控制台 配置的值保持一致。 |
timeout | Number | 否 | 超时时长。默认为60秒。 |
如需了解更多参数,请参考 自定义通话。
至此,您可以通过点击此按钮进行呼叫邀请。
运行和测试
至此,您已经完成了所有步骤!
只需在 Android Studio 中点击 Run 即可在设备上运行和测试您的应用程序。
相关指南
通话设置
资源
示例代码
获取完整示例代码。