2025HarmonyOS创新赛特等奖团队独家发文,开源并分享作品游戏创新能力!

作者: CBISMB

责任编辑: 宋慧

来源: CBISMB

时间: 2025-12-15 12:18

关键字: 创新赛,HarmonyOS,开发者,智能体,元星空

浏览: 5397

点赞: 292

收藏: 41

历时五个月,超万名开发者参加,涌现百余创新成果,华为终端面向开发者领域的顶级开发赛事——2025 HarmonyOS 创新赛圆满落幕!

86个充满创新体验的App/AI智能体/元服务在2025 HarmonyOS创新赛脱颖而出,恭喜所有获奖开发团队!

(2025 HarmonyOS 创新赛获奖名单:https://developer.huawei.com/consumer/cn/activity/digixActivity/digixcmsdetail/digixWinnersDetail/101750143863263087?ha_source=zxqyITwang&ha_sourceId=89000090)

图片

其中,“元星空”App利用鸿蒙全场景接续、端侧AI、多设备协同、小艺智能体、近场分享、服务卡片等6大创新特性,为用户提供3D空间化创新的太空探索平台,用坚实的技术和产品体验创新赢得2025 HarmonyOS创新赛特等奖,获得了高达50万的现金激励和50万流量激励!!


获得顶级大奖后,“元星空”团队开发者啊喵第一时间在CBI传媒HarmonyOS开发者社区发表博文,分享作品开发创新能力细节,并开源分享给更多鸿蒙开发者。

以下为“元星空”团队分享文章原文:



最近啊喵和圣子参加2025 HarmonyOS创新赛,项目运气不错,拿了特等奖。(感谢CBI传媒和鸿蒙开发者生态与技术同学的支持)

图片

说实话,奖金当然开心,但更重要的是:我把创新赛用到的的能力,顺手整理成了一个小 SDK——HarmonyOS-Inno把鸿蒙的创新能力做成一个统一入口,让应用/游戏接入更省事

今天会继续Roll一个星空键盘(公众号关注老菜喵, 评论区Top 20 Roll, 截止时间 12月16日下午5点, PS 最近2次中奖的不能参加喔)

图片



1. 为什么要做 HarmonyOS-Inno:懒

很多创新能力单独看都不复杂,但项目一多,代码就会比较乱.

图片

所以我做的方式很简单:把常用能力封装成一组 API,并且统一处理版本判断、canIUse、Toast 提示等细节。你只需要关心“我想在这个时刻触发什么体验”, 因为游戏类场景的业务比较负责, 啊喵并没有把bridge封装成har, 方便其他项目2次修改.



2. 接入开始

bridge 文件夹放到工程里(例如 entry/src/main/ets/bridge),然后在 UIAbility 或页面初始化时加上:

// UIAbility 或页面初始化时OHBridge.context = getContext(this);OHBridge.uiContext = this.getUIContext();

这一步很关键:不然弹 Toast、相册保存、部分 UI 交互会会拿不到context.



3. 碰一碰分享:适合“组队/邀请/互加”

我个人很喜欢“碰一碰”这种交互,因为它解决的不是分享本身,而是把协作成本压到最低

在游戏里怎么用?

  • 碰一碰组队:不用复制房间号,不用手动输入
  • 碰一碰发邀请/名片:把 UID、队伍信息、活动页直接打包成链接
  • 碰一碰发爱心:把爱心或者能量碰一碰给朋友

实现上推荐用 Hyperlink 传数据(更灵活、更轻量),把队伍信息编码进 URL 参数里:

import { startKnockShare } from'./sdk/OHBridge';functionbuildJoinLink(teamId: string, token: string) {const base = 'https://game.example.com/join';const qs = `teamId=${encodeURIComponent(teamId)}&token=${encodeURIComponent(token)}&v=1`;return`${base}?${qs}`;}const cfg = {type: 'link',  content: buildJoinLink('T123456', 'SIGNED_TOKEN_FROM_SERVER'),  title: '碰一碰,一起组队',  description: '点开就能加入我的队伍',};startKnockShare(JSON.stringify(cfg));

提醒:不要把“能直接入队”的关键权限明文塞 URL 里,最好用服务端签发的短期 token(可过期、可验签),安全和可控性会好很多。



4. 隔空分享:把“分享”变成手势

隔空分享在内容类/游戏里非常适合做“高光时刻”的传播:战绩图、截图卡片、活动海报……用户愿意分享,但不愿意点很多步, 链路更短。

Image

这里对系统版本做了判断(HarmonyOS 6.0+ 才支持, 没有仔细找这块的CanIUse),你不用自己到处写 majorVersion >= 6

import { startGestureShare } from'./sdk/OHBridge';const cfg = {  type: 'image',  filePath: '/data/storage/el2/base/haps/entry/files/tmp/result.jpg',  title: '隔空分享截图',  description: '刚打完,趁热分享',};startGestureShare(JSON.stringify(cfg));

如果是游戏,建议把它绑定在两个地方:

  1. 结算页:生成战绩卡 → 一键进入隔空分享
  2. 相册/回放页:用户选中某张高光 → 直接隔空发出去


5. 端侧 TTS:让内容“可听化”,而且不怕断网

端侧 TTS 特别适合做两类体验:

  • 信息提示类:组队成功、倒计时、关键状态播报
  • 内容讲解类:剧情旁白、百科解释、关卡提示

调用很简单:

import { startTTS, stopTTS } from'./sdk/OHBridge';startTTS('欢迎加入队伍,我们准备开打了');//手动停止stopTTS();

别让TTS 影响用户体验。抓关键节点播报就好,用户关闭引导/播报时候即时停止.



6. Agent:把“攻略/客服/助手”留在应用里

很多应用最怕的不是功能少,而是用户一旦切出去,就不一定回得来。Agent 的价值就在这里:把“问答 + 引导 + 分解任务”放在当前页面解决

Image

在游戏里你可以做:

  • 关卡策略助手:给路线、给配装、给注意事项
  • 活动任务助手:今天做什么收益最高
  • 新手引导助手:把教程结合上下文和用户进度自动索引
  • 内容解释、推荐理由、搜索增强
  • 客服 FAQ、自助排障

OHBridge 封装了展示/隐藏面板(options 里面可以配置不同智能体的id, query里面添加和用户有关的context):

import { showAgent, hideAgent } from'./sdk/OHBridge';showAgent(JSON.stringify({  tittle: '队伍助手',  query: '帮我生成一个3人开黑的分工建议',  options: {}}));// 不需要时hideAgent();

如果你的主页面是 XComponent(比如游戏渲染),按 README 的方式在布局里加 AgentKitComponent,就能做到“主画面不动,助手浮层随叫随到”。



7. 元星空 App:创新能力合理使用

我把这些能力组合进了 元星空 App(真实宇宙数据 3D 全景/探索向)。它更像一个“样板间”:同样的能力,放到具体场景里才真正有意义。

图片


  • 隔空分享:探索到好看的星球卡片,直接隔空甩给朋友
  • 碰一碰分享:把链接/内容快速给到身边的人或设备
  • 端侧 TTS:星体介绍可听化,像随身讲解
  • Agent 面板:边看边问,“这颗星为什么这样?”不需要切出APP

创新能力不是堆出来的,而是用来增强用户体验



8. Ctrl+C/V

HarmonyOS-Inno 做到现在,很多体验可以直接套用,节省的时间能拿去打磨产品。


建议优先从这四个方向下手:

  • 碰一碰:降低协作/邀请成本
  • 隔空分享:缩短传播链路
  • 端侧 TTS:增强沉浸与可用性(并兼顾离线)
  • Agent:把“答案”留在应用里,减少流失

大家对游戏AI开发, 鸿蒙开发, 和游戏出海比较感兴趣的也可以加入9群沟通:


项目地址: https://github.com/iwae/HarmonyOS-Inno




鸿蒙极客持续招募中~!!

鸿蒙极客是经华为认证的 HarmonyOS 开发者荣誉称号,是热衷于技术、充满创新活力与探索精神,并积极参与技术社区的先锋群体。用代码筑梦未来,共建共享鸿蒙新世界。

复制链接,立即加入:https://developer.huawei.com/consumer/cn/programs/harmonyosgeek/?ha_source=CBI&ha_sourceId=70000001


©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。