
# KooPhone端侧SDK功能矩阵
表1基本功能模块 
| **接口类型** | **功能**      | **Android函数名称**     | **js函数名称**         | **功能描述**       |
|:---|:---|:---|:---|:---|
| 串流控制接口   | SDK初始化      | init                | createPlayer       | 初始化云手机SDK      |
| 串流控制接口   | 启动云手机串流     | start               | initMediaStream    | 启动云手机串流        |
| 串流控制接口   | 停止云手机串流     | stop                | closeMediaStream   | 停止云手机串流        |
| 串流控制接口   | 恢复云手机串流     | /                   | resumeMediaStream  | 恢复云手机串流        |
| 串流控制接口   | 销毁串流实例      | /                   | destroyMediaStream | 销毁串流实例         |
| 串流控制接口   | 重新发起串流      | reconnect           | /                  | 重新连接云机         |
| 串流控制接口   | 切换流类型       | switchStreamType    | /                  | 在云机上切换流类型      |
| 基础配置管理接口 | 设置日志文件夹路径   | setLogFolder        | /                  | 设置日志文件夹路径      |
| 基础配置管理接口 | 设置事件回调      | setPlayerCallback   | on                 | 设置事件回调         |
| 基础配置管理接口 | 取消事件回调      | unSetPlayerCallback | off                | 取消事件回调         |
| 高级配置管理接口 | 配置定位功能      | /                   | setGpsStatus       | 设置定位配置         |
| 高级配置管理接口 | 配置剪贴板功能     | enableClipBoard     | /                  | 控制云机上的剪贴板功能    |
| 配置查询接口   | 查询SDK版本号    | version             | version            | 获取当前SDK版本号     |
| 配置查询接口   | 查询云机是否在串流状态 | isPlaying           | /                  | 检查云机是否在串流状态    |
| 配置查询接口   | 查询浏览器是否支持   | /                   | isBrowserSupport   | 检查浏览器是否兼容SDK功能 |
   
表2视频功能模块 
| **接口类型** | **功能**             | **Android函数名称**      | **js函数名称**             | **功能描述**            |
|:---|:---|:---|:---|:---|
| 画面控制接口   | 设置云机横竖屏方向          | setDirection         | /                      | 强制设置云机的横竖屏方向        |
| 画面控制接口   | 设置云机画面分辨率          | setCloudScreenAspect | setCloudScreenAspect   | 动态设置云机的画面比例         |
| 画面控制接口   | 调整云手机亮度            | changeBrightness     | /                      | 向云机发送亮度变化指令         |
| 画面控制接口   | 设置全屏播放             | /                    | setMediaFullScreen     | 设置串流播放器全屏播放         |
| 画面控制接口   | 退出全屏播放             | /                    | setMediaExitFullScreen | 退出串流播放器全屏播放         |
| 画面控制接口   | 设置画中画模式            | /                    | setPicInPicStatus      | 设置画中画模式，打开或者关闭画中画模式 |
| 视频配置管理接口 | 设置质量偏好             | setQualityPreference | setVideoQuality        | 设置云手机的质量偏好          |
| 视频配置管理接口 | 画质调节               | setProfile           | /                      | 设置画质                |
| 视频配置查询接口 | 获取云机当前的profile配置列表 | getProfileList       | getProfileList         | 获取云机当前的profile配置列表  |
| 视频配置查询接口 | 获取媒体元素             | /                    | getMediaElement        | 获取当前串流的媒体元素对象       |
   
表3音频功能模块 
| **接口类型** | **功能**          | **Android函数名称**               | **js函数名称**     | **功能描述**           |
|:---|:---|:---|:---|:---|
| 音频控制接口   | 设置静音            | mute                          | setMuted       | 设置云机的静音状态          |
| 音频控制接口   | 设置云机音量          | changeVolume                  | setCloudVolume | 设置云机的音量等级          |
| 音频控制接口   | 设置串流播放器音量       | /                             | setVolume      | 设置串流播放器音量          |
| 音频控制接口   | 通知云机音频焦点状态变化    | deviceAudioFocusChange        | /              | 通知云机音频焦点状态变化       |
| 音频控制接口   | 设置播放器当前音频流的音量大小 | setAudioTrackVolume           | /              | 设置云机的播放器当前音频流的音量大小 |
| 音频配置管理接口 | 启动音频焦点监听        | startAudioFocusChangeListener | /              | 启动音频焦点监听           |
| 音频配置管理接口 | 启用/禁用音频保持       | enableAudioKeeping            | /              | 启用或禁用音频保持功能        |
| 音频配置查询接口 | 获取音量大小          | /                             | getVolume      | 获取音量大小             |
| 音频配置查询接口 | 查询云机是否静音        | /                             | isMuted        | 查询云机串流播放器是否静音      |
   
表4端云指令模块 
| **接口类型**  | **功能**     | **Android函数名称**       | **js函数名称**             | **功能描述**                                 |
|:---|:---|:---|:---|:---|
| 云操作系统管理接口 | 获取云机磁盘使用情况 | getDiskUsage          | /                      | 用于查询云机的磁盘使用情况                            |
| 云操作系统管理接口 | 获取媒体元数据    | getMetaDataMedia      | /                      | 查询云机的媒体元数据信息                             |
| 云操作系统管理接口 | 获取播放状态     | getPlayBackState      | /                      | 查询云机的播放状态                                |
| 云操作系统管理接口 | 切换夜间模式     | nightModeChange       | /                      | 在云机上启用或禁用夜间模式                            |
| 云操作系统管理接口 | 恢复音乐播放     | resumeMusic           | /                      | 在云机上恢复音乐播放                               |
| 云操作系统管理接口 | 暂停音乐播放     | pauseMusic            | /                      | 在云机上暂停音乐播放                               |
| 应用管理接口    | 获取已安装应用列表  | getInstalledApps      | /                      | 用于查询云机上已安装的应用程序                          |
| 应用管理接口    | 获取正在运行应用列表 | getRunningApps        | /                      | 获取云机上正在运行的应用列表                           |
| 应用管理接口    | 启动云机应用     | startApp              | /                      | 在云机上启动指定的应用程序                            |
| 应用管理接口    | 关闭云机应用     | closeApp              | /                      | 在云机上关闭指定的应用程序                            |
| 应用管理接口    | 卸载云机应用     | uninstallApp          | /                      | 在云机上卸载指定的应用程序                            |
| 应用管理接口    | 加载云机应用     | loadApp               | /                      | 在云机上加载指定的应用程序                            |
| 消息发送接口    | 发送消息到云手机   | sendExtMessageToCloud | /                      | 用于以手机广播形式，向云机系统/云端APP发送自定义消息             |
| 消息发送接口    | 发送按键事件     | sendKeyEvent          | sendKeyEvent           | 向云机发送按键事件                                |
| 消息发送接口    | 发送手柄摇杆事件   | sendJoyStickEvent     | sendAxesEvent          | 用于在云机上模拟手柄摇杆操作                           |
| 消息发送接口    | 发送文件       | sendFile              | sendFile               | 用于将本地文件发送到云机                             |
| 消息发送接口    | 发送虚拟按键     | /                     | sendVirtualButtonEvent | 发送虚拟按键（针对JS场景下， 无物理注入的部分按键， 如home、back等） |
| 消息发送接口    | 剪切板同步      | /                     | paste                  | 将文本发送至云机剪切板                              |
   
表5回调及监听功能模块 
| **接口类型**                                | **功能**      | **Android函数名称**               | **js函数名称**          | **功能描述**                              |
|:---|:---|:---|:---|:---|
| 基础回调接口  | 启动流成功回调     | onSuccess                     | /                   | 云手机连接成功后触发                            |
| 基础回调接口  | 第一帧画面回调     | onFirstFrame                  | /                   | 云机画面首次渲染完成时触发                         |
| 基础回调接口  | 会话结束回调      | /                             | onClose             | 云手机会话结束时触发                            |
| 基础回调接口  | 流异常回调       | onFailure                     | onError             | 云手机连接或运行异常时触发                         |
| 基础回调接口  | 扩展消息回调      | onExtMessageReceived          | /                   | 收到扩展消息时触发                             |
| 基础回调接口  | 弱网络回调       | onWeakNetwork                 | onBadNetwork        | 检测到网络质量变差时触发                          |
| 基础回调接口  | 串流视频信息回调    | /                             | onStatistics        | 默认每秒触发1次，反馈当前串流分辨率，帧率，码率等信息           |
| 基础回调接口  | 串流状态回调      | /                             | onStateChange       | 建立串流、串流过程中连接的状态变化回调。比如请求鉴权，鉴权成功，建联成功等 |
| 基础回调接口  | 云机画质变化回调    | /                             | onProfileChanged    | 串流过程中，由于主动切换视频质量或网络状态变化自动切换视频质量会触发此回调 |
| 基础回调接口  | 云机屏幕方向改变回调  | /                             | onOrientation       | 云机屏幕方向发生变化时触发                         |
| 基础回调接口  | 云机视频画质配置回调  | onProfileList                 | /                   | 主动调用getProfileList()时触发，回调视频画质配置列表    |
| 应用级回调方法                                 | 应用启动回调      | onStartApp                    | /                   | 应用启动操作完成时触发                           |
| 应用级回调方法                                 | 应用关闭回调      | onCloseApp                    | /                   | 应用关闭操作完成时触发                           |
| 应用级回调方法                                 | 获取正在运行的应用回调 | onGetRunningApps              | /                   | 获取正在运行的应用信息完成时触发                      |
| 应用级回调方法                                 | 应用卸载回调      | onUninstallApp                | /                   | 应用卸载操作完成时触发                           |
| 应用级回调方法                                 | 应用加载回调      | onLoadApp                     | /                   | 应用加载操作完成时触发                           |
| 应用级回调方法                                 | 获取已安装应用回调   | onGetInstalledApps            | /                   | 获取已安装应用信息完成时触发                        |
| 应用级回调方法                                 | APK安装状态回调   | onAPKInstallState             | /                   | APK安装状态更新时触发                          |
| 应用级回调方法                                 | 应用生命周期回调    | onAppLifeCycle                | /                   | 应用生命周期状态更新时触发                         |
| 应用级回调方法                                 | 获取媒体元数据回调   | onGetMediaMetadata            | /                   | 获取媒体元数据完成时触发                          |
| 应用级回调方法                                 | 获取播放状态回调    | onGetPlayBackState            | /                   | 获取播放状态完成时触发                           |
| 应用级回调方法                                 | 音频监控回调      | onMonitorAudio                | /                   | 音频监控数据更新时触发                           |
| 应用级回调方法                                 | 音频数据变化回调    | onMonitorAudioAction          | /                   | 音频操作监控数据更新时触发                         |
| 应用级回调方法                                 | 音乐恢复播放回调    | onResumeMusic                 | /                   | 音乐恢复播放操作完成时触发                         |
| 应用级回调方法                                 | 音乐暂停播放回调    | onPauseMusic                  | /                   | 音乐暂停播放操作完成时触发                         |
| 应用级回调方法                                 | 音量变化回调      | onChangeVolume                | onCloudVolumeChange | 音量变化操作完成时触发                           |
| 应用级回调方法                                 | 亮度变化回调      | onChangeBrightness            | /                   | 亮度变化操作完成时触发                           |
| 应用级回调方法                                 | 应用广播消息回调    | /                             | onAppMessage        | 云侧应用下发的广播消息回调                         |
| 应用级回调方法                                 | 自动播放失败回调    | /                             | onAutoplayFailed    | 串流视频自动播放失败回调，通常由于浏览器不支持默认播放导致         |
| 操作系统级回调方法                               | 返回云桌面回调     | onReturnLauncher              | /                   | 用户操作返回云桌面时触发                          |
| 操作系统级回调方法                               | 获取磁盘使用情况回调  | onGetDiskUsage                | /                   | 获取磁盘使用情况完成时触发                         |
| 操作系统级回调方法                               | 云设备音频焦点变化回调 | onCloudDeviceAudioFocusChange | /                   | 云设备音频焦点状态变化时触发                        |
| 操作系统级回调方法                               | 音量控制回调      | onVolumeControl               | /                   | 音量控制操作完成时触发                           |
| 操作系统级回调方法                               | 亮度控制回调      | onBrightnessControl           | /                   | 亮度控制操作完成时触发                           |
   
