# 智能硬件
# 简介
智能硬件是继智能手机之后的一个科技概念,通过软硬件结合的方式,对传统设备进行改造,进而让其拥有智能化的功能。智能化之后,硬件具备连接的能力,实现互联网服务的加载。主流智能硬件有手表、电视和部分电器。使用 JCSDK 实现手机和智能硬件之间互通时,针对手机端和智能硬件端需要设置不同的媒体模式。
# Android 手机和 Android 手表等设备互通时
当 Android 手机端和 Android 手表互通的时候,两端的集成方式类似,区别在于媒体模式的选择:
在初始化通话所需的时候,调用 generateByMode (opens new window) 生成媒体配置参数 MediaConfig (opens new window) 对象。传入的参数即为媒体模式,不同的终端设备需要选择其对应的模式。
终端 模式 Android 手机 选择 MODE_INTELLIGENT_HARDWARE_LARGE 模式 Android 手表 选择 MODE_INTELLIGENT_HARDWARE_SMALL 模式 调用 updateMediaConfig (opens new window) 更新媒体参数。
调用 call (opens new window) 发起通话。
Android 手机端示例代码:
// 1. 获取 MediaConfig
JCCall.MediaConfig mediaConfig = JCCall.MediaConfig.generateByMode(JCCall.MediaConfig.MODE_INTELLIGENT_HARDWARE_LARGE );
// 2. 更新 MediaConfig 属性
JCManager.getInstance().call.updateMediaConfig(mediaConfig);
// 3. 发起通话
JCManager.getInstance().call.call("对⽅账号", true, null);
# iOS 手机和 Android 手表等设备互通时
当 iOS 手机端和 Android 手表互通的时候,两端的集成方式类似,区别在于媒体模式的选择:
在初始化通话所需的时候,调用 generateByMode (opens new window) 函数生成媒体配置参数 JCCallMediaConfig (opens new window) 对象。传入的参数即为媒体模式,不同的终端设备需要选择其对应的模式。
终端 模式 iOS 手机 选择 JCCallMediaConfigModeIntelligentHardware 模式 Android 手表 选择 MODE_INTELLIGENT_HARDWARE_SMALL 模式 设置 JCCall 对象的 mediaConfig (opens new window) 属性。
调用 call (opens new window) 发起通话。
iOS 手机端示例代码
// 获取 JCCallMediaConfig 对象并更新 JCCall 对象的 mediaConfig 属性
JCManager.shared.call.mediaConfig = [JCCallMediaConfig generateByMode:JCCallMediaConfigModeIntelligentHardware];
// 发起语音呼叫
JCCallParam *param = [[JCCallParam alloc] init];
[call call:@"对方账号" video:false callParam:param];