AI运动小程序鸿蒙平台适配指南

鸿蒙5的首版发布距现在已快满一年了,同时伴随着华为终端芯片制造的突破,搭载有HarmonyOS5的终端及用户的保有量在不断的上升,各大厂商的APP也在逐渐适配鸿蒙生态,微信小程序生态也在逐渐适配成熟,移动端适配HarmonyOS生态已势在必行。今天我们就结合我们一段时间以来「Ai乐运动」用户的反馈、实测验证,来聊聊AI运动小程序在鸿蒙端的适配。 注:本文主要介绍适配鸿蒙5以及后的HarmonyOS Next纯血版鸿蒙版本,HarmonyOS 4及以前的版本因为还兼容Android生态、微信小程序运行时也与Android版本无差异,所以无需特别适配。

一、AI运动识别插件在鸿蒙5的实测表现

使用版v8.0.11微信分别在Harmony5.0.1Harmony5.1.0的实际测试结果如下:

功能 功能表现 备注
识别引擎ve1 正常 但精度不佳 ,与MTK芯片问题一致,开启增强模式即可解决
识别引擎ve1,增强模式 正常 Harmony5+建议识别模式
识别引擎ve1 正常
骨骼图绘制 正常
资态识别 正常
运动识别检测 正常
运动自定义扩展 正常

测试使用时的插件版本为当前最新版本1.5.8,从结果看AI运动识别插件的功能在鸿蒙5的表现不存在兼容性问题,可以正常使用。

二、AI运动小程序在鸿蒙5的兼容性问题

使用微信版本v8.0.11分别在Harmony5.0.1Harmony5.1.0测试兼容问题主要表现在小程序的Camera组件,问题为Camera的非原生事件,即Web渲染层事件如taptouch___相关事件完全不触发或偶尔触发但是没有冒泡向上传播,代码如下:

html 复制代码
<template>
	<view class="human-detection" style="videoStyles" @tap="onWrapperClick">
		<!--原生initdone、error事件能正常触发,但是渲染层事件tap不触发,或者偶尔触发但不冒泡-->
		<camera id="preview" class="preview" :style="videoStyles" flash="off" :device-position="deviceKey"
			resolution="medium" frame-size="small" @initdone="onCameraReady" @error="onCameraError" @tap="onCameraClick">
		</camera>
	</view>
</template>

如果您的AI运动小程序依赖Camera组件的非原生事件来交互,如全屏模式下点击组件打开操作菜单等,在小程序运行时彻底修复上述问题之前,可以考虑先采用在Camera组件覆盖一个一样大小、透明的非原生组件如view来解决此问题,代码如何下:

html 复制代码
<template>
	<view class="human-detection" style="videoStyles" @tap="onWrapperClick">
		<camera id="preview" class="preview" :style="videoStyles" flash="off" :device-position="deviceKey"
			resolution="medium" frame-size="small" @initdone="onCameraReady" @error="onCameraError" @tap="onCameraClick">
		</camera>
		<!--增加一个遮罩层来承担交互,保证非原生事件能正常触发-->
		<view class="hramony-fix" :style="videoStyles"></view>
	</view>
</template>
<script>
export default{
	data(){
		return {};
	},
	methods:{
		onCameraClick(e){
			//不会触发
		},
		onWrapperClick(e){
			//修补可以正常触发
		}
	}
}
</script>

三、在纯血鸿蒙下的适配指引

  • 3.1、将AI运动识别插件升级到最新版本,并为纯血鸿蒙版本的用户开启增强模式
  • 3.2、提示或调用API引导用户升级到最新版本的微信。
  • 3.3、若存在依赖Camera组件非原生事件交互的问题,可使用上述临时方案修复交互。

AI运动小程序在纯血鸿蒙下的适配就为您介绍到这,若有其它的适配场景我们继续为您分享,欢迎关注...

相关推荐
图扑软件7 分钟前
中篇・运笔|统一 DataModel 底座,HT UI 组件万物同源
javascript·低代码·ui·性能优化·数据可视化
小小尚@1 小时前
WebGIS/ECharts 地图开发|MapLand 在线行政区划边界一键下载 GeoJSON 工具
前端·javascript·echarts
葡萄城技术团队2 小时前
工业数据可视化:使用活字格 AIcoding + Three.js 构建轻量化三维设备监控大屏
开发语言·javascript·信息可视化
默_笙2 小时前
🚍 一条 Todo 的奇幻漂流:TypeScript 全栈类型安全的"护照检查"
前端·javascript
weixin_422555423 小时前
el-menu子菜单点击就被激活,恢复之前的激活状态
javascript·vue.js·elementui
Tanjia_kiki5 小时前
谷歌浏览器中F12编辑并重发请求
开发语言·前端·javascript
honkun66 小时前
vue 表格组件 vxe-table 实现拖拽列字段自动生成透视表汇总
前端·javascript·vue.js
IMPYLH6 小时前
HTML 的 <p> 元素
前端·javascript·html
leoZ2316 小时前
第 4 篇:布局骨架——页面壳、栅格、卡片
前端·javascript·vue.js·opencv·计算机视觉·数据挖掘·语音识别