- 博客(931)
- 收藏
- 关注
原创 鸿蒙0基础学习【Function Flow Runtime图依赖并发(C++)】任务并发调度
FFRT图依赖并发范式支持任务依赖和数据依赖两种方式构建任务依赖图。任务依赖通过任务句柄建立任务间的顺序关系,适用于流程控制场景;数据依赖通过数据签名建立生产者-消费者关系,支持动态构建任务间的数据流。文章通过流媒体视频处理和斐波那契数列两个示例,展示了如何使用FFRT的submit/submit_h/wait接口实现任务并行化,其中视频处理示例演示了任务依赖,斐波那契示例则体现了数据依赖的递归分解特性。FFRT能够自动管理任务间的三种数据依赖关系(Producer-Consumer、Consumer-Pr
2025-07-14 14:36:45
390
原创 鸿蒙0基础学习【Function Flow Runtime并发队列(C++)】任务并发调度
FFRT并发队列支持设置任务优先级和队列并发度,提升任务并行效率。队列并发度控制同时执行的任务数量,避免资源过度消耗;任务优先级确保高优先级任务优先执行。文章以银行服务系统为例,通过FFRT实现VIP客户优先服务,展示了并行队列、并发度设置和优先级调度的应用场景。示例代码演示了如何创建并发队列、提交不同优先级的任务以及任务管理操作。最后指出并发度设置需合理,过大或过小都会影响系统性能。该技术适用于需要任务优先级调度和并发控制的场景。
2025-07-13 21:21:30
473
原创 鸿蒙0基础学习【Function Flow Runtime串行队列(C++)】任务并发调度
FFRT串行队列基于协程调度实现高效异步通信,支持队列创建销毁、任务延迟、串行调度、任务取消/等待、优先级设置等功能。通过示例展示了异步日志系统实现,主线程提交日志任务到队列,后台线程串行处理。使用FFRT API可简化线程管理、确保线程安全。使用时需注意避免提交超长任务、正确使用同步原语以及管理全局队列生命周期。该技术适用于流量削峰、架构解耦等场景,开发者只需专注业务逻辑,无需处理底层调度问题。
2025-07-13 20:11:19
424
原创 鸿蒙0基础学习【Function Flow Runtime图依赖并发(C)】任务并发调度
FFRT框架支持两种任务依赖构建方式:任务依赖和数据依赖。任务依赖通过任务句柄建立明确执行顺序,适用于流程控制场景;数据依赖通过数据签名建立生产者-消费者关系,适用于数据驱动的并行计算。框架自动处理三种数据依赖关系:读写、写读和写写依赖。示例展示了流媒体视频处理的任务依赖编排和斐波那契数列的数据依赖计算,体现了FFRT在动态构建任务依赖图和高并行度计算方面的优势。
2025-07-13 19:08:07
884
原创 鸿蒙0基础学习【Function Flow Runtime并发队列(C)】任务并发调度
FFRT并发队列通过设置任务优先级和队列并发度实现高效并行处理。银行服务系统示例展示了VIP用户优先处理机制,通过设置并发度控制窗口数量、优先级区分用户等级。主要接口包括队列创建/销毁、任务提交/取消/等待等。使用需注意属性初始化/释放、合理设置并发度等约束。该机制有效平衡系统资源利用与任务优先级管理,适合需要高效并发的应用场景。
2025-07-12 21:11:36
334
原创 鸿蒙0基础学习【Function Flow Runtime串行队列(C)】任务并发调度
FFRT串行队列基于协程调度模型,提供高效消息队列功能,支持异步通信、流量削峰等场景。主要功能包括队列创建销毁、任务延迟、串行调度、任务取消/等待/优先级设置等。通过异步日志系统示例展示了FFRT的使用方式:主线程提交日志任务到队列,后台线程处理写入文件操作,既保证日志顺序性又避免阻塞主线程。关键接口包括ffrt_queue_create、ffrt_queue_destroy和ffrt_queue_submit_f。使用时需注意避免提交超长任务、正确使用同步原语以及妥善管理全局变量中的队列生命周期。
2025-07-12 20:07:36
465
原创 鸿蒙0基础学习【Function Flow Runtime并发范式】任务并发调度
FFRT支持三种并发范式以应对不同场景需求:串行队列确保任务顺序执行,适用于数据安全与任务协调;并发队列提高系统并发度,优化资源利用;图依赖并发处理复杂任务关系,实现动态调度与并行执行。每种范式针对特定问题提供解决方案,开发者可根据需求选择合适模式,相关技术示例可参考具体开发文档。
2025-07-12 19:05:45
436
原创 鸿蒙0基础学习【Function Flow Runtime Kit】任务并发调度
FFRT(Function Flow Runtime)是一种创新性的并发编程框架,旨在简化多线程开发。它采用任务(Task)作为基本执行单元,开发者只需定义任务及其依赖关系,无需管理底层线程。FFRT支持任务嵌套、队列管理(串行/并发)和两种依赖表达方式(任务依赖/数据流),通过协程调度提高并行度和资源利用率。相比传统线程模型,FFRT在用户态实现轻量级调度,有效解决线程滥用、负载不均等问题,推荐任务粒度控制在100微秒以上。该框架为鸿蒙系统开发提供了高效并发解决方案。
2025-07-11 21:53:26
326
原创 鸿蒙0基础学习【USB串口通信管理】USB开发服务
摘要:本文介绍了USB串口通信服务的开发流程,包括接口说明、开发步骤和调测验证。主要涉及串口设备的连接、权限管理、数据读写等操作,提供了异步和同步两种方式的API调用示例,适用于工业自动化、物联网设备互联等场景。开发过程包含设备列表获取、权限申请、串口开启关闭、数据读写等关键步骤,并给出了完整的代码实现和调试方法。通过USB转串口线缆连接设备即可验证功能是否正常。
2025-07-11 20:38:45
580
原创 鸿蒙0基础学习【USB串口配置管理】USB开发服务
本文介绍了USB串口通信中的核心参数配置,包括波特率、数据位、校验位和停止位的作用及设置方法。详细说明了通过OpenHarmony的usbManager模块进行串口设备配置的接口和开发步骤,包括获取设备列表、权限申请、串口配置获取与修改等关键操作。最后提供了调测验证方法,帮助开发者快速掌握USB串口通信开发。全文重点突出串口参数的配置要点,为开发者提供了一套完整的USB串口开发实践指南。
2025-07-11 19:30:03
523
原创 鸿蒙0基础学习【USB串口通信服务开发】USB开发服务
USB串口通信服务提供USB Host设备与串口协议通信功能,支持端口管理、参数设置和数据收发。开发需了解串口通信原理,包括设备识别驱动加载和数据传输流程。环境要求DevEco Studio 4.1+、API19+及USB转串口线缆。使用前需申请设备权限,未配置参数时默认波特率9600bps、8位数据位、无校验位和1位停止位。该服务支持远距离通信,实现应用层与串口设备间的双向数据传输。
2025-07-11 17:24:26
348
原创 鸿蒙0基础学习【USB实时传输】USB开发服务
摘要: 本文介绍了基于HarmonyOS的USB实时传输开发流程。实时传输适用于视频、音频等连续性要求高且允许少量数据丢失的场景。开发环境需配置DevEco Studio 4.1+、API16+ SDK及HDC工具。核心接口包括异步传输(usbSubmitTransfer)和取消传输(usbCancelTransfer)。开发步骤涵盖设备连接、权限获取、端点配置、数据传输及资源释放,重点通过实时传输端点(TRANSFER_TYPE_ISOCHRONOUS)实现低延迟数据交互。验证时需连接USB设备(如耳机)
2025-07-11 15:56:48
381
原创 鸿蒙0基础学习【USB批量传输】USB开发服务
本文介绍了如何在HarmonyOS系统中实现USB设备的批量数据传输。主要内容包括:批量传输的应用场景(如文件传输、打印机设备等);开发环境配置要求(DevEco Studio工具、SDK版本、HDC连接);关键接口bulkTransfer的使用说明;以及完整的开发流程,从获取设备列表、申请权限、打开设备,到数据传输和资源释放。通过示例代码展示了如何通过USBEndpoint进行数据读写操作,适用于需要批量传输大容量数据的设备开发场景。
2025-07-11 14:49:13
458
原创 鸿蒙0基础学习【USB中断传输】USB开发服务
摘要:中断传输主要用于主机接收设备发送的小量、分散且不可预测的数据,适用于鼠标、键盘等设备。开发环境需配置DevEco Studio 4.1及以上版本、API16+的SDK以及HDC工具。开发步骤包括:获取设备列表、请求权限、查找中断端点、注册接口、传输数据(使用usbSubmitTransfer接口)及释放资源。验证时需连接中断设备并检查传输成功日志。
2025-07-11 13:37:15
418
原创 鸿蒙0基础学习【USB控制传输】USB开发服务
摘要 本文介绍了HarmonyOS中USB控制传输的开发流程。控制传输主要用于主机和设备间的状态交互,支持读写操作。开发环境需配置DevEco Studio 4.1+、API16+ SDK及HDC工具。开发步骤包括:1)导入usbManager模块;2)获取设备列表;3)申请设备操作权限;4)打开设备并建立连接;5)构造控制传输参数进行数据传输;6)释放资源。文中提供了完整的代码示例,包括设备描述符获取等关键操作。该流程适用于需要与USB设备进行控制交互的HarmonyOS应用开发。
2025-07-10 21:44:16
599
原创 鸿蒙0基础学习【USB设备管理】USB开发服务
本文介绍了鸿蒙系统(HarmonyOS)中USB设备管理的基础开发流程。首先展示了USB设备的数据结构示例,包括设备配置、接口和端点信息。开发步骤包括:1)导入usbManager模块;2)获取设备列表;3)申请设备操作权限;4)打开设备并建立通信管道;5)注册接口进行数据传输;6)释放接口和关闭设备。文章还提供了开发环境要求(DevEco Studio、API16+SDK、HDC工具)和关键接口说明,如权限管理、设备连接和接口控制等。这些内容为鸿蒙系统下USB设备开发提供了基础指导。
2025-07-10 20:40:40
370
原创 鸿蒙0基础学习【使用Emitter进行线程间通信】进程线程通信
摘要:Emitter是进程内事件处理机制,支持跨线程异步通信。开发者可通过订阅(on/once)、发布(emit)和取消订阅(off)接口实现事件管理。机制采用任务队列串行处理,需注意及时取消订阅避免内存泄漏。开发步骤包括:1)导入模块;2)订阅事件并设置回调;3)发送事件数据;4)适时取消订阅。支持简单数据跨线程传输,但不兼容装饰器修饰的复杂类型。典型应用场景包括组件间通信和异步任务处理。
2025-07-10 19:32:24
482
原创 鸿蒙0基础学习【发布公共事件(C/C++)】进程线程通信
本文介绍了在HarmonyOS中发布自定义公共事件的方法。开发者可通过OH_CommonEvent_Publish和OH_CommonEvent_PublishWithInfo接口发布事件,并可选携带数据。开发步骤包括:引入头文件、添加动态链接库、创建公共事件属性对象(设置int/long/double/boolean/char等类型数据)、设置事件属性(如bundleName、permissions等),最后调用发布接口。文中还提供了完整的参数设置示例代码,帮助开发者实现自定义公共事件的发布功能。
2025-07-10 16:51:57
325
原创 鸿蒙0基础学习【取消订阅公共事件(C/C++)】进程线程通信
本文介绍了如何取消订阅公共事件的操作步骤。首先需要引用相关头文件并在CMake脚本中添加动态链接库。然后通过调用OH_CommonEvent_UnSubscribe接口,传入订阅者对象即可完成退订操作。该方法适用于订阅者在完成业务需求后主动取消订阅的场景,执行后会返回操作结果码。开发者需注意正确引用所需的动态库和接口文件。
2025-07-10 15:51:33
444
原创 鸿蒙0基础学习【订阅公共事件(C/C++)】进程线程通信
摘要: 本文介绍了OpenHarmony系统中公共事件订阅的接口使用方法和开发步骤。主要包含创建/销毁订阅者信息、订阅/取消订阅公共事件、处理有序公共事件等核心接口说明。开发流程包括:1)引用必要头文件和动态库;2)创建订阅者信息并设置权限和包名;3)实现回调函数处理接收的公共事件数据;4)通过参数接口获取事件附加信息。文中提供了详细的代码示例,展示了如何创建订阅者、接收事件数据以及处理事件参数的方法。
2025-07-10 14:47:50
422
原创 鸿蒙0基础学习【公共事件发布】进程线程通信
本文介绍了如何使用HarmonyOS的公共事件发布功能。主要包含两种发布方式:1.发布不携带信息的公共事件,通过publish()方法直接发布事件名称;2.发布携带信息的公共事件,可指定事件代码、数据等参数,支持发布无序、有序和粘性事件。两种方式都需要导入相应模块并处理回调结果。发布时需注意粘性事件与其他事件的区别。文章提供了完整的代码示例,包括错误处理和日志记录。
2025-07-10 13:47:29
208
原创 鸿蒙0基础学习【取消动态订阅公共事件】蜂窝通信服务
本文介绍了如何在HarmonyOS开发中取消订阅公共事件的步骤。首先需要导入相关模块,然后通过调用commonEventManager.unsubscribe()方法取消之前订阅的事件。该方法接收订阅者对象和回调函数作为参数,在回调中处理取消订阅结果。成功取消后应将订阅者对象置空。文章还提供了错误日志记录示例和开发注意事项。最后推广了HarmonyOS开发的学习资源。
2025-07-09 21:43:52
187
原创 鸿蒙0基础学习【动态订阅公共事件】蜂窝通信服务
动态订阅允许应用运行时接收特定公共事件,如电量过低事件,以进行相应处理。开发步骤包括:导入模块、创建订阅者信息、注册订阅者对象、设置事件回调函数。订阅者对象需手动销毁,后台应用无法接收事件,返回前台后最多可获取30秒内的事件。接口包括createSubscriber和subscribe,需管理订阅者生命周期防止内存泄漏。
2025-07-09 20:37:26
283
原创 鸿蒙0基础学习【使用网络领航员进行网络模拟】网络
网络领航员是华为提供的网络模拟测试工具,从API 20开始支持。该功能帮助开发者在真实场景前验证App的网络体验,如地铁刷视频的卡顿优化效果。提供8种典型场景模拟(如进出电梯、高铁等),通过设置界面或HDC命令行即可启用。同时结合Network Boost Kit提供网络切换感知、QoS状态上报等优化建议,实现跨层协同提升流畅度。开发者可通过实况窗查看网络参数变化,并获取针对网络切换、波动等场景的代码优化指南,包含HTTP请求处理和网络质量订阅等最佳实践。
2025-07-09 19:34:57
1435
原创 鸿蒙0基础学习【短信服务】蜂窝通信服务
短信服务模块提供了短信发送管理能力,包括创建/发送短信、SIM卡设置、短信中心配置等功能。支持网页和应用拉起短信界面,通过元能力接口或sms协议实现。核心接口包括异步发送短信、创建短信实例和获取默认SIM卡。调用需系统权限,三方应用需通过跳转短信编辑界面方式实现发送功能。sms协议支持预设收件人和内容,网页可通过超链接,应用可使用uri参数跳转,提升用户体验。使用前提需标准系统环境并插入SIM卡。
2025-07-09 17:59:21
617
原创 鸿蒙0基础学习【拨打电话】蜂窝通信服务
鸿蒙系统电话功能开发指南 本文介绍了在鸿蒙系统上实现拨打电话功能的开发方法。主要内容包括: 通过makeCall接口唤起系统电话应用 通话状态码说明(空闲、振铃、通话中等状态) 开发约束:需标准系统且插入SIM卡 关键API:hasVoiceCapability检测语音功能、makeCall拨号、observer监听状态变化 开发步骤示例代码,展示如何检测设备能力、拨打电话及订阅通话状态变化 开发者在实现电话功能时需注意异步调用方式和设备兼容性检查。
2025-07-09 16:28:48
520
原创 鸿蒙0基础学习【跨设备互通(RichEditor控件)】远程通信服务
HarmonyOS NEXT的富文本控件[RichEditor]新增跨设备互通能力,允许平板/2in1设备通过右键菜单调用其他设备的相机、扫描和图库功能。使用条件包括:双端设备需登录同一华为账号、开启WLAN和蓝牙,且符合设备类型调用策略(如平板可调用手机)。开发者可通过onWillChange属性处理回传照片,也可通过editMenuOptions自定义菜单关闭该功能。该功能实现了设备间的便捷交互,提升文档处理效率。
2025-07-09 15:05:11
388
原创 鸿蒙0基础学习【跨设备互通NDK开发】远程通信服务
跨设备互通实现HarmonyOS设备间的相机、扫描与图库共享功能。TV、平板等设备可调用手机相机功能,需满足:1)设备运行HarmonyOS NEXT及以上版本;2)登录同一华为账号;3)开启WLAN和蓝牙。开发流程包括获取设备信息、创建回调函数、启动协作三个步骤,通过特定API实现跨设备操作。该功能支持拍照、文档扫描和图片选择三种场景,需注意设备间调用策略限制。完整开发需引入头文件、配置CMakeList并编写实例代码,包含设备筛选、回调处理等关键环节。
2025-07-09 13:57:55
351
原创 鸿蒙0基础学习【跨设备互通开发】远程通信服务
摘要:HarmonyOS跨设备互通功能允许平板或2in1设备调用手机等设备的相机、扫描和图库功能。使用需满足设备版本条件(HarmonyOS NEXT及以上)、同一华为账号登录,并开启WLAN和蓝牙。开发时需导入相关模块,创建设备列表选择器,并添加状态提示弹窗处理回传数据。示例代码展示了如何调用远端设备拍照并显示图片。该功能需注意设备调用策略和网络连接优化建议。
2025-07-08 22:12:10
826
原创 鸿蒙0基础学习【跨设备互通特性简介】远程通信服务
摘要:跨设备互通功能允许平板或二合一设备调用手机的相机、扫描和图库功能,实现便捷的跨设备协作。以拍照为例,用户在编辑应用时可通过组件选择附近设备唤醒相机,拍摄的照片将自动回传至本端应用。系统通过分布式协同框架自动建立设备连接,并实时同步拍摄状态。当多台设备可用时,用户可自由选择拍摄设备。该功能简化了图文编辑流程,提升工作效率。(149字)
2025-07-08 20:37:52
483
原创 鸿蒙0基础学习【使用URPC进行远程程序调用】远程通信服务
URPC远程调用接口支持多种设备,包括手机、平板、穿戴设备及TV。主要接口包括:call发送请求并返回响应,cancel取消请求,destroy释放资源。使用时需先创建UrpcStub实例,配置连接参数,通过Promise异步处理响应。示例展示了文件上传请求的发送、取消及资源释放流程。该接口适用于需要远程调用的场景,开发者需注意及时释放资源以避免内存泄漏。
2025-07-08 19:30:41
331
原创 鸿蒙0基础学习【通过配置Configuration优化传输性能】远程通信服务
本文介绍了HarmonyOS网络请求框架的关键特性:1)支持多设备类型适配;2)通过Session机制实现高并发管理,支持请求取消和资源隔离;3)提供DNS定制优化能力;4)动态连接池配置;5)支持分段传输和文件直写以优化内存;6)响应耗时分析用于网络质量评估。该框架通过分层优化策略,为开发者提供了高性能网络请求解决方案。
2025-07-08 16:56:22
318
原创 鸿蒙0基础学习【基于TracingConfiguration实现性能维测】远程通信服务
本文介绍了HarmonyOS性能维测中HTTP请求跟踪的实现方法。首先说明了支持设备范围,然后详细讲解了如何通过TracingConfiguration配置捕获HTTP请求/响应流信息,包括数据接收、请求头处理等关键环节。文章还提供代码示例展示了如何创建自定义响应处理程序和通信会话对象。接着重点解析了HTTP请求过程中各时间节点,包括DNS解析、TLS握手等,并给出了关键时间点的计算方法。最后提供了示例代码演示如何获取首包耗时、TLS握手时间等性能指标,帮助开发者优化应用性能。
2025-07-08 15:50:31
815
原创 鸿蒙0基础学习【实现同步读写流】远程通信服务
本文介绍了HTTP流式传输的实现与应用。主要内容包括:1) 流式传输适用于大文件上传下载、直播等场景,能提升用户体验;2) 系统支持Phone、Tablet等设备,5.1.1版本后新增TV支持;3) 提供write和read接口实现数据读写功能;4) 通过示例代码展示了如何使用rcp模块创建同步读写队列,实现文件分批上传和分块读取功能。开发者可根据实际需求配置安全验证和处理响应数据。
2025-07-08 14:39:45
226
原创 鸿蒙0基础学习【实现请求暂停、恢复与断点续传】远程通信服务
摘要 本文介绍了Remote Communication Kit中请求暂停、恢复与断点续传功能的实现方法。在请求暂停/恢复方面,通过定义SendingPausePolicy和PausePolicy来控制请求发送过程,包含调试信息获取和事件处理机制。断点续传功能则通过TransferRange对象实现,允许基于上次传输位置继续下载,确保数据完整性。两种功能均支持多种设备类型,包括从5.1.1版本开始新增的TV设备支持。文章提供了详细的代码示例,展示如何配置请求参数、处理响应以及实现递归传输等关键操作。
2025-07-08 13:39:50
298
原创 鸿蒙0基础学习【快速实现上传下载】远程通信服务
本文介绍了如何利用Remote Communication Kit和Core File Kit实现文件远程传输功能。通过API接口组合,可实现高效的文件上传下载,支持多种设备类型。文章详细说明了下载功能的实现步骤,包括路径定义、会话创建和下载操作执行;以及上传功能的实现,涵盖会话配置、文件读取和上传操作。两种功能均包含错误处理和资源释放机制。该方案适用于Phone、2in1、Tablet、Wearable设备,并从5.1.1版本开始支持TV设备。
2025-07-07 22:07:44
268
原创 鸿蒙0基础学习【拦截器:更丰富、更高阶的定制能力】远程通信服务
摘要:HarmonyOS的Remote Communication Kit模块提供了HTTP拦截器功能,开发者可通过创建拦截器链定制网络请求和响应处理。拦截器支持Phone、2in1、Tablet及Wearable设备,5.1.1版本后新增TV支持。示例展示了如何定义RequestUrlChangeInterceptor(根据网络质量修改请求URL)和ResponseHeaderRemoveInterceptor(修改响应头)两种拦截器,并通过SessionConfiguration配置使用。该功能为网络通
2025-07-07 20:47:42
444
原创 鸿蒙0基础学习【ProcessingConfiguration:定制处理行为】远程通信服务
摘要 ProcessingConfiguration是Remote Communication Kit中用于定制响应处理行为的关键组件,支持在消息处理前后执行自定义逻辑。该功能兼容Phone、2in1、Tablet、Wearable等设备,并从5.1.1(19)版本开始支持TV设备。使用示例展示了如何创建会话和请求,通过validateResponse验证响应状态码是否为200,并处理响应结果。开发者可通过session.fetch发送请求,在then和catch中分别处理成功响应和错误情况,最后关闭会话。
2025-07-07 19:30:37
328
原创 鸿蒙0基础学习【SecurityConfiguration:定制安全传输行为】远程通信服务
《HarmonyOS远程通信安全配置实践》摘要:本文介绍了HarmonyOS中Remote Communication Kit的安全配置功能,包括自定义证书校验和双向证书校验的实现方法。通过SecurityConfiguration工具,开发者可定制TLS版本、证书验证等安全参数,适配手机、平板、穿戴设备及TV等多种设备类型。示例代码演示了如何通过异步读取证书文件、自定义验证逻辑实现安全通信,并详细说明了创建安全会话、配置证书参数等关键步骤。文章还提供了获取HarmonyOS开发资料的指引,帮助开发者快速掌
2025-07-07 17:22:48
296
原创 鸿蒙0基础学习【ProxyConfiguration:定制代理】远程通信服务
本文介绍了远场通信框架中的代理配置功能,提供三种代理选项:系统代理(system)、无代理(no-proxy)和自定义WebProxy。支持手机、平板、可穿戴设备及TV设备(从5.1.1版本开始)。通过示例代码分别展示了三种模式的实现方法,包括模块导入、会话创建、代理配置设置和网络请求处理流程。其中WebProxy选项允许开发者自定义代理URL、隧道创建方式和排除列表,以满足特定网络需求。完成请求后均需关闭会话。
2025-07-07 16:04:44
364
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅