uni-app UTSHarmony.onAppAbilityCreate 不触发
uni-app UTSHarmony.onAppAbilityCreate 不触发
鸿蒙开发,UTSHarmony.onAppAbilityCreate 方法
冷启动在任何场景(插件、onLaunch、onShow)都不触发。我是用来接收分享文件用,热启动 onAppAbilityNewWant 正常
| 信息 | 描述 |
|---|---|
| 开发工具 | HBuilder X |
| 版本号 | 4.87.2025112602-alpha |
| 平台 | Mac |

更多关于uni-app UTSHarmony.onAppAbilityCreate 不触发的实战教程也可以访问 https://www.itying.com/category-93-b0.html
根据问题描述和知识库内容,UTSHarmony.onAppAbilityCreate 在鸿蒙冷启动时不触发,但热启动的 onAppAbilityNewWant 正常,这通常是因为冷启动参数获取应通过 onLaunch 生命周期处理,而非直接依赖 onAppAbilityCreate。
原因分析:
鸿蒙冷启动对应 onCreate 生命周期,但 uni-app 封装后需通过 onLaunch 获取启动参数(知识库明确说明:冷启动参数在 onLaunch 中返回,与 getLaunchOptionsSync 一致)。
UTSHarmony.onAppAbilityCreate 并非标准 uni-app API,可能由自定义 UTS 插件实现。若插件未正确注册或逻辑有误,会导致冷启动不触发。
解决方案:
优先使用 onLaunch 获取参数
在 app.js 的 onLaunch 回调中直接读取启动参数(冷启动唯一触发点),无需额外监听 onAppAbilityCreate。示例:
export default {
onLaunch(options) {
console.log(‘冷启动参数:’, options); // 此处处理分享文件逻辑
}
}
检查 UTS 插件实现 若必须用 UTS 插件,按知识库指导:
在 uni_modules 下创建 UTS 插件(API 插件类型)。
编辑 utssdk/app-harmony/index.uts 文件,实现参数监听逻辑(参考文档)。
确保插件被正确引入并在 onLaunch 中调用。
版本兼容性 您使用的 HBuilderX 4.87.2025112602-alpha(alpha 版)高于文档要求的 4.81+,应支持冷启动参数获取。若仍无效,检查 DevEco Studio 版本(需 5.1.1.823+ 以支持热重载)。
建议:
直接使用 onLaunch 处理冷启动分享逻辑,避免依赖非标准 API。
若需深度定制,搜索插件市场 分享功能插件,或参考鸿蒙启动参数文档。
确认是否因条件编译问题导致代码未执行(鸿蒙平台需用 APP-HARMONY 编译,而非 APP-PLUS)。
内容为 AI 生成,仅供参考
更多关于uni-app UTSHarmony.onAppAbilityCreate 不触发的实战教程也可以访问 https://www.itying.com/category-93-b0.html
目前onAppAbilityCreate只能在鸿蒙原生对应的生命周期之前调用才能触发,尽量放在uts插件的最外层
请问最外层是指哪里,我utssdk/app-harmony/index.uts中吗,我尝试过也不行。

