- 在ArkTS应用开发中,布局优化和性能提升是确保应用流畅运行的关键。本文将从避免二次布局、优先使用layoutWeight、响应式布局设计、懒加载、优化大型对象更新以及内存管理六个方面,探讨如何优化布局和提升性能。1. 避免不必要的二次布局二次布局通常发生在子元素尺寸或位置发生变化时,导致父容器需要重新计算布局。以下是常见的二次布局场景及优化方法:场景1:动态改变子元素尺寸当子元素的尺寸动态... 在ArkTS应用开发中,布局优化和性能提升是确保应用流畅运行的关键。本文将从避免二次布局、优先使用layoutWeight、响应式布局设计、懒加载、优化大型对象更新以及内存管理六个方面,探讨如何优化布局和提升性能。1. 避免不必要的二次布局二次布局通常发生在子元素尺寸或位置发生变化时,导致父容器需要重新计算布局。以下是常见的二次布局场景及优化方法:场景1:动态改变子元素尺寸当子元素的尺寸动态...
- 在移动应用开发中,用户首选项(Preferences)是一种常见的数据存储方式,用于保存用户的个性化设置或应用的配置信息。类似于Android中的SharedPreferences,Preferences以键值对(Key-Value)的形式将数据存储在应用的内存和本地文件中。本文将详细介绍Preferences的概念、运作机制、API使用以及相关的限制。一、用户首选项(Preferences... 在移动应用开发中,用户首选项(Preferences)是一种常见的数据存储方式,用于保存用户的个性化设置或应用的配置信息。类似于Android中的SharedPreferences,Preferences以键值对(Key-Value)的形式将数据存储在应用的内存和本地文件中。本文将详细介绍Preferences的概念、运作机制、API使用以及相关的限制。一、用户首选项(Preferences...
- Hello;大家好,我是陈杨。好久没更新了,首先是自己本职工作比较忙,基本没时间写作。其次就是学习技术,自学鸿蒙 ArkTS 语言已经接近半年了,也算半路出师了,这次将分享我封装的组件库,所以有啥讲错的地方请大家高抬贵手,宽容一下,谢谢。这次主要是给大家带来一个重磅消息,就是我自己使用鸿蒙 ArkTS 语法开发的图表组件今日正式开源了。为什么?原因有两点吧!鸿蒙是国产的操作系统,不管他是不是... Hello;大家好,我是陈杨。好久没更新了,首先是自己本职工作比较忙,基本没时间写作。其次就是学习技术,自学鸿蒙 ArkTS 语言已经接近半年了,也算半路出师了,这次将分享我封装的组件库,所以有啥讲错的地方请大家高抬贵手,宽容一下,谢谢。这次主要是给大家带来一个重磅消息,就是我自己使用鸿蒙 ArkTS 语法开发的图表组件今日正式开源了。为什么?原因有两点吧!鸿蒙是国产的操作系统,不管他是不是...
- 在鸿蒙原生开发中,为了实现沉浸式效果,通常在页面中通过设置expandSafeArea属性向顶部和底部扩展安全区实现沉浸式效果,.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]);设置完成后,发现没有实现想要的效果,就需要点击ArkUI Inspector查看当前展示试图层级中,哪些试... 在鸿蒙原生开发中,为了实现沉浸式效果,通常在页面中通过设置expandSafeArea属性向顶部和底部扩展安全区实现沉浸式效果,.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]);设置完成后,发现没有实现想要的效果,就需要点击ArkUI Inspector查看当前展示试图层级中,哪些试...
- 添加一个围栏,并订阅地理围栏事件,地理围栏就是虚拟地理边界,当设备进入、离开某个特定地理区域时,可以接收自动通知和警告 目前仅支持圆形围栏,并且依赖GNSS芯片的地理围栏功能,仅在室外开阔区域才能准确识别用户进出围栏事件geofence: geoLocationManager.Geofence中的coordinateSystemType表示地理围栏圆心坐标的坐标系,APP应先使用getGeo... 添加一个围栏,并订阅地理围栏事件,地理围栏就是虚拟地理边界,当设备进入、离开某个特定地理区域时,可以接收自动通知和警告 目前仅支持圆形围栏,并且依赖GNSS芯片的地理围栏功能,仅在室外开阔区域才能准确识别用户进出围栏事件geofence: geoLocationManager.Geofence中的coordinateSystemType表示地理围栏圆心坐标的坐标系,APP应先使用getGeo...
- 最近有个需求需要应用息屏或者在后台时,能够一直获取用户的位置信息,查看了很多资料最后确认需要持续定位逻辑 + 后台长时任务一起设置,才能实现该功能。但在测试时发现,应用置为后台或者息屏后,长时间不一定位置,系统会将应用给托管掉,不会获取定位信息,一旦手机移动位置,系统会将该应用激活,继续获取定位信息,这种场景节约了手机能耗,下面继续展示代码上的处理既然是获取用户位置信息,这种隐私性的信息,需... 最近有个需求需要应用息屏或者在后台时,能够一直获取用户的位置信息,查看了很多资料最后确认需要持续定位逻辑 + 后台长时任务一起设置,才能实现该功能。但在测试时发现,应用置为后台或者息屏后,长时间不一定位置,系统会将应用给托管掉,不会获取定位信息,一旦手机移动位置,系统会将该应用激活,继续获取定位信息,这种场景节约了手机能耗,下面继续展示代码上的处理既然是获取用户位置信息,这种隐私性的信息,需...
- 在鸿蒙原生开发中,需要import { AAID } from '@kit.PushKit'才能正常使用AAID对应的接口let aaid: string = await AAID.getAAID();获取广告标识aaid,但这里获取到的aaid在下面集中场景下是会改变的1、 应用卸载重装。 2、应用调用AAID.deleteAAID()接口删除AAID。3、用户恢复出厂设置。4、用户清除应... 在鸿蒙原生开发中,需要import { AAID } from '@kit.PushKit'才能正常使用AAID对应的接口let aaid: string = await AAID.getAAID();获取广告标识aaid,但这里获取到的aaid在下面集中场景下是会改变的1、 应用卸载重装。 2、应用调用AAID.deleteAAID()接口删除AAID。3、用户恢复出厂设置。4、用户清除应...
- 在鸿蒙原生开发中,我们normal级别的证书能够使用的权限分为系统授权权限和用户授权权限其中系统授权权限只需要在模块的module.json5中requestPermissions中添加name就可以了,不需要reason等信息描述,但用户授权就需要reason和使用方式,同时在使用时还需要向用户弹框申请;下面时定位权限和网络权限的申请"requestPermissions": [ { "... 在鸿蒙原生开发中,我们normal级别的证书能够使用的权限分为系统授权权限和用户授权权限其中系统授权权限只需要在模块的module.json5中requestPermissions中添加name就可以了,不需要reason等信息描述,但用户授权就需要reason和使用方式,同时在使用时还需要向用户弹框申请;下面时定位权限和网络权限的申请"requestPermissions": [ { "...
- 在鸿蒙原生开发中,位置信息属于半开放隐私信息,开发中要想获取当前设备信息,需要向用户弹框申请权限及需要再module.json5添加权限列表 "requestPermissions": [ { "name": "ohos.permission.LOCATION", "reason": "$string:permissionsReason", "us... 在鸿蒙原生开发中,位置信息属于半开放隐私信息,开发中要想获取当前设备信息,需要向用户弹框申请权限及需要再module.json5添加权限列表 "requestPermissions": [ { "name": "ohos.permission.LOCATION", "reason": "$string:permissionsReason", "us...
- 在鸿蒙原生开发中,推荐使用hiLog日志来打印我们需要查看的数据,在写hiLog日志时,需要入参四个参数来设置hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');其中第一个参数domain,是不需要处理的,按照默认值来展示就好;第二个参数 prefix,在封装类中我们可以统一设置同一个值,方便检... 在鸿蒙原生开发中,推荐使用hiLog日志来打印我们需要查看的数据,在写hiLog日志时,需要入参四个参数来设置hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');其中第一个参数domain,是不需要处理的,按照默认值来展示就好;第二个参数 prefix,在封装类中我们可以统一设置同一个值,方便检...
- 想要使用鸿蒙的长时任务需要配置权限:ohos.permission.KEEP_BACKGROUND_RUNNING并在module.json5中配置需要处理的长时任务类型,此处以定位为例: { ... "backgroundModes": [ // 长时任务类型的配置项 "location" ] ... 想要使用鸿蒙的长时任务需要配置权限:ohos.permission.KEEP_BACKGROUND_RUNNING并在module.json5中配置需要处理的长时任务类型,此处以定位为例: { ... "backgroundModes": [ // 长时任务类型的配置项 "location" ] ...
- HiLog默认显示的日志为以下6个部分第一列:Timestamp 时间戳第二列:PID-TID 进程ID和线程ID第三列:Domain/Processname/Tag 日志标签第四列:PackageName 应用包名第五列:LogLevel 日志级别第六列:Message 日志内容我们可通过设置PackageName、LogLevel和Message中的关键信息检索出我们需要的日志信息先了解... HiLog默认显示的日志为以下6个部分第一列:Timestamp 时间戳第二列:PID-TID 进程ID和线程ID第三列:Domain/Processname/Tag 日志标签第四列:PackageName 应用包名第五列:LogLevel 日志级别第六列:Message 日志内容我们可通过设置PackageName、LogLevel和Message中的关键信息检索出我们需要的日志信息先了解...
- 当前鸿蒙开发中如果要保存图片数据到系统相册,需要basic权限,而不是我们正常使用Normal权限,一些应用为了避免申请权限的麻烦,或者根本没有理由申请basic权限,可以将图片数据保存到系统文件中//图片资源压缩处理let bitmap: ArrayBuffer;//图片数据let packer: image.ImagePacker = image.createImagePacker();... 当前鸿蒙开发中如果要保存图片数据到系统相册,需要basic权限,而不是我们正常使用Normal权限,一些应用为了避免申请权限的麻烦,或者根本没有理由申请basic权限,可以将图片数据保存到系统文件中//图片资源压缩处理let bitmap: ArrayBuffer;//图片数据let packer: image.ImagePacker = image.createImagePacker();...
- 项目中有需求要对获取的图片进行压缩,并且是要压缩到固定大小,考虑到harmonyos中对图片质量压缩方式packing,压缩后要及时检查大小,就使用while循环一步步的压缩,直至压缩到目标值let bitmap: ArrayBuffer;// 需要压缩的数据let compressSize: number;// 目标大小let considerBase64: boolean;// 是否考虑... 项目中有需求要对获取的图片进行压缩,并且是要压缩到固定大小,考虑到harmonyos中对图片质量压缩方式packing,压缩后要及时检查大小,就使用while循环一步步的压缩,直至压缩到目标值let bitmap: ArrayBuffer;// 需要压缩的数据let compressSize: number;// 目标大小let considerBase64: boolean;// 是否考虑...
- private swiperController: SwiperController = new SwiperController() Swiper(this.swiperController) { ForEach(this.list, (item: Resource, index) => { RelativeContainer() { Image(ite... private swiperController: SwiperController = new SwiperController() Swiper(this.swiperController) { ForEach(this.list, (item: Resource, index) => { RelativeContainer() { Image(ite...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
去报名 -
苏州工业园区“华为云杯”2025人工智能应用创新大赛赛中直播
2025/08/21 周四 16:00-17:00
Vz 华为云AIoT技术布道师
本期直播将与您一起探讨如何基于华为云IoT平台全场景云服务,结合AI、鸿蒙、大数据等技术,打造有创新性,有竞争力的方案和产品。
即将直播
热门标签