Android TV SDK 参考手册
HmcpManager 类
方法 | 描述 |
---|---|
getInstance | 获取实例 |
init | 初始化云服务 |
getCloudId | 获得实例cid |
gameArchived | 查询用户是否有存档 |
getGameArchiveStatus | 获取存档状态 |
setReleaseCid | 释放指定的cid |
checkPlayingGame | 查询用户是否有正在进行,实例未被释放的游戏 |
getResolutionInfos | 获取分辨率列表 |
HmcpVideoView 类
方法 | 描述 |
---|---|
play | 开始游戏 |
setUserInfo | 设置用户登陆信息 |
setConfigInfo | 配置信息 |
setHmcpPlayerListener | 播放器的监听回调 |
onStart | 生命周期 onStart |
onResume | 生命周期 onResume |
onPause | 生命周期 onPause |
onStop | 生命周期 onStop |
onDestroy | 生命周期 onDestroy |
onExitGame | 退出游戏 |
backToGame | 对应用层开放的返回游戏的接口 |
onSwitchResolution | 切换播流的码率 |
sendMessage | 对应用层开放的发送消息的接口 |
getLastUserOperationTimestamp | 获取用户最后一次指令时间戳 |
resetInputTimer | 重置无操作超时计时器 |
startPlay | 重新申请游戏 |
updateGameUID | 游戏过程中,更新UID、游戏时长接口 |
getQRCodeData | 获取虚拟手柄二维码数据 |
getInputUrl | 获取Input地址 |
entryQueue | 排队状态下,进入队列方法 |
exitQueue | 排队状态下,退出排队 |
getClockDiffVideoLatencyInfo | 返回基于时钟校准的延迟信息 |
getVideoLatency | 获取网络延迟接口 |
startLiving | 对应用层开放的游戏直播接口 |
stopLiving | 对应用层开放的停止游戏直播接口 |
getPinCode | 对应用层开放的获取授权码接口 |
contronPlay | 对应用层开放的获得控制权接口 |
getLivingCapabilityStatus | 对应用层开放的是否支持直播接口 |
TelevisionVideoView 类
方法 | 描述 |
---|---|
setMouseMoveStep | 设置鼠标灵敏度 |
getButtonMappings | 获取键位映射数据 |
setInitMousePoint | 设置鼠标初始化坐标 |
setMouseIcon | 设置鼠标图标 |
成员函数说明
getInstance
public static HmcpManager getInstance()
单例类,创建一个 HmcpManager 对象。
返回参数 | 参数说明 |
---|---|
HmcpManager | 单例类,如果没有初始化则创建一个新对象 |
init1
public void init(Context context, final OnInitCallBackListener callBack)
参数 | 参数类型 | 参数说明 |
---|---|---|
context | Context | Context 上下文对象 |
callBack | OnInitCallBackListener | 初始化返回的结果回调 |
init2
public void init(Bundle bundle, Context context, OnInitCallBackListener callBack)
参数 | 参数类型 | 参数说明 |
---|---|---|
context | Context | Context 上下文对象 |
callBack | OnInitCallBackListener | 初始化返回的结果回调 |
bundle | Bundle | Bundle |
getCloudId
public String getCloudId()
获取当前云游戏的 cid
返回参数 | 参数说明 |
---|---|
String | 如果 mCloudID = null 则返回空字符串 |
gameArchived
public void gameArchived(String packageName, UserInfo userInfo, final OnSaveGameCallBackListener listener)
查询用户是否有存档
参数 | 参数类型 | 参数说明 |
---|---|---|
packageName | String | 云游戏包名 |
userInfo | UserInfo | 用户信息 |
listener | OnSaveGameCallBackListener | 查询结果的回调监听 |
getGameArchiveStatus
public void getGameArchiveStatus(String packageName, UserInfo userInfo, final OnSaveGameCallBackListener listener)
获取云游戏的存档状态
参数 | 参数类型 | 参数说明 |
---|---|---|
packageName | String | 云游戏包名 |
userInfo | UserInfo | 用户信息 |
listener | OnSaveGameCallBackListener | 查询结果的回调监听 |
setReleaseCid
public void setReleaseCid(String packageName, long cloudId, String cToken, String appChannel, UserInfo2 userInfo2, final OnSaveGameCallBackListener listener)
释放指定的cid
参数 | 参数类型 | 参数说明 |
---|---|---|
packageName | String | 云游戏包名 |
cloudId | Long | 云服务实例 ID |
cToken | String | 用来校验参数的有效性,cToken的计算方法请参考服务端SDK文档 |
userInfo2 | UserInfo2 | 用户信息 |
listener | OnSaveGameCallBackListener | 查询结果的回调监听 |
checkPlayingGame
public void checkPlayingGame(UserInfo userInfo, final OnGameIsAliveListener listener)
查询用户是否有正在进行,实例未被释放的游戏
参数 | 参数类型 | 参数说明 |
---|---|---|
userInfo | UserInfo | 用户信息 |
listener | OnGameIsAliveListener | 查询结果的回调监听 |
getResolutionInfos
public void getResolutionInfos(String packageName, String mAppChannel, final OnGetResolutionsCallBackListener listener)
获取云游戏的分辨率列表
参数 | 参数类型 | 参数说明 |
---|---|---|
packageName | String | 云游戏包名 |
mAppChannel | String | 如果存在多款游戏同包名的情况,可以通过appChannel区分。如果不存在则可以忽略。 |
listener | OnGetResolutionsCallBackListener | 查询结果的回调监听 |
play
public void play(Bundle bundle)
开始游戏
参数 | 参数类型 | 参数说明 |
---|---|---|
bundle | Bundle | 传递相关属性信息 |
setUserInfo
public void setUserInfo(UserInfo userInfo)
设置用户登录信息
参数 | 参数类型 | 参数说明 |
---|---|---|
userInfo | UserInfo | 用户登陆信息包括 userId 和 userToken |
setConfigInfo
public void setConfigInfo(String config)
配置信息
参数 | 参数类型 | 参数说明 |
---|---|---|
config | String |
setHmcpPlayerListener
public void setHmcpPlayerListener(HmcpPlayerListener hmcpPlayerListener)
云游戏播放时监听回调方法
参数 | 参数类型 | 参数说明 |
---|---|---|
hmcpPlayerListener | HmcpPlayerListener |
onStart
public void onStart()
在 Activity 的 onStart 方法调用
onResume
public void onResume()
在 Activity 的 onResume 方法调用
onPause
public void onPause()
在 Activity 的 onPause 方法调用
onStop
public void onStop()
在 Activity 的 onStop 方法调用
onDestroy
public void onDestroy()
在 Activity 的 onDestroy 方法调用
onExitGame
public void onExitGame()
结束云游戏并退出
backToGame
public void backToGame()
返回到游戏界面,针对有些第三方登陆多级,无法返回的情况。
onSwitchResolution
public void onSwitchResolution(int level, ResolutionInfo resolution, int rate)
刷新分辨率
参数 | 参数类型 | 参数说明 |
---|---|---|
level | Int | 验证版本号 |
resolution | ResolutionInfo | 要切换的分辨率信息 |
rate | Int | 可以随机数据 |
sendMessage
public void sendMessage(String payload, MessageType type, OnSendMessageListener listener)
发送消息给云游戏的接口
参数 | 参数类型 | 参数说明 |
---|---|---|
payload | String | 需要发送的消息 |
type | MessageType | 消息类型,只支持 MessageType.PAY_TYPE |
listener | OnSendMessageListener | 发送消息后,接口回调监听函数 |
getLastUserOperationTimestamp
public long getLastUserOperationTimestamp()
获取用户最后一次操作实例的时间戳
返回参数 | 参数说明 |
---|---|
Long | 默认返回 0,代表用户没有操作过实例,否则返回相应时间戳 |
resetInputTimer
public int resetInputTimer(boolean needUpdateTimestamp)
public int resetInputTimer()
重置无操作超时计时器
入参数 | 参数类型 | 参数说明 |
---|---|---|
needUpdateTimestamp | Boolean | true:重置计时器并且更新用户最后一次操作时间戳 false:重置计时器不更新用户最后一次操作时间戳 |
返回参数 | 参数类型 | 参数说明 |
---|---|---|
result | Int | 0 : 代表和实例连接异常 1 : 重置无操作超时计数器成功 |
startPlay
public void startPlay()
重新申请游戏
updateGameUID
public void updateGameUID(final Bundle bundle, final OnUpdataGameUIDListener listener)
更新UID和游戏时长
参数 | 参数类型 | 参数说明 |
---|---|---|
bundle | Bundle | 调用 putXXX() ,将下列所有参数赋值并打包到 bundle 中 |
playingTime | Long | 游戏时长 |
userID | String | 新的用户 id ,UID |
tip | String | 更新成功的 tip 显示 |
proto_data | String | 更新的 proto data |
cToken | String | 更新的 cToken ,用来校验参数的有效性 |
listener | OnUpdataGameUIDListener | 接口监听回调函数 |
getQRCodeData
public String getQRCodeData()
获取虚拟手柄二维码Json数据
返回参数 | 参数说明 |
---|---|
String | 虚拟二维码的 Json 数据 |
getInputUrl
public String getInputUrl()
获取当前云游戏的 InputUrl 地址
返回参数 | 参数说明 |
---|---|
String | 云游戏的 InputUrl 地址 |
entryQueue
public void entryQueue()
确认进入排队方法
exitQueue
public void exitQueue()
退出排队方法
getClockDiffVideoLatencyInfo
public VideoDelayInfo getClockDiffVideoLatencyInfo()
返回当前云游戏延迟相关信息
返回参数说明
方法 | 方法说明 |
---|---|
VideoDelayInfo.getNetDelay() | 获取帧网络耗时(最近1S内随机采样1帧) |
VideoDelayInfo.getDecodeDelay() | 获取帧解码耗时(最近1S内随机采样1帧) |
VideoDelayInfo.getRenderDelay() | 获取帧渲染耗时只包含解码后送入渲染队列的时间,不包含系统渲染部分(最近1S内随机采样1帧) |
VideoDelayInfo.getFrameSize() | 获取帧大小(最近1S内随机采样1帧) |
VideoDelayInfo.getVideoFps() | 获取视频帧率 |
VideoDelayInfo.getBitRate() | 获取视频码率 |
VideoDelayInfo.getReciveFrameCount() | 收到的总帧数 |
VideoDelayInfo.getReceiveFrameSize() | 收到帧的总大小 |
getVideoLatency
public int getVideoLatency()
获取实时视频网络延迟,单位为ms
返回参数 | 参数说明 |
---|---|
Int | 实时视频网络延迟,单位为 ms |
startLiving
public void startLiving(String livingId, String livingUrl, OnLivingListener listener)
游戏直播接口
参数 | 参数类型 | 参数说明 |
---|---|---|
livingId | String | 直播ID |
livingUrl | String | 直播地址 |
listener | OnLivingListener | 调用结果回调 |
stopLiving
public void stopLiving(String livingId, OnLivingListener listener)
停止直播
参数 | 参数类型 | 参数说明 |
---|---|---|
listener | OnLivingListener | 调用结果回调 |
livingId | String | 直播ID |
getPinCode
public void getPinCode(OnContronListener listener)
获取直播授权码
参数 | 参数类型 | 参数说明 |
---|---|---|
listener | OnContronListener | 调用结果回调 |
contronPlay
public void contronPlay(String cid, String pinCode, OnContronListener listener)
获得控制权接口
参数 | 参数类型 | 参数说明 |
---|---|---|
cid | String | cid |
pinCode | String | 授权码 |
listener | OnContronListener | 结果回调 |
getLivingCapabilityStatus
public void ELivingCapabilityStatus getLivingCapabilityStatus()
是否支持直播
参数 | 参数类型 | 参数说明 |
---|---|---|
ELivingCapabilityStatus | ENUM | 是否支持直播状态 |
setMouseMoveStep
public void setMouseMoveStep(int step)
设置鼠标灵敏度
参数 | 参数类型 | 参数说明 |
---|---|---|
step | Int | 取值 0 - 10之间值 |
getButtonMappings
public List getButtonMappings()
获取键位映射数据
返回参数 | 参数说明 |
---|---|
List | 映射键鼠对应的值 |
setInitMousePoint
public boolean setInitMousePoint(float x, float y)
设置鼠标初始化坐标
参数 | 参数类型 | 参数说明 |
---|---|---|
x | Float | x 坐标值 |
y | Float | y 坐标值 |
setMouseIcon
public void setMouseIcon(String name, int type)
设置鼠标显示图标
参数 | 参数类型 | 参数说明 |
---|---|---|
name | String | gif、image 资源名称 |
type | Int | 鼠标资源的格式,目前仅支持图片 type = 0 和 GIF type = 1 |