首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
HarmonyOS
发新帖
0
0
[原创]借助游戏预启动提前加载游戏,读条快人一步
发表于: 2026-7-13 16:40
2329
[原创]借助游戏预启动提前加载游戏,读条快人一步
HarmonyOS SDK
2026-7-13 16:40
2329
互联网游戏已成为大众调节枯燥生活的重要娱乐方式,其即时满足的娱乐属性能够让玩家快速沉浸其中,然而,玩家在启动大部分游戏时,常面临漫长的加载等待,被迫承受多重焦虑,若中途因来电、通知等被打断,更需重新排队加载。耐心耗尽下,不少玩家在启动过程中便选择退出,直接导致游戏应用流失大量玩家。 基于该问题,HarmonyOS SDK图形加速服务(Graphics Accelerate Kit)提供了游戏预启动加速能力,能够根据用户的使用习惯,在系统资源充足时提前拉起游戏应用,进行部分初始化和资源加载,从而在用户触发启动时显著缩短游戏启动时间,提升用户游戏体验。  冷启动  预启动 **游戏预启动和常规冷启动的区别演示** ### 业务流程 在应用实现游戏预启动的过程中,可能会遇到资源更新、用户未同意隐私协议等场景,此时开发者可以调用terminateGamePrelaunch接口,通知游戏启动加速服务终止当前预启动。 若在应用实现尤其预启动过程中,未检测到异常状态,那么游戏引擎会开始自渲染并运行到登录页或大厅界面,之后开发者可以调用completeGamePrelaunch接口,自主决定预启动到达的最终阶段,并在到达该阶段后及时通知启动加速服务游戏预启动已完成。  ### 开发实现 1.获取UIAbility启动原因。 开发者可在UIAbility的onCreate生命周期回调中通过want.parameters获取启动原因,当参数ohos.params.gamePrelaunch为true时,表示当前UIAbility是由游戏预启动运行的。 ``` import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit'; import { launchAcceleration } from '@kit.GraphicsAccelerateKit'; let isPrelaunchStart: boolean = false; export default class EntryAbility extends UIAbility { onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void { // 判断是否是预启动运行,want中ohos.params.gamePrelaunch可能为undefined,赋值时需设置默认值false isPrelaunchStart = (want.parameters?.["ohos.params.gamePrelaunch"] as boolean) ?? false; console.info(`EntryAbility onCreate, isPrelaunchStart:${isPrelaunchStart}`); // ... } } ``` 2.通知启动加速服务当前游戏预启动完成。 ``` async completeGamePrelaunch() { if (!isPrelaunchStart) { // 若当次非预启动运行,游戏启动完成后不进行任何处理 return; } if (canIUse('SystemCapability.GraphicsGame.LaunchAcceleration')) { try { // 通知启动加速服务,当次预启动已完成 await launchAcceleration.completeGamePrelaunch(this.context); console.info('completeGamePrelaunch success'); } catch (err) { console.error(`completeGamePrelaunch failed, code is ${err.code}, message is ${err.message}`); } } } ``` 3.通知启动加速服务取消当次游戏预启动。 ``` async terminateGamePrelaunch() { if (!isPrelaunchStart) { // 若当次非预启动运行,游戏启动完成后不进行任何处理 return; } if (canIUse('SystemCapability.GraphicsGame.LaunchAcceleration')) { try { // 通知启动加速服务,终止当前预启动 await launchAcceleration.terminateGamePrelaunch(this.context); console.info('terminateGamePrelaunch success'); } catch (err) { console.error(`terminateGamePrelaunch failed, code is ${err.code}, message is ${err.message}`); } } } ``` **了解更多详情>>** 访问<a href="elink@adcK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3K9r3q4J5L8h3!0F1P5h3!0K6i4K6u0V1k6%4g2A6k6r3g2K6i4K6u0r3k6%4u0S2M7r3S2A6j5%4y4Q4x3X3c8S2j5$3y4W2L8r3g2J5j5i4c8W2i4K6u0V1K9$3W2@1i4K6u0V1k6%4g2A6k6r3g2Q4x3@1k6Z5j5g2)9#2k6Y4y4G2N6i4u0U0k6g2)9K6c8r3S2E0M7K6p5`.">图形加速服务联盟官网</a> 获取游戏预启动开发指导文档
传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!
收藏
・
0
点赞
・
0
打赏
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
0
)
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
HarmonyOS SDK
258
发帖
190
回帖
0
RANK
关注
私信
他的文章
[原创]HarmonyOS智慧多窗,让应用在任意窗口都“恰到好处”
90
[原创]AI 赋能 Push Kit 场景化消息开发,高效完成鸿蒙应用推送能力接入
283
[原创]HarmonyOS Push Kit 自分类权益 Skill,助力提升权益申请通过率
362
[原创]基于增强QUIC协议优化弱网下的直播观看体验
525
[原创]焕新鸿蒙应用权限管理方案,应用授权体验再升级
484
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部