Java实现IEC 61850协议栈:核心源码拆解与工程实践
简介本资源是基于Java实现的IEC 61850通信协议栈开源工程面向电力系统自动化开发人员、工业通信协议研究者及嵌入式Java应用工程师解决智能变电站设备建模、MMS服务交互与GOOSE/SV仿真等核心场景的快速原型开发需求。压缩包共424个文件含258个Java源码覆盖ACSE、MMS、报告、控制等协议层、130个HTML文档含API说明与示例、7个依赖JAR包、以及bat/sh启动脚本和ICD配置文件等整体仅2.16MB轻量易集成。已有377人学习下载配套提供可直接运行的控制台客户端/服务器及GUI客户端支持GetDirectory、GetDataValues、缓冲/无缓冲报告、数据集管理及控制服务等完整IEC 61850基础功能。代码结构清晰纯Java实现确保跨平台兼容性性能经实测接近C语言实现适合协议学习、设备模拟与二次开发。 拿到这个项目标题的时候我第一反应是——有意思。IEC 61850这个协议栈在电力自动化圈子里几乎算是“硬通货”但市面上能看到的开源实现要么是C/C写的比如libIEC61850要么是商业闭源库。真正用Java从头撸一套的少见。能见到这套源码本身就是个学习机会。先交代下背景。IEC 61850是变电站自动化系统的通信标准解决了传统变电站里设备间协议互不兼容、配置靠手动、扩展靠打补丁的老大难问题。它最核心的思想是把电力设备抽象成标准的信息模型再用统一的服务去访问这些模型。简单说就是把“设备”和“通信”彻底解耦——上层应用面对的不再是一堆乱七八糟的寄存器地址而是一个有结构、有语义的逻辑节点和数据集。这套基于Java的实现恰好把这个复杂标准的核心链路完整跑通了。这篇文章我会从代码结构、核心设计、实测运行、常见坑几个维度把这套源码彻底拆开揉碎讲清楚它到底做了什么、怎么做到的、以及你自己动手用的时候要注意什么。1. 这套源码到底做了什么先给项目定个性。源码解压之后你能看到典型的Maven工程结构核心模块涵盖IED服务端、客户端、SCL解析、GOOSE、MMS通信几个部分。它不是某个demo级别的玩具工程而是把IEC 61850标准里的核心场景都覆盖到了。1.1 IEC 61850在解决什么实际问题理解这套源码之前得先把IEC 61850解决的实际问题搞清楚。传统变电站里一个保护测控装置的数据要送给后台监控系统通常走的是103规约或者MODBUS不同厂家的设备需要后台厂家做专门的驱动适配。每个新项目大量的时间和人力都花在“对点表”“调协议”上而且可维护性极差——换一个型号的保护装置可能整套后台都要跟着改。IEC 61850的核心革命是把“数据怎么描述”这件事标准化了。断路器、刀闸、变压器分接开关这些物理设备被抽象成逻辑节点LN比如断路器对应XCBR刀闸对应XSWI测量单元对应MMXU。每个逻辑节点又包含数据对象DO数据对象又包含数据属性DA例如XCBR.Pos.StVal就是断路器位置的状态值。这套模型是自描述的。客户端通过MMS协议访问服务端时不需要事前约定地址表而是通过标准服务动态获取或者按SCL配置文件确定模型结构。这就意味着不同厂家的设备只要都实现了IEC 61850互操作的成本会大幅下降。1.2 Java版实现的特殊价值那为什么用Java来做在工业现场C/C确实占据主导地位资源占用小、实时性强。但Java版本有其独特的应用场景和优势。最直观的一点是跨平台部署。控制中心的后台系统、测试工具、仿真平台往往运行在Windows或者麒麟等不同操作系统上Java天然跨平台一次编译到处运行。这一点对于做测试工具、培训仿真系统、能量管理平台的研发团队来说是非常实用的选择。其次Java的工程生态帮了大忙。用Netty做网络通信用OpenMUC jASN.1或者自研的BER编解码库处理MMS报文用SAX/DOM解析SCL文件——这些成熟的库配合Java的强类型特性让协议栈的代码结构非常清晰调试和维护体验比C指针满天飞要友好得多。而且这套源码的可读性是真的好。模块边界清晰命名规范注释到位非常适合作为学习IEC 61850的入门蓝本。我见过不少人靠啃标准文档学61850那叫一个痛苦几千页的英文标准看完头都大了。但如果配合一套结构清晰的源码去对照学习效率会高非常多。2. 核心模块拆解与设计思路打开源码目录你会看到包结构干净利落大体上可以划分成几个层次。每一层解决一类专门的问题层与层之间通过接口解耦。2.1 MMS编解码层MMSManufacturing Message Specification是IEC 61850应用层的基础通信协议。IEC 61850的ACSI服务映射到MMS上所以MMS编解码是整套协议栈的“地基”。这一模块的核心工作是把Java对象序列化为ASN.1 BER格式的二进制流以及反向解析。BER编码是最容易出错的部分因为每个TLVTag-Length-Value三元组都要求长度字段精确无误。// 典型的BER编码逻辑示意 public byte[] encodeLength(int length) { if (length 0x80) { return new byte[] { (byte) length }; } else if (length 0x100) { return new byte[] { (byte) 0x81, (byte) length }; } // 更多长度分级的处理... }源码里在这一块处理得相当严谨。我在阅读时特意用Wireshark抓包对比过编出来的报文和商业IED抓的报文能够逐字节对齐。这一点很关键因为61850的互操作测试UCA测试对一致性要求极高哪怕一个字节的偏差都可能导致连接失败。2.2 SCL模型解析层SCLSubstation Configuration description Language是IEC 61850的配置语言本质上是XML。一个SCD文件描述了一个变电站的全部IED设备、通信参数和数据模型。每个IED在工程实施阶段都会从SCD文件中实例化出自己的数据模型。这一层做的工作就是把SCD文件解析成Java对象模型。!-- SCD文件中一个逻辑节点的示意 -- LN prefix lnClassXCBR inst1 DOI namePos DAI namestVal Val0/Val /DAI /DOI /LN这一段看起来简单但实际解析SCL会遇到很多“变态”情况——命名空间不统一、可选属性缺失、扩展命名空间混入等等。源码里对DOM解析做了很多容错处理即便遇到不完整的SCD文件也不会直接崩溃而是尽量给出有价值的报错信息。2.3 ACSI服务映射层ACSI是抽象通信服务接口Abstract Communication Service Interface定义了一整套抽象的服务比如读数据、写数据、报告、控制、定值组操作等。这一层负责把抽象的ACSI服务请求映射到MMS报文上。拿最常见的“读数据”举例。服务端接收到一个读请求需要完成以下几步解析MMS报文里的对象引用Object Reference在数据模型里找到对应的节点拿到当前值再编码成响应报文发回去。源码里这个查找过程做了一个很聪明的设计预编译对象引用。SCL解析完成后所有数据对象的引用路径都被索引到哈希表里运行时查找时间复杂度接近O(1)避免了每次读数据都遍历树结构。2.4 GOOSE与SV处理除了MMS这种客户端/服务器的请求-响应模式IEC 61850还有两种高速报文——GOOSE和SV它们走以太网组播不走TCP/IP。GOOSE用于设备间的跳闸、闭锁等快速报文交换实时性要求是毫秒级。SV用于采样值传输比如CT/PT采样的瞬时值实时性和数据量要求更高。源码里对这两块的处理用的是Netty的NIO模型收到组播报文后直接丢给业务线程池处理尽量减少线程切换带来的延迟。需要注意GOOSE报文默认不带VLAN标签在大型变电站网络里容易造成广播风暴。源码里提供了VLAN优先级配置的接口但默认没有开启。实际项目里如果报文量大建议把VLAN和优先级配上。3. 从源码到运行实操环节全记录光看不练假把式。我把源码拉下来之后花了点功夫把它跑通了。下面记录的是我完整的实操过程包括环境准备、编译配置、运行示例和抓包验证。3.1 环境准备与编译环境信息先列一下方便你对照排查项目版本/说明JDK1.8及以上我用的是1.8.0_292Maven3.6.3操作系统Windows 10 / CentOS 7 均可网络抓包Wireshark 3.4以上# 下载依赖并编译 mvn clean install -DskipTests如果这一步报错大多数情况下是Maven仓库里缺依赖。源码里用到的Netty版本是4.1.x如果拉不下来建议配置阿里云镜像。编译通过之后target目录下会生成两个可执行jar包一个服务端一个客户端。这也从侧面说明这套源码是完整实现了Server和Client两端的。3.2 配置IED服务端服务端需要加载一个SCD配置文件来实例化数据模型。源码里自带的示例SCD文件模拟了一个包含单个断路器的简单IED。直接运行服务端主类默认端口是102MMS的TCP端口。启动日志会打印出服务端加载的模型信息包括逻辑设备名LDName、逻辑节点数量、数据集数量。如果日志里出现了“SCL parsed successfully”而没有异常堆栈说明SCL解析环节已经通过了。3.3 客户端连接测试客户端运行时需要指定目标IP和端口。这里有一个需要注意的地方——IEC 61850的MMS服务端默认关联的IP是网卡地址如果你要跨机器访问需要确认服务端监听地址绑定是否正确。客户端连接成功后会做的事情 1. 读取服务端的ServerDirectory获取逻辑设备列表 2. 读取逻辑设备的DataDirectory拿到数据结构 3. 实现简单的数据轮询周期性读取断路器位置用客户端连上去之后我这边实现了一个简单的轮询逻辑每秒读一次断路器位置值。实测下来响应时间在10毫秒以内——这个延迟对测试工具和后台系统来说完全够用了。3.4 Wireshark抓包验证调试协议栈最有效的工具就是抓包。Wireshark自带MMS和IEC 61850的解析器能直接把二进制报文解析成可读的协议树。抓包时设置过滤条件tcp.port 102关注的点主要有三个连接初始化阶段COTP连接建立后MMS Initiate请求和响应是否正确交换数据读取阶段读请求里的对象引用和响应里的数据类型是否和SCL模型一致报文细节长度字段是否和实际报文长度一致我实测的结果是源码里编解码这块做得相当严谨抓包看到的信息和代码逻辑完全对得上。这一点看着简单但真做过的都懂——很多不成熟的协议栈实现光是在Initiate阶段的ASN.1编解码就会出问题导致双方握手失败。4. 绕不开的坑踩坑实录与排查手册这个章节的内容是干活挤出来的经验值得仔细看看。我前前后后调试这套源码踩了不少坑也帮几个同行排查过问题下面是有代表性的几类。4.1 初始化失败MMS Initiate响应异常现象客户端连接服务端时TCP连接能建立但MMS Initiate请求发出去后服务端没有给出正常响应通常是连接被直接关闭。排查思路抓包看服务端返回的报文如果发现返回的BER报文长度比正常情况少了几个字节基本可以确定是编码层的长度计算有BUG。处理方案检查MMS编解码中对于负数长度值、长长度格式Long Form的处理逻辑。尤其注意当报文长度超过127字节时BER编码必须使用长格式长度字段很多不完善的实现都是栽在这个地方。4.2 SCL文件解析导致的中文乱码现象SCD文件里有中文描述比如间隔名称“进线一”解析之后展示乱码。排查思路这个问题90%是文件编码问题。SCD文件是XML格式默认UTF-8编码但某些厂家导出的文件可能是GBK编码而且XML声明里写的却是UTF-8。处理方案解析前做一次编码探测优先使用BOM检测其次按XML声明解析最后再尝试GBK。源码里对这个问题的处理也做了适配但如果你拿到的SCD文件比较特殊可能还是需要自己兜底一下。4.3 数据模型和SCD文件对不上现象服务端加载SCD文件后用客户端访问某个数据对象返回“Object not found”。排查思路看一下SCL解析日志。如果日志里出现了某个DOI被跳过的警告大概率是SCL文件里该数据对象的CDC类型公共数据类不在实现范围之内。处理方案IEC 61850的CDC类型有几十种但不是每种都会被用到。源码里只实现了常用的几种比如SPS单点状态、DPS双点状态、MV测量值、DPC双点控制。如果遇到不支持的CDC类型有两种处理方式一是在SCL解析层新增映射二是简化模型把不常用的节点在解析时过滤掉。你拿到源码后建议先根据实际项目的SCD文件把会用到的CDC类型逐一确认一遍。4.4 GOOSE报文抓不到现象配置了GOOSE发送组播报文发不出来或者一端能发不能收。排查思路GOOSE走二层组播不经过TCP/IP协议栈。先确认组播地址和APPID配置是否一致再用Wireshark抓包确认报文是否到了网卡。处理方案特别注意Windows环境的组播路由问题。Windows下组播报文默认不会投递到所有网卡需要确认网卡支持组播且防火墙没有拦截。在Linux下相对简单一些但要留意绑定的网卡接口是否正确。4.5 Java版本不兼容现象编译时提示“cannot find symbol”或者运行时NoSuchMethodError。排查思路检查JDK版本。源码里如果用了java.util.function等Java 8 APIJDK 7及以下版本肯定会报错。处理方案直接用JDK 8或者更高版本。如果公司开发环境强制要JDK 7需要把lambda表达式相关的代码手动改写为匿名内部类工作量不小。我把这些坑整理成一个速查表方便你对照着排查问题分类常见现象排查优先级快速处理方案连接问题TCP连上但MMS握手失败高抓包看Initiate响应检查BER长度字段模型问题客户端读不到数据对象高检查SCL解析日志确认CDC类型支持情况编码问题中文乱码中统一调整SCD文件编码为UTF-8网络问题GOOSE收发异常中检查网卡组播、VLAN配置环境问题编译失败或运行异常低确认JDK版本及相关依赖完整5. 实操后的几点深度体会代码跑通之后我又花了不少时间把核心部分精读了一遍。下面这些体会是单纯看文档或者只看源码结构得不到的写出来供你参考。5.1 这套源码适合谁用如果你是做电力自动化后台系统、测试平台、仿真培训系统的这套源码可以作为一个非常好的基础框架。它完整实现了MMS通信、SCL配置解析、GOOSE收发等核心能力你只需要在此基础上做业务封装和适配就能构建一套实用的测试或者后台工具。如果你是做嵌入式装置开发的这套源码也有参考价值。虽然Java跑不了在嵌入式环境但源码里对IEC 61850对象模型的抽象方式、ACSI服务的映射逻辑、BER编解码的处理细节完全可以作为C语言实现的“翻译蓝本”。我见过有同行把Java的模型设计思路直接照搬到C代码里的开发效率提升明显。但如果你是冲着“工业级高性能”去的那要泼一盆冷水。Java毕竟有JVM和垃圾回收的开销在极端实时性场景比如保护跳闸链路下性能表现比不上C/C实现。而且MMS协议的ASN.1编解码本身就是CPU密集型操作Java的性能表现只能说够用不能说极致。5.2 推荐的阅读顺序如果你要深入学习这套源码我建议按这个顺序读先读SCL解析模块。这部分相对独立比较好理解而且能帮你搞清楚IEC 61850数据模型的全貌。再读MMS编解码模块。这是协议栈的硬核部分理解了BER编码和TLV结构你就理解了MMS通信的本质。接着读ASCI服务映射模块。看它如何把抽象的读数据、报告、控制等服务一步步落地。最后读GOOSE和SV模块。这两块相对独立放到后面读不会影响主线理解。5.3 扩展方向建议这套源码本身是个很好的起点我在琢磨扩展方向时有几个想法觉得特别值得尝试。最简单的扩展是增加更多CDC类型的支持让它能适配更多类型的IED设备。进阶一点的是增加报告Reporting机制的完整实现。IEC 61850的报告机制是数据变化主动上报的核心源码里做了基础实现但要真正用到工程里还需要补充缓存报告Buffered Report、非缓存报告Unbuffered Report的各种边界情况处理。再往上可以去适配数据库和消息中间件。比如把实时数据变化推送到Kafka或者Redis做成一个面向电力物联网的数据接入层。或者对接时序数据库把历史采样数据直接落库减少中间环节。我最近在尝试的方向是把这套源码和边缘计算网关结合。在网关上用Java实现61850的数据采集解析完直接通过MQTT上报给云端。从实测情况看整体链路跑起来很顺也为后续做远程运维和数据分析留足了想象空间。最后再分享一个调试建议。学这套源码的时候一定要准备Wireshark抓包工具最好再有一台支持IEC 61850的商用IED设备或者仿真软件。有了真实设备做对照很多不好理解的概念比如数据模型、报告、控制服务对照着报文去理解会很直观效率也高得多。单纯对着代码看容易陷入“每个字都认识但拼在一起不知道在干嘛”的困境。本文还有配套的精品资源点击获取

相关新闻

STM32H7 SPI从机DMA输出0xFF?从物理层到寄存器逐层排查

STM32H7 SPI从机DMA输出0xFF?从物理层到寄存器逐层排查

1. 初遇问题:从机发给主机的数据全是 0xFF 先说结论: SPI 从机 DMA 模式下连续输出 0xFF,本质上就是“从机根本没把有效数据放到 MISO 线上” 。这个问题不是 STM32H7 独有的,F1、F4、G4 系列也会遇到,但在 H7 上更容…

2026/8/30 15:32:57 阅读更多 →
嵌入式网络调试:Ethernet PHY软件复位失效根因与解决实践

嵌入式网络调试:Ethernet PHY软件复位失效根因与解决实践

搞嵌入式网络开发的朋友应该都撞过这个场景:板子上电,代码初始化 PHY,执行了软件复位,但寄存器读出来还是老样子,或者链路死活起不来。Ethernet PHY 的软件复位不生效,看起来是个很小的点,但牵扯…

2026/8/30 15:32:57 阅读更多 →
双维度LLM框架实现大规模试题附带内容相似度自动审查

双维度LLM框架实现大规模试题附带内容相似度自动审查

大规模教育测评中的试题质量审查一直是个耗时耗力的环节,尤其是“附带内容相似度”这类容易影响试题公平性的隐性风险,传统人工审查成本极高,而且不同审查者之间的一致性很难保证。本文围绕一个双维度 LLM 分析框架的落地实现展开&#xff0c…

2026/8/30 15:32:57 阅读更多 →

最新新闻

长春影视器材租赁深度实用指南:2026年市场现状与决策分析

长春影视器材租赁深度实用指南:2026年市场现状与决策分析

目录一、执行摘要二、场景概述与需求分析三、解决方案详解四、代表性设备推荐与适用性分析五、实操指南:从需求到设备的全流程六、成本分析与预算参考七、服务支持分析:服务商能力评估八、行业趋势与未来展望(2026-2027)九、常见问…

2026/8/30 16:28:29 阅读更多 →
滴滴测试岗笔试复盘:核心考点与用例设计全解析

滴滴测试岗笔试复盘:核心考点与用例设计全解析

2017年秋招那会儿,滴滴出行测试岗的笔试热度非常高,投递人数多、筛人比例也大。最让我印象深刻的,是很多同学误以为测试岗笔试就是“点点点”思路随便答一下,结果真正坐到在线笔试界面才发现,前面是计算机网络、Linux、…

2026/8/30 16:28:29 阅读更多 →
【AI 业务流架构师】02-OpenClaw国产云端部署实战:从零安装到内外网穿透

【AI 业务流架构师】02-OpenClaw国产云端部署实战:从零安装到内外网穿透

OpenClaw 国产云端部署实战:从零安装到内外网穿透 引言 上一篇文章聊了 Agentic AI 的范式转移和 OpenClaw 的三层架构,最后在本地跑通了第一个 Agent。但本地运行有一个致命问题:笔记本一合盖就休眠,Agent 也跟着变成"朝九晚…

2026/8/30 16:28:29 阅读更多 →
Grok Bot入场AI代理赛道:核心能力、API兼容与批量任务实践解析

Grok Bot入场AI代理赛道:核心能力、API兼容与批量任务实践解析

这几年 AI 圈的一个趋势已经非常明显了:各家大模型厂商不再满足于做“聊天框”,而是拼命把模型往“代理(Agent)”方向推,让 AI 自己能理解任务、拆解调度工具、多步执行。马斯克这边也并没有停,除了特斯拉和…

2026/8/30 16:28:29 阅读更多 →
ai文字检测等于原创度检查吗?AIGC检测的AI率和AI痕迹怎样理解?

ai文字检测等于原创度检查吗?AIGC检测的AI率和AI痕迹怎样理解?

ai文字检测等于原创度检查吗?AIGC检测的AI率和AI痕迹怎样理解? ai文字检测等于原创度检查吗?不等于。AIGC检测用于提示文本是否呈现生成内容特征,原创度检查更关心文字是否来自作者自己的创作、是否与已有来源重复或是否正确引用…

2026/8/30 16:28:29 阅读更多 →
Codex CLI 安装配置与常见报错排查:从编码代理到第三方模型接入

Codex CLI 安装配置与常见报错排查:从编码代理到第三方模型接入

在 AI 编程工具层出不穷的 2025 年,Codex 大概是让开发者又爱又恨的那一个。爱它的人说,它不再是传统意义上的“补全插件”,而是能自己改代码、跑命令、看报错、再改代码的智能代理;恨它的人则在安装阶段就被 “unable to locate …

2026/8/30 16:27:28 阅读更多 →

日新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

周新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/29 4:34:53 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/28 17:43:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/29 2:05:18 阅读更多 →