GeorgeGcs
LV.3
鸿蒙应用架构师 HarmonyOS认证创作先锋 华为开发者专家HDE
声望 311
关注 3
粉丝 15
私信
主帖 42
回帖 7
视频 2
提问 12
回答 21
资源 1
专栏
【HarmonyOS5】makeObserved接口详解一、makeObserved接口是什么?makeObserved接口(APIversion12起可用)用于将非观察数据转为可观察数据,适用于三方包类、Sendable装饰的类、JSON.parse返回的对象、collections.ArraySetMap等场景。不支持undefined和null类型。以及V1状态装饰器(StateProp)及已被观察的数据,避免双重代理。主要处理的是Object类型,非Object类型,例如基本数据类型number这种,都不支持。需要注意的是,...
6天前 1205浏览 0点赞 0回复 0收藏
【HarmonyOS5】VisionKit人脸活体检测详解一、VisionKit人脸活体检测是什么?VisionKit是HamronyOS提供的场景化视觉服务工具包。华为将常见的解决方案,通常需要三方应用使用SDK进行集成。华为以Kit的形式集成在HarmoyOS系统中,方便三方应用快速开发和赋能。而VisionKit中包含人脸活体检测的功能接口interactiveLiveness。人脸活体检测见名知意,主要是为了检测当前人是否为活人本人,而不是照片,硅胶面具,AI视频仿真的可能...
6天前 1594浏览 0点赞 0回复 0收藏
一、前言:热更新调试主要是为了解决大工程项目编译的时间过长,日常开发调试效率过低的问题。比如调试应用布局的开发,修改一些界面小属性,每次都需要重新编译整个项目,会费事费力。官方给的数据指标如下:在万行级ArkTS代码项目中,HotReload修改生效速度能够比全量构建生效速度快70%以上,而在十万行级以上ArkTS代码项目中,HotReload修改生效速度能够比全量构建生效速度快50%以上。基本原理如下图所示:热更新包括调试增...
2025-04-15 12:41:07 2538浏览 2点赞 0回复 2收藏
【HarmonyOS5】AttributeModifier和AttributeUpdater区别详解一、AttributeModifier和AttributeUpdater的定义和作用1.AttributeModifier是ArkUI组件的动态属性,提供属性设置功能。开发者可使用attributeModifier方法,通过自定义实现AttributeModifier接口,来动态设置组件属性。方法作用API支持系统能力applyNormalAttribute设置组件普通状态时的样式从APIversion12开始在元服务中支持SystemCapability.ArkUI.ArkUI.Fullapply...
2025-04-15 12:06:35 5740浏览 1点赞 0回复 1收藏
​【HarmonyOS5】鸿蒙实现手写板一、前言实现一个手写板功能,基本思路如下:创建一个可交互的组件,用户在屏幕上触摸并移动手指时,会根据触摸的位置动态生成路径,并使用黑色描边绘制在屏幕上。当用户按下屏幕时,记录按下点的坐标作为路径的起点。当用户移动手指时,不断记录移动点的坐标,通过线段连接起来形成路径。功能效果图如下所示:二、方案思路系统提供了非常便捷的画线组件Path。该组件将画布和画线功能合二为一。...
2025-04-13 12:13:21 3145浏览 1点赞 0回复 2收藏
【HarmonyOS5】敏感信息本地存储详解前言鸿蒙其实自身已经通过多层次的安全机制,确保用户敏感信息本地存储安全。不过再此基础上,用户敏感信息一般三方应用还需要再进行加密存储。本文章会从鸿蒙自身的安全机制进行展开,最后再说明本地敏感信息常规存储的方案。一、硬件级安全隔离与加密可信执行环境(TEE)TEE作为独立的安全区域,与主操作系统隔离,用于存储加密密钥、生物特征模板等核心敏感数据。例如,用户指纹信息在TEE...
2025-04-13 12:03:13 3307浏览 1点赞 0回复 1收藏
一、State在鸿蒙中是做什么的?State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式。通过将变量标记为State,开发者可以确保当状态值发生变化时,依赖该状态的UI组件会自动重新渲染,从而保持数据与界面的实时同步。State是HarmonyOSArkTS实现响应式编程的大基础核心,可以说整个V1和V2都是围绕它来进行组合使用。二、State的基本原理State的响应式机制基于依赖收集和变更...
2025-04-10 11:55:27 7603浏览 2点赞 2回复 0收藏
【HarmonyOS5】鸿蒙的装饰器原理和自定义装饰器一、鸿蒙中的装饰器是什么?在ArkTS中装饰器(Decorator)是一种特殊的声明,能够对类、方法、属性等进行标注和修改。因为ArkTS是TypeScript扩展而来的编程语言,TypeScript支持装饰器特性。它属于元编程的一种工具,可在不改变原有代码结构的基础上,为其添加额外的功能。比如在鸿蒙开发里,装饰器能够用来定义组件的属性、生命周期方法等。像Component装饰器就用于把一个类标记...
2025-04-10 11:46:03 3686浏览 1点赞 0回复 1收藏
一、MQTT是什么?MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)是一种轻量级、基于发布订阅(PublishSubscribe)模式的即时通讯协议,专为资源受限的物联网(IoT)设备和低带宽、高延迟或不可靠网络环境设计。目前在物联网,车载,即时通讯,JG领域用的很多。MQTT模式是有个服务器,若干个客户端,订阅Topic作为事件ID,用来订阅广播,发送广播。类似于EventHub和Emitter的发布订阅机制。使用起来很简单。二、MQ...
2025-04-09 10:50:43 3753浏览 0点赞 0回复 0收藏
【HarmonyOS5】使用openCustomDialog如何禁止手势关闭的方案一、前言在HarmonyOS中使用openCustomDialog自定义弹框时,我们会遇到实现禁止手势关闭弹框的业务场景。虽然在HarmonyOSNext中,自定义Dialog默认可能继承系统的侧滑返回手势,并且目前无法屏蔽,官方反馈未来版本可能会开放禁用选项。在当前版本中,目前无法完全禁止手势关闭,但可以通过一些方法进行控制。例如,监听onWillDismiss事件可以在关闭时进行拦截,但需要...
2025-04-09 10:37:21 2875浏览 0点赞 0回复 0收藏
一、EventHub是什么?移动应用开发的同学应该比较了解EventHub,类似于EventBus。标准的事件广播通知,订阅,取消订阅的处理。EventHub模块提供了事件中心,提供订阅、取消订阅、触发事件的能力。类似的框架工具有很多,例如MQTT。使用起来也超级简单,从介绍上就能大体了解使用方式,见名知意的一种快捷工具。通过一个事件ID即TAG作为唯一的key,进行事件广播通知和订阅。在ArkUI框架中,EventHub通过单例对象的形式提供,因为...
2025-03-26 23:09:11 8749浏览 0点赞 0回复 1收藏
【HarmonyOSNext】鸿蒙应用弹框和提示气泡详解(二)一、前言上期围绕HarmonyOSNext最新API趋势,介绍了鸿蒙应用中最新的自定义弹框和提示气泡的使用。在鸿蒙ArkUI响应式布局中,早期弹框Dialog和提示气泡Toast与UI绑定,在纯逻辑类文件中使用不便,后续API迭代实现了解耦,且与UI强绑定的方式已不推荐。接着详细讲解了鸿蒙中弹框的使用,弹框有系统定制弹框(包括基础弹框如警告弹框、列表弹窗,以及带业务性质的PickerDialog...
2025-03-26 17:07:20 9006浏览 1点赞 0回复 1收藏
【HarmonyOSNext】鸿蒙应用崩溃处理思路详解一、崩溃问题发现后定位1.崩溃现象:常见的崩溃问题表现为,应用操作后白屏闪退,或者应用显示无响应卡死。2.定位问题:发现崩溃后,我们首先需要了解复现步骤,精确定位复现步骤。因为提供复现步骤得人,可能是用户和测试,非开发人员,其中的步骤并非最短路径。3.排查问题点根据复现步骤,我们需要查看日志表现,鸿蒙的DevEcoIDE提供了日志看板,根据HiLog和FaultLog,我们可以初步...
2025-03-25 00:19:31 8306浏览 1点赞 0回复 1收藏
【HarmonyOSNext】鸿蒙状态管理装饰器V1和V2混用方案一、V1和V2为什么需要混用自从api7开始,一直到api10。V1的实际使用中,开发人员发现Observed和ObjectLink监听实现多层级嵌套对象的更新的方案,太过于臃肿。当需要监听处理更新的多层级对象是七八层,就需要配套创建七八层的ObjectLink,代码太过于冗余。V2就是为了解决该问题,华为官方才提出的新状态管理装饰器方案。该方案在解决该问题的基础上,也对V1的进行加强。但是...
2025-03-25 00:07:24 7260浏览 0点赞 0回复 0收藏
【HarmonyOSNext】鸿蒙应用折叠屏设备适配方案一、前言目前应用上架华为AGC平台,都会被要求适配折叠屏设备。目前华为系列的折叠屏手机,有华为Mate系列(左右折叠,华为MateXT三折叠),华为Pocket系列(上下折叠)。二、适配方案思路探讨目前鸿蒙应用适配折叠屏的思路分为两种:分栏和全屏适配。分栏在左右折叠手机上,相当于首页一级页面在左边,二级子页面点开后在右边。三折叠上形态未知,有知道的小伙伴可以同步下。上下...
2025-03-25 00:01:46 7216浏览 0点赞 0回复 0收藏
【HarmonyOSNext】鸿蒙TaskPool和Worker详解(一)一、TaskPool和Worker如何实现多线程?各自特点是什么?在鸿蒙中通过TaskPool和Worker实现多线程并发,两者都基于Actor并发模型实现。Actor并发模型,每一个独立的Actor代表一个线程。互相之间不打扰,内存不共享,通过消息进行传递,线程间进行通信传输。比内存共享并发模型好在不会同时竞争同一内存资源。【内存共享并发模型指多线程同时执行任务,这些线程依赖同一内存并且...
2025-03-24 23:58:49 7424浏览 0点赞 0回复 0收藏
【HarmonyOSNext】共享HSP和应用内HSP,useNormalizedOHMUrl详解一、useNormalizedOHMUrl是什么useNormalizedOHMUrl指的是是否使用标准化OHMUrl拼接。在开发过程中,需要根据不同的环境或配置动态生成URL。例如,在加载一些远程模块或者资源时,可能需要将基础URL和具体的资源路径进行拼接,并且要确保生成的URL格式符合要求,避免出现多余的斜杠、编码问题等。我们一般将useNormalizedOHMUrl设置为true的时候。ohmurl使用的是...
2025-03-24 23:48:30 3249浏览 0点赞 0回复 0收藏
【HarmonyOSNext】鸿蒙应用公钥和证书MD5指纹的获取一、问题背景政府的icp备案时,或者某些三方SDK以来的管理后台,都需要配置鸿蒙应用的公钥和证书MD5指纹二、解决方案专有名词解释:华为AppGalleryConnect简称AGC平台,是我们的鸿蒙应用进行上架和开发生产和测试证书配置的管理后台。方案一:(1)[进入AGC平台,创建自己的项目,添加鸿蒙应用](https:developer.huawei.comconsumercnservicejospagcindex.html)(2)公钥获取...
2025-03-24 23:47:16 3245浏览 0点赞 0回复 0收藏
【HarmonyOSNext】鸿蒙循环渲染ForEach,LazyForEach,Repeat使用心得体会一、ForEach,LazyForEach,Repeat三者关系在鸿蒙中列表组件循环渲染的实现,一般都是通过ForEach来配合列表容器组件实现,例如List。也可以直接ForEach去创建多个相同的View。以下代码,是个简单的ForEach使用。在list组件中通过包裹ForEach来循环渲染创建子组件。数据通过传入数组对象的形式,批量一次性循环渲染更新完数据。需要注意的是,在ForEach...
2025-03-24 23:38:09 1913浏览 0点赞 0回复 0收藏
【HarmonyOSNext】拒绝权限二次申请授权处理一、问题背景:在鸿蒙系统中,对于用户权限的申请,会有三种用户选择方式:1.单次使用允许2.使用应用期间(长时)允许3.不允许当用户选择不允许后,再次向用户申请权限,该弹框就不会再显示。因为鸿蒙系统机制处理如此,为了避免骚扰用户。之前的通用方案是,跳转到应用设置界面,让用户自己去手动设置同意所需的权限。但是这样的操作,对于用户来说是跳出,体验并不是很好。在此情况...
2025-03-24 23:35:34 7362浏览 1点赞 0回复 1收藏