登录社区云,与社区用户共同成长
邀请您加入社区
在/developtools/bytrace_standard/ohos.build文件中添加修改 “//third_party/libevent:libevent_targets”,“//third_party/libevent:libevent_test”out/rk3568/developtools/profiler(该路径生成库文件)out/rk3568/common/common (该路
上一篇博客OpenHarmony解读之设备认证:数据接收管理-获取HiChain实例(1)介绍了hichain实例获取的部分内容,本文将继续进行分析。在上一篇博客介绍的函数中,在进行完密钥等信息的初始化之后,调用函数创建属于本端的长期保存的密钥对,这个密钥对初步分析是用于设备之间的身份可信认证。创建密钥对部分可分为四个阶段:1、获取协议参数。2、生成服务id。3、生成密钥别名。4、生成长期保存的密
必备标准(1)知道什么是ARM、STM32,了解单片机内部功能,熟悉洋桃1号开发板上的各种功能和它们的作用。(2)成功安装Keil、 Flymcu、串口助手、超级终端等软件。(3)会用Kei打开工程,能把HEX文件下载到开发板中。能在开发板上完成各种示例程的实验,并了解其工作理。基础标准(4)掌握C语言基础知识,包括函数体、语句、符号、变量、数组、数据类型、基本运算、宏定义等的用法。(5)能根据电
本文分析了鸿蒙系统(HarmonyOS)中利用cJSON处理CoAP设备服务发现数据的过程。文章重点解析了两个核心函数:PrepareServiceDiscover()用于准备服务发现数据,包括获取设备信息、创建cJSON对象并添加设备信息、WiFi IP和功能位图;ParseServiceDiscover()则用于解析接收到的服务发现数据,包括提取设备信息、WiFi配置、功能位图等。文中还展示了
本文分析了OpenHarmony分布式软总线trans_service模块中TCP会话管理的数据处理机制。重点剖析了TcpSessionRecv()函数,该函数负责接收TCP会话新数据并进行解密处理。通过会话密钥和IV值进行GCM加密解密,保障数据传输安全。函数处理流程包括:接收原始数据、获取序列号、加载会话密钥、执行解密操作等步骤,最终返回解密后的明文数据长度。文章还涉及会话监听器查找、数据包序
discovery_service.h头文件提供与设备服务发布相关的功能,包括发布服务、取消发布服务、设置设备参数。当发现附近的多个设备并将其联网后,可以使用这些接口进行业务发布的相关操作。PublishFailReason 为发布失败的原因。发布失败的原因在发布失败后,会在发布失败回调函数输出原因。DataBitMap 为设备发布支持的功能。定义设备类型枚举和设备类型名称之间的映射。枚举设备信息
2、打开Win32DiskImager软件,选择镜像文件位置,点击“写入”,即可烧写镜像到sd卡。需要安装在win主机下软件:超级终端HyperTerminal、WIin32磁盘印象工具、11、在HyperTerminal终端输入“./my_first_hps”命令运行示例程序。10、在HyperTerminal终端输入“root”(无需输入密码,直接回车)需要准备一张sd卡做系统盘、读卡器、DE
分布式软总线/authmanager/msg_get_devicedid.c分析
本文介绍了鸿蒙系统开发中TLV数据转换的相关函数实现,包括: 结点获取 - 通过类型从TLV链表中查找对应结点 大小端转换 - 将不同字节长度的整数从大端转为小端模式 类型转换 - 将默认int类型数据转换为指定类型 数据转换 - 提供多种整数类型的转换函数(8/16/32/64位有符号/无符号) TLV数据获取 - 获取特定类型的TLV数据值 代码示例展示了如何处理TLV格式数据,进行端序转换和
编译openharmony,执行repo碰到的问题
用于转换 tlv 数据,处理 tlv 的结点情况,将不同类型的数据进行整合。
客户端收到来自服务端的响应消息之后,针对消息内容进行相关处理并再次发起sts end请求,目的在于发送可信认证数据,使得服务端可以验证客户端的身份。本文将对这个过程进行详细介绍。/*函数功能:构造json格式的认证ack请求消息函数参数:data:待发送数据函数返回值:成功:json格式的字符串失败:NULL*///将原始的authdata字节数据转换为十六进制的字符串//为json字符串申请空间
本文介绍了鸿蒙系统authmanager模块的设备认证处理流程,重点分析了wifi_auth_manager.c文件中数据接收和处理的核心代码。
tcp_session.c文件提供的接口功能主要是创建一个TCP会话并返回其地址,在tcp_session.h文件中还提供了会话的属性结构体,本文将对这两个文件进行详细分析。
OpenHarmony系统支持丰富的设备形态,支持多种架构指令集,支持多种操作系统内核;为了应用在各种OpenHarmony设备上的兼容性,本文定义了"OHOS" ABI(Application Binary Interface)的基础标准,包含如下方面。
coap_discover.c实现了基于coap的设备发现功能的细节。在之前说过coap_service.c在实现coap服务发现的前期工作中做了许多前期初始化功能和注册服务的工作,这些功能函数是调用nstackx_device.c提供的接口函数,而nstackx_common.c中的接口函数又调用coap_discover.c中提供的函数接口。所以在coap_discover.c中实现了具体的初
在分布式软总线提供的数据传输服务中,为了提高处理效率,使用了多线程并发处理的机制,因此就会引入线程同步的问题,所谓线程同步,即当有一个线程在对内存进行操作时,其他线程都不可以对这个内存地址进行操作,直到该线程完成操作, 其他线程才能对该内存地址进行操作,而其他线程又处于等待状态,实现线程同步的方法有很多,临界区对象就是其中一种。trans_service模块的线程同步管理是基于互斥锁实现的,而对于
在上篇博客分析了json_payload.c两个主要的函数–组织服务发布数据和解析服务发布数据 准备与解析数据。下面继续介绍其他功能函数,这些函数主要是组织和解析的细节。
【代码】鸿蒙OpenHarmony之分布式软总线discovery_service.c(四)
【代码】OpenHarmony分布式调度详解|dmslite.c。
本文分析了鸿蒙(HarmonyOS)分布式通信模块中nstackx_common.c的核心实现,重点解读了初始化与反初始化流程、设备注册管理以及服务功能配置等关键接口。主要内容包括: 初始化机制采用三状态机(未初始化/进行中/已完成),通过NSTACKX_Init实现cJSON配置、Coap发现模块初始化等准备工作,NSTACKX_Deinit负责资源释放和状态重置。 设备注册接口NSTACKX_
本文详细剖析了鸿蒙系统分布式任务调度中Service和Feature的注册流程。在foundation/distributedschedule目录下,Service通过g_distributedService全局对象实现,包含GetName、Initialize等核心方法;Feature则通过DmsLite结构体实现,继承INHERIT_FEATURE特性。两者注册均使用SAMGR实例,Servi
Mbed TLS 库旨在与现有(嵌入式)应用程序集成,并为安全通信、加密和密钥管理提供构建块。Mbed TLS 设计为尽可能松散耦合,允许您只集成您需要的部分,而无需其他部分的开销。这也导致 Mbed TLS 库的内存占用和构建占用非常低。通过消除系统中不需要的部件,您可以获得从低至 45 kB 到更典型的 300 kB 的构建大小,以实现功能更齐全的设置。
摘要: 本文介绍了OpenHarmony系统中公共事件订阅的接口使用方法和开发步骤。主要包含创建/销毁订阅者信息、订阅/取消订阅公共事件、处理有序公共事件等核心接口说明。开发流程包括:1)引用必要头文件和动态库;2)创建订阅者信息并设置权限和包名;3)实现回调函数处理接收的公共事件数据;4)通过参数接口获取事件附加信息。文中提供了详细的代码示例,展示了如何创建订阅者、接收事件数据以及处理事件参数的
OpenHarmony上的应用一般都是js/ets语言编写的,而js/ets语言是无法直接调用C/C++接口的,所以我们应用如果需要调用C/C++三方库的话,需要在js/ets和C/C++之间建立一个可以互通的桥梁。OpenHarmony系统中提供的napi框架正是这么一座桥梁。根据原生库的测试用例,我们封装2个测试用例接口} J2K_Info;int OpenjpegCompress(const
虽然如此,但我一想到如今的游戏,视频,及各种软件都是由这样一串串代码所达到的,就感到十分兴奋,我希望未来能从事游戏制作如网易旗下工作;又或者去华为,因为华为作为国产,虽然各个方面有很大的成就,如隐私保护,超级终端等,但亲自使用感觉还是有些许不足,与其去吐槽我更想能尽微薄之力,使华为国产品牌越走越远,道路越宽。首先,接触C语言的第一个代码让我感觉十分奇妙,但所学有限,仅仅能看到输出的简单代码与电脑交
本文介绍了基于HMAC(哈希运算消息认证码)的密钥生成与消息认证开发流程。首先通过CMake链接动态库,然后详细说明了密钥生成步骤:指定别名、初始化属性集、调用生成接口。接着展示了HMAC运算的实现方法:获取密钥别名、待处理数据,配置算法参数,初始化会话并完成哈希运算。文中提供了完整的代码示例,包括密钥参数配置、会话初始化和哈希计算函数实现,适用于OpenHarmony系统的开发场景。
本文介绍了鸿蒙开发中的设备信息管理模块,主要包含设备信息结构定义和相关操作接口。文章首先展示了远端设备、本地设备及设备信息三种结构体定义,详细说明了各字段含义。随后列举了设备信息操作的核心API,包括设置/获取设备信息、注册设备功能和服务数据等13个关键函数。这些内容为鸿蒙南向开发提供了设备管理的基础知识,有助于开发者理解鸿蒙系统的设备信息处理机制。
foundation\distributedschedule\dmsfwk_lite\source\dmslite_msg_handler.c文件中包括两个函数:StartAbilityFromRemoteHandler()用于接收会话消息数据解析得到的启动FA的命令id,用于启动FA;ReplyMsgHandler()用于回复消息。该文件中主要包含一些对解析后的命令id的操作,目前只支持两种操作
本文分析了鸿蒙系统trans_service模块中的message.c文件,该文件主要提供与cJSON库相关的接口,用于处理JSON格式数据的封装和解析。源码包含两个核心函数:GetJsonInt用于获取JSON对象的整数值,GetJsonString用于获取字符串值。两个函数均进行了输入参数校验,确保数据安全性和类型正确性。该模块为设备间通信提供基础数据解析支持,是鸿蒙分布式能力的重要组成部分。
本文分析了鸿蒙系统DMS组件中与启动FA相关的核心代码实现。主要内容包括: 接口获取部分:通过SAMGR获取AMS服务接口,使用QueryInterface获取Feature接口,为后续启动FA提供支持。 回调处理:AmsResultCallback处理异步启动结果,释放IPC资源,并通过回调函数通知启动状态。 Want填充逻辑:FillWant函数负责构造启动参数,设置目标包名和ability名
本文详细解析了OpenHarmony设备认证中HiChain本端接收数据的消息处理流程。重点分析了navigate_message()函数通过消息码获取消息类型和模块,以及check_message_support()函数对消息支持性的校验过程。文章深入剖析了状态检查机制、操作码获取逻辑,并展示了PAKE/STS协议下的不同处理路径。该流程确保了设备认证过程中消息处理的正确性和一致性,为开发者理解
本文介绍了如何在鸿蒙系统上使用C/C++开发应用的实操指南。核心内容为:1)确认鸿蒙应用支持C/C++核心逻辑开发,但界面需用ArkTS;2)详细指导DevEco Studio安装及NDK工程创建,强调选择Native C++模板;3)提供真机运行和签名配置的关键操作截图;4)说明成功运行的验证标准(显示"Hello World"及日志输出)。文章采用"问题-解决&q
在进行分布式任务调度之前,首先要对分布式Service和Feature进行注册,注册Feature之前需要注册一个与之同名的Service,Feature才能注册成功。// 该定义实现了面向对象中构造函数的概念/*** INHERIT_SERVICE包含了所有Service都要有的成员* GetName():获取服务名* Initialize():初始化服务* MessageHandler():消
本文详细解析了鸿蒙系统开发中设备信息管理的核心函数实现,包括设备信息结构体操作、网络接口管理、IP地址获取等关键功能。主要涵盖以下内容: 本地数据管理:ClearLocalData()函数清除设备信息、网络接口和网络类型 网络接口操作:GetLocalInterface()获取优先网络接口,UpdateLocalNetworkInterface()更新接口信息 IP地址处理:GetLocalIp(
创建一个工程工程里加模块选择 staticlibrary,就是静态库打开 native 的开关就是支持 nativec++,也就支持 ndk在主工程里导入 library 工程修改代码导出控件,方法// library 工程里修改 ------------------------------------------......})// library 工程里修改 -----------------
【代码】鸿蒙OpenHarmony之分布式软总线discovery_service.c(三)
本部分分析的代码位于。这个文件中的函数用于在任务调度过程中进行权限检查。其中执行主要的权限检查工作,仅针对FOUNDATION用户,用于调出获取需要检查的包信息。
auth_interface.c文件主要是提供一些设备间进行身份认证所需要的接口,如认证会话的管理、会话密钥的管理、HiChain的管理等。下面本文将对auth_interface.c文件的部分代码进行分析,因为有的代码会涉及到另一个模块的内容,那一块将会在接下来的文章中进行分析。
【代码】OpenHarmony之分布式软总线discovery_service.c(四)