1 2 3 4 5 ··· 60 下一页
摘要: OpenHarmony操作系统支持多种多线程并发处理策略,以提升应用的响应速度与帧率,以及防止耗时任务对主线程的干扰。以下是OpenHarmony中的多线程方式,以及Worker线程间的数据通讯和内存共享方法,还有它们与Java多线程的区别: OpenHarmony多线程方式 Worker线程:Op 阅读全文
posted @ 2024-04-26 22:14 西北野狼 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 在软件开发中,底层库的更换或升级是常见的需求,这可能由性能提升、新功能需求或安全性考虑等因素驱动。为了降低迁移成本,良好的设计模式至关重要。 在版本迭代过程中,网络请求库可能会经历从A到B再到C的演进。为了实现业务层的无感切换,需要在各个请求库和业务代码之间封装隔离代码,以实现第三方网络库的灵活更换 阅读全文
posted @ 2024-04-26 20:39 西北野狼 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 背景 在多线程编程中,确保资源的互斥访问是至关重要的。允许并行执行,但需要同步机制来避免数据竞争和竞态条件。 锁的重要性 锁是一种同步机制,用于控制对共享资源的访问。在ArkTs中,传统的锁实现依赖于语言级别的原子操作,但随着共享内存的引入,我们需要一种新的同步机制。 使用SharedArrayBu 阅读全文
posted @ 2024-04-25 22:50 西北野狼 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 泛型(Generics)概述 泛型是一种编程语言特性,它支持类型参数化,使得定义的类、接口和方法可以适用于多种类型,而不仅仅是固定的一种类型。 理解泛型 泛型允许在定义接口时,让参数的类型更加灵活,从而使得功能更加强大。简而言之,泛型提供了一种方式,让代码能够适应不同的数据类型,而不需要为每种数据类 阅读全文
posted @ 2024-04-25 22:42 西北野狼 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 以下是不同 Context 类型及其特点的概述: ApplicationContext 应用级别 Context:ApplicationContext 是应用级别的上下文环境。 生命周期管理:提供了订阅应用内 Ability 生命周期变化的能力。 系统资源监控:可以订阅系统内存变化和应用内系统环境的 阅读全文
posted @ 2024-04-25 22:28 西北野狼 阅读(4) 评论(0) 推荐(0) 编辑
摘要: UIAbility 生命周期: onCreate :页面初始化,变量定义,资源加载。 onWindowStageCreate:设置 UI 界面加载、设置 WindowStage 的事件订阅。 onForeground:切换至前台,申请系统需要的资源,或者重新申请在 onBackground()中释放 阅读全文
posted @ 2024-04-25 22:20 西北野狼 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 设计思路 网络请求框架的设计目标是简化 HTTP 请求的发送和响应处理过程。为了实现这一目标,我们定义了几个核心组件: IHttpRequest: 定义了发送 HTTP 请求的基本操作,如设置 URL、请求头、请求参数等。 IHttpListener: 定义了 HTTP 请求完成后的回调方法,用于处 阅读全文
posted @ 2024-04-17 16:00 西北野狼 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 背景介绍 用户界面(UI)布局是应用程序中至关重要的部分,它不仅影响应用的外观和用户体验,还直接影响应用的性能。不合理的布局可能会导致过度的布局计算和界面嵌套,从而增加渲染和计算的开销,导致性能下降。 常用布局方式 HarmonyOS的ArkUI框架提供了多种布局方式,包括线性布局(Row/Colu 阅读全文
posted @ 2024-04-17 15:51 西北野狼 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 如何合理使用动效来获得更好的性能 组件转场动画使用 transition: 推荐使用转场动画(transition)而不是组件动画(animateTo),因为 transition 只需要在条件改变时更新一次,而 animateTo 需要在动画前后做两次属性更新,导致性能开销更大。 反例:通过改变透 阅读全文
posted @ 2024-04-17 15:47 西北野狼 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 概述 如何在HarmonyOS应用中实现一个可拖拽的列表组件,通过这个组件,用户可以拖动列表中的项并将其放置在新的位置,实现列表的动态排序。 核心功能 列表初始化:创建并填充列表数据。 拖拽交互:实现列表项的拖拽功能,包括拖拽开始、移动和结束。 位置交换:在拖拽结束时交换列表项的位置。 代码实现 1 阅读全文
posted @ 2024-04-08 22:25 西北野狼 阅读(9) 评论(0) 推荐(0) 编辑
1 2 3 4 5 ··· 60 下一页