createRuntime
创建运行时实例
该方法用于初始化游戏运行所需的底层环境(Runtime)。在整个应用进程生命周期内,通常只需要创建一个运行时实例。该实例负责管理游戏执行时的核心资源和调度逻辑。
方法声明
java
/**
* Create a runtime instance
*
* @param context Context
* @param options Optional parameters
* @param listener Callback listener
*/
public static void createRuntime(Context context, final Bundle options, SUDRT.RuntimeCreateListener listener);参数说明
| 参数名 | 类型 | 必传 | 描述 |
|---|---|---|---|
| options | Bundle | 否 | 运行时的自定义配置参数(如渲染模式、资源路径自定义等)。传 null 则使用默认配置。 |
| listener | SUDRT.RuntimeCreateListener | 否 | 异步创建完成后的回调 |
SUDRT.RuntimeCreateListener
void onSuccess(SUDRT runtime):创建成功,返回的runtime可用于加载core以及创建游戏Handlevoid onFailure(Throwable throwable):创建失败
运行行为
- 单例性质:虽然方法名为
create,但在单进程架构下通常只维护一个 Runtime 实例。 - 异步准备:由于运行时环境可能涉及底层库加载或 GPU 环境初始化,因此通过
listener异步告知结果。 - 依赖关系:必须在
listener.onSuccess:成功之后调用。
代码示例
java
SUDOP.createRuntime(context, null, new SUDRT.RuntimeCreateListener() {
@Override
public void onSuccess(SUDRT runtime) {
// 返回的runtime可用于loadCore及createGameHandle等操作
}
@Override
public void onFailure(Throwable error) {
}
});注意事项
- 生命周期:Runtime 实例通常由 SDK 内部托管,开发者获取到的
id<SUDRT>主要用于确认环境就绪状态或执行底层调试。 - 重复创建:如果 Runtime 已经存在,再次调用此方法通常会直接返回已有的实例或报错,具体取决于 SDK 的内部策略。
- 线程约束:建议在主线程发起创建请求,回调通常也在主线程执行。