自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(541)
  • 收藏
  • 关注

原创 听劝!普通人真别盲目自学鸿蒙开发,不然只会浪费时间......

推出后,许多程序员把它当做是自己开启“更好工作、更高收入、更广阔人生的舞台”的确,掌握了鸿蒙技术,就等于搭上了政策的顺风车,前途一片光明。”可是我国自主研发的操作系统,跟着国家走,这路能走偏吗?,纷纷开始自学起鸿蒙开发。

2024-05-23 17:19:50

原创 OpenHarmony实战开发-如何实现列表上拉加载更多内容场景。

列表上拉加载更多内容是一种常见的数据更新场景,常见于各类阅读类应用中,例如新闻阅读应用中,当用户浏览新闻列表到底部时,上拉将加载更多的新闻内容。本例将介绍列表上拉加载更多内容这个场景的具体实现方式。

2024-05-23 16:56:02 183

原创 OpenHarmony实战开发-如何使用不同的弹窗。

应用中经常用到弹窗,比如警告弹窗、日期选择弹窗、文本选择弹窗以及其他自定义弹窗等等。本例将为大家介绍如何使用不同的弹窗。

2024-05-23 16:05:44 199

原创 OpenHarmony实战开发-如何通过属性动画实现UI中图标按下时,图标出现弹性缩放效果。

在日常开发过程中,通常会出现因为状态变化导致组件属性值发生变化,如:

2024-05-23 15:04:05 441

原创 OpenHarmony实战开发-如何使用弹簧动画曲线

在动画开发场景中,经常用到弹性效果,尤其在拖拽某个对象时经常伴随弹性动效。OpenHarmony提供了三种弹簧动画曲线用来实现弹性效果,本例将为大家介绍这三种曲线的用法。

2024-05-23 14:31:21 154

原创 OpenHarmony实战开发-如何实现波纹进度条

应用开发过程中经常用到波纹进度条,常见的如充电进度、下载进度、上传进度等,本例即为大家介绍如何实现上述场景。

2024-05-22 22:06:48 562

原创 OpenHarmony实战开发-如何实现抽屉式导航

由于用户所需功能逐渐增多,传统的标签式导航在个别场景已经无法满足用户需求。当导航栏的空间放不下过多页签时,可以采用抽屉式导航,本例将为大家介绍如何通过SideBarContainer组件实现抽屉式导航。

2024-05-22 21:55:00 585

原创 OpenHarmony实战开发-如何在网格Grid中通过拖拽交换子组件位置

在使用网格Grid的应用中,可以通过拖拽子组件GridItem的方式,交换子组件的显示位置。

2024-05-22 21:45:36 348

原创 OpenHarmony实战开发-如何为同一组件在不同场景下绑定不同的业务逻辑

在应用开发过程中经常遇到这样的场景:在不同的地方需要呈现同样的UI效果,为了简化处理,往往会把对应的UI元素封装成自定义组件,然后在用到的地方进行调用。但是,通常情况下,UI展示往往伴随着动态交互,而且在不同场景下需要做不同的交互处理。

2024-05-22 21:29:51 479

原创 OpenHarmony实战开发-如何实现列表项的新增和删除

列表的编辑模式用途十分广泛,常见于待办事项管理、文件管理、备忘录的记录管理等应用场景。在列表的编辑模式下,新增和删除列表项是最基础的功能,其核心是对列表项对应的数据集合进行数据添加和删除。下面以待办事项管理为例,介绍如何快速实现新增和删除列表项功能。

2024-05-22 21:21:24 629

原创 OpenHarmony实战开发-HarmonyAppProvision配置文件说明

在应用的开发过程中,应用的权限、签名信息等需要在HarmonyAppProvision配置文件(该文件在部分文档中也称为profile文件)中声明。

2024-05-22 20:36:06 501

原创 OpenHarmony实战开发-GTest接入应用指导

本示例主要介绍如何在HarmonyOS NEXT应用中使用GTest测试C++代码。目前鸿蒙没有提供官方C++测试框架,部分Native开发为主的应用可以参考本文接入三方测试框架保证C++代码质量。GTest 是 C++ 测试框架,具有稳定、跨平台、快速等特点,能够为 C++ 开发人员提供有效的单元测试和集成测试工具。GTest 支持 Linux、macOS 和 Windows 操作系统,同时支持 gcc、clang 和 MSVC 等多种编译器和构建系统。GTest 还提供了大量的失败信息,方便开发人员排查

2024-05-22 17:37:16 437

原创 OpenHarmony实战开发-Flex布局性能提升使用指导

Flex为采用弹性布局的容器。容器内部的所有子元素,会自动参与弹性布局。子元素默认沿主轴排列,子元素在主轴方向的尺寸称为主轴尺寸。

2024-05-22 17:07:21 396

原创 OpenHarmony实战开发-如何提升应用冷启动速度

应用启动时延是影响用户体验的关键要素。当应用启动时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用, 这个启动方式就叫做冷启动。

2024-05-22 16:33:33 600

原创 OpenHarmony实战开发-合理使用自定义组件冻结功能

自定义组件冻结功能是指通过设置freezeWhenInactive属性为true,对非激活页面或者自定义组件进行冻结,使其不响应状态变量引起的UI刷新。当状态变量改变时,处于非激活状态的页面或自定义组件的状态变量将不响应更新,状态变量的@Watch函数不会调用,关联的节点不会刷新。只有当页面或者自定义组件重新激活或者可见时,才会去更新状态变量。本文将介绍冻结功能的原理机制和使用场景,并且通过懒加载场景下使用冻结功能前后的性能对比,帮忙开发者优化页面性能,减少页面渲染的时间,提升用户体验。

2024-05-22 14:51:38 687

原创 OpenHarmony实战开发-合理使用多线程共享内存

在应用开发中,为了避免主线程阻塞,提高应用性能,需要将一些耗时操作放在子线程中执行。此时,子线程就需要访问主线程中的数据。ArkTS采用了基于消息通信的Actor并发模型,具有内存隔离的特性,所以跨线程传输数据时需要将数据序列化,但是AkrTS支持通过可共享对象SharedArrayBuffer实现直接的共享内存。

2024-05-21 21:51:17 607

原创 OpenHarmony实战开发-Swiper高性能开发指导

在应用开发中,Swiper 组件常用于翻页场景,比如:桌面、图库等应用。Swiper 组件滑动切换页面时,基于按需加载原则通常会在下一个页面将要显示时才对该页面进行加载和布局绘制,这个过程包括:

2024-05-21 21:15:24 668

原创 OpenHarmony 和 鸿蒙系统 可以给中国增加多少就业岗位 ?

OpenHarmony 和鸿蒙系统的发展可以为中国增加一定数量的就业岗位,但具体数字难以准确预估。以下是一些可能增加就业的领域:

2024-05-21 20:33:45 843

原创 OpenHarmony实战开发-组件复用性能优化指导

在滑动场景下,常常会对同一类自定义组件的实例进行频繁的创建与销毁。此时可以考虑通过组件复用减少频繁创建与销毁的能耗。组件复用时,可能存在许多影响组件复用效率的操作,本篇文章将重点介绍如何通过组件复用性能优化四建议提升复用性能。

2024-05-21 20:25:59 682

原创 OpenHarmony实战开发-利用native的方式实现跨线程调用

在OpenHarmony应用开发实践中,经常会遇到一些耗时的任务,如I/O操作、域名解析以及复杂计算等。这些任务如果直接在主线程中执行,将会严重阻塞主线程,影响后续任务的正常流程,进而导致用户界面响应延迟甚至卡顿。因此,为了提升代码性能,通常会将这类耗时任务放在子线程中执行。

2024-05-21 17:45:02 441

原创 OpenHarmony实战开发-多线程能力场景化示例实践

应用中的每个进程都会有一个主线程,主线程主要承担执行UI绘制操作、管理ArkTS引擎实例的创建和销毁、分发和处理事件、管理Ability生命周期等职责,具体可参见线程模型概述。因此,开发应用时应当尽量避免将耗时的操作放在主线程中执行。ArkTS提供了Worker和TaskPool两种多线程并发能力,多线程并发允许在同一时间段内同时执行多段代码,这两个并发的基本能力可参见TaskPool和Worker的对比。

2024-05-21 17:09:14 473

原创 OpenHarmony实战开发-安全和高效的使用N-API开发Native模块

N-API 是 Node.js Addon Programming Interface 的缩写,是 Node.js 提供的一组 C++ API,封装了V8 引擎的能力,用于编写 Node.js 的 Native 扩展模块。通过 N-API,开发者可以使用 C++ 编写高性能的 Node.js 模块,同时保持与 Node.js 的兼容性。

2024-05-21 16:31:19 508

原创 OpenHarmony实战开发-如何使用Neon指令扩展

ARM Neon是ARM架构的SIMD(Single Instruction Multiple Data)扩展实现,提供一条指令处理多个数据的并行处理能力,广泛用于多媒体编解码、2D/3D图形处理等领域,提高执行性能。

2024-05-21 15:17:39 737

原创 OpenHarmony实战开发-调试和性能分析、LLDB高性能调试器

LLDB(Low Lever Debugger)是新一代高性能调试器。详细说明参考LLDB官方文档。

2024-05-21 14:56:32 600

原创 OpenHarmony实战开发-NativeBundle开发指导

开发者可以通过本指导了解在OpenHarmony应用中,如何使用Native Bundle接口获取应用自身相关信息。

2024-05-21 14:37:59 729

原创 OpenHarmony实战开发-内存管理purgeable内存开发指导

OpenHarmony提供Purgeable Memory内存管理机制,开发者可以使用相关接口创建PurgeableMemory对象,从而管理purgeable内存。

2024-05-20 22:09:26 794

原创 OpenHarmony实战开发-Rawfile开发指导

开发者可以通过本指导了解在OpenHarmony应用中,如何使用Native Rawfile接口操作Rawfile目录和文件。功能包括文件列表遍历、文件打开、搜索、读取和关闭Rawfile。

2024-05-20 21:48:01 726

原创 OpenHarmony实战开发-在非ArkTS线程中回调ArkTS接口

ArkTS是单线程语言,通过NAPI接口对ArkTS对象的所有操作都须保证在同一个ArkTS线程上进行。本示例将介绍通过napi_get_uv_event_loop和uv_queue_work实现在非ArkTS线程中通过NAPI接口回调ArkTS函数。

2024-05-20 21:13:48 267

原创 OpenHarmony实战开发-如何使用Node-API接口进行异步任务开发

napi_create_async_work是Node-API接口之一,用于创建一个异步工作对象。可以在需要执行耗时操作的场景中使用,以避免阻塞主线程,确保应用程序的性能和响应性能。文件操作:读取大型文件或执行复杂的文件操作时,可以使用异步工作对象来避免阻塞主线程。网络请求:当需要进行网络请求并等待响应时,使用异步工作对象可以确保主线程不被阻塞,从而提高应用程序的响应性能。数据库操作:当需要执行复杂的数据库查询或写入操作时,使用异步工作对象可以确保主线程不被阻塞,从而提高应用程序的并发性能。

2024-05-20 21:02:07 951

原创 OpenHarmony实战开发-Node-API开发规范

【规则】 当传入napi_get_cb_info的argv不为nullptr时,argv的长度必须大于等于传入argc声明的大小。

2024-05-20 20:46:54 980

原创 OpenHarmony实战开发-如何在NDK工程中使用预构建库

在NDK工程中,可以通过CMake语法规则引入并使用预构建库。在引用预构建库时,模块libs目录中的预构建库,以及在CMakeList.txt编译脚本中声明的预构建库都会被打包。

2024-05-20 17:45:51 281

原创 鸿蒙相关岗位需求日益增长!为开发者开辟一条“薪”的道路

在当今快速变革的IT行业中,众多开发者面对无数选择,或许会感到迷茫与不安。《人民日报》曾警示我们:“如果一艘船不知道该驶去哪个港口,那么任何方向吹来的风都不会是顺风。”如今,鸿蒙开发作为一个新兴且充满潜力的领域,为开发者们指明了一个明确的方向。

2024-05-20 17:00:47 830

原创 OpenHarmony实战开发-如何创建一个NDK工程。

下面通过DevEco Studio的NDK工程模板,来演示如何创建一个NDK工程。

2024-05-20 16:02:24 303

原创 OpenHarmony IDL工具规格及使用说明书(仅对系统应用开放)

当客户端和服务器进行IPC通信时,需要定义双方都认可的接口,以保障双方可以成功通信,OpenHarmony IDL(OpenHarmony Interface Definition Language)则是一种定义此类接口的工具。OpenHarmony IDL先把需要传递的对象分解成操作系统能够理解的基本类型,并根据开发者的需要封装跨边界的对象。

2024-05-20 15:26:46 577

原创 OpenHarmony实战开发-如何实现一多开发实例(短信)

本章从系统预置的应用中,选择短信应用作为典型的案例,从页面开发和工程结构的角度,介绍"一多"的具体实践。系统的产品形态在不断丰富中,当前主要有默认设备和平板两种产品形态,本章的具体实践也将围绕这两种产品形态展开。

2024-05-20 15:03:09 571

原创 OpenHarmony实战开发-资源使用指导

在页面开发过程中,经常需要用到颜色、字体、间距、图片等资源,在不同的设备或配置中,这些资源的值可能不同。应用资源资源文件介绍应用开发中使用的各类自定义资源文件,需要统一存放于应用的resources目录下,便于使用和维护。resources目录包括两大类目录,一类为base目录与限定词目录,另一类为rawfile目录,其基础目录结构如下所示。base目录默认存在,而限定词目录需要开发者自行创建,其名称可以由一个或多个表征应用场景或设备特征的限定词组合而成。

2024-05-19 21:59:42 913

原创 OpenHarmony实战开发-如何使用自适应布局能力和响应式布局能力适配不同尺寸窗口。

本小节以“设置”应用页面为例,介绍如何使用自适应布局能力和响应式布局能力适配不同尺寸窗口。

2024-05-19 21:53:43 981

原创 OpenHarmony实战开发-如何实现应用市场首页

本小节将以应用市场首页为例,介绍如何使用自适应布局能力和响应式布局能力适配不同尺寸窗口。

2024-05-19 21:30:56 784

原创 OpenHarmony实战开发-如何实现响应式布局

自适应布局可以保证窗口尺寸在一定范围内变化时,页面的显示是正常的。但是将窗口尺寸变化较大时(如窗口宽度从400vp变化为1000vp),仅仅依靠自适应布局可能出现图片异常放大或页面内容稀疏、留白过多等问题,此时就需要借助响应式布局能力调整页面结构。

2024-05-19 21:18:17 508

原创 OpenHarmony实战开发-如何使用DevEco Studio进行多设备应用开发。

DevEco Studio的基本使用,请参考DevEco Studio使用指南。本章主要介绍如何使用DevEco Studio进行多设备应用开发。

2024-05-19 20:14:44 977

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除