public void initVideoViewLegacy(SurfaceView view)| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| view | 是 | SurfaceView | 游戏显示view |
cloudgamelibrary 的第三方 Android 应用,说明 WhaleCloud 在兼容渲染模式下的正确使用方式。WhaleCloud 是 cloudgamelibrary 对外提供的云游戏 SDK。SDK 会根据:render_strategy.render_typeJySurfaceViewSurfaceViewWhaleCloud.getInstance().isLegcyView() 的结果为准。isLegcyView() 为 SDK 现有命名,拼写保持历史兼容。isLegcyView() 返回 true 时:SurfaceViewinitVideoViewLegacy(SurfaceView view)initVideoView(JySurfaceView view)start() 后、onGameBegin() 时同步调用 setGameRect(...)sdkLoading(...)isLegcyView() 依赖 sdkLoading 返回后的配置结果sdkLoading 成功前决定使用哪个渲染 ViewisLegcyView()sdkLoading.onSdkSucc() 之后立即调用initVideoView(JySurfaceView view)initVideoViewLegacy(SurfaceView view)setGameRect(int x, int y, int width, int height)JySurfaceView 和 SurfaceViewsdkLoading(...)onSdkSucc() 中调用 isLegcyView()setDecodeType(...)(如果业务侧需要指定软解/硬解)start(...)setGameRect(...)stopGame(...)setGameRect(...) 的时机:SurfaceView 或其父容器完成布局后WhaleCloud.start(...) 调用后JyGameStatusListener.onGameBegin() 中<FrameLayout
android:id="@+id/video_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.zjrx.jyengine.JySurfaceView
android:id="@+id/video_render"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone" />
<SurfaceView
android:id="@+id/video_render_legacy"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone" />
</FrameLayout>OnLayoutChangeListener:sdkLoading() 前调用 isLegcyView()render_type 还没有写入 SDK 配置initVideoView(JySurfaceView)SurfaceViewsetGameRect(...)sdkLoading.onSdkSucc() 是否成功回调isLegcyView() 返回值是否符合预期legacy=true 时是否真的走了 initVideoViewLegacy(SurfaceView)SurfaceView 是否已经完成布局并拿到有效宽高setGameRect(...) 是否在布局完成后被调用start(...) 是否在渲染 View 初始化之后调用isLegcyView() 结果,每次新会话都以本次 sdkLoading 结果为准SurfaceView