更新记录
1.0.4(2025-03-04) 下载此版本
- 升级鸿蒙SDK 2.2.0
- 新增 App Linking 集成文档
1.0.3(2025-01-16) 下载此版本
- 新增 getOpid 接口
- 修改集成文档
1.0.2(2025-01-13) 下载此版本
删除未实现的接口
查看更多平台兼容性
uni-app x
Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
---|---|---|---|---|---|
- | - | × | × | √ | - |
openinstall-uts-harmony
方便鸿蒙平台集成使用 openinstall 功能,实现携带参数安装,渠道统计,一键拉起全部功能。
配置
使用前需要在 harmony-configs 的 entry/src/main/module.json5
中进行配置
harmony-configs 的配置方法参考 dcloud官网文档
配置 appkey 和权限
{
"module": {
// ...
"metadata": [
{
"name": "com.openinstall.APP_KEY",
"value": "openinstall为应用生成的appkey",
}
],
"requestPermissions": [
{
"name": "ohos.permission.INTERNET"
},
{
"name": "ohos.permission.GET_WIFI_INFO"
},
{
"name": "ohos.permission.GET_BUNDLE_INFO"
},
{
"name": "ohos.permission.STORE_PERSISTENT_DATA"
}
],
}
}
配置 scheme
在需要打开的Ability中配置 scheme,用于浏览器中跳转到应用
{
"module": {
// ...
"abilities": [
{
"name": "EntryAbility",
"srcEntry": "./ets/entryability/EntryAbility.ets",
// ...
"exported": true,
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
},
// setting scheme start
{
"entities": [
"entity.system.default",
"entity.system.browsable",
],
"actions": [
"ohos.want.action.viewData",
],
"uris": [
{
"scheme": "openinstall为应用生成的scheme",
}
]
}
// setting scheme end
]
},
// ...
],
}
}
集成App Linking
1、登录AppGallery Connect,点击“我的项目”,在项目列表中点击您的项目;
2、在左侧导航栏中选择 增长 > App Linking ,选择 应用链接(API>=12 适用) 页签,点击“创建”;
3、填写 openinstall 为应用生成的用于HarmonyOS应用关联的网址域名,设置完成后点击“发布”;
4、在应用的module.json5文件中进行如下配置,以声明应用关联的域名地址,并开启域名校验开关。
{
"module": {
//...
"abilities": [
{
"name": "EntryAbility",
"srcEntry": "./ets/entryability/EntryAbility.ets",
//...
"exported": true,
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
},
// setting applinking start
{
"entities": [
"entity.system.browsable"
],
"actions": [
"ohos.want.action.viewData"
],
"uris": [
{
"scheme": "https",
"host": "openinstall为应用生成的关联域名"
}
],
"domainVerify": true
}
// setting applinking end
]
}
//...
]
}
}
导入
import * as OpenInstall from "@/uni_modules/openinstall-uts-harmony";
初始化
建议在 App.vue 的 onLaunch 方法中进行初始化
OpenInstall.init()
获取拉起数据
在初始化之后调用,注册拉起回调
OpenInstall.registerWakeUp({
fail: (err) => {
uni.showModal({
icon: 'none',
title: '获取拉起参数错误:' + JSON.stringify(err)
})
},
success: (result) => {
uni.showModal({
icon: 'none',
title: '拉起参数:' + JSON.stringify(result)
})
}
})
获取安装数据
在需要安装数据时调用,默认超时 10 秒
OpenInstall.getInstall({
fail: (err) => {
uni.showModal({
icon: 'none',
title: '获取安装参数错误: ' + JSON.stringify(err)
})
},
success: (result) => {
uni.showModal({
icon: 'none',
title: '安装参数:' + JSON.stringify(result)
})
}
});
支持传入回调超时时间的函数 getInstallWithTimeout(callback, seconds)
事件上报
// 注册统计
OpenInstall.reportRegister()
// 效果点统计
OpenInstall.reportEffectPoint("effect_test", 1);
// 效果点明细统计
let extra = {
"x": "hello",
"y": "100",
"z": "false"
}
OpenInstall.reportEffectPointWithParams("effect_detail", 1, extra);
分享上报
用于裂变分享上报
shareCode : 分享标识码(用户标识)
sharePlatform : 分享平台,参考openinstall官网定义的平台字符串
OpenInstall.reportShare("c11011", "QQ", {
fail: (err) => {
uni.showModal({
icon: 'none',
title: 'error = ' + JSON.stringify(err)
})
},
success: (result) => {
uni.showToast({
icon: 'none',
title: 'report success'
})
}
})