<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>IT营社区-挑战年薪20k我们在行动</title><link>https://bbs.itying.com</link><language>zh-cn</language><description>IT营社区:专业IT中文社区</description><item><title>这套AI大模型课程里，有6个实战项目值得后端程序员单独拎出来看</title><link>https://bbs.itying.com/topic/6ac9f511710f830027a6896d</link><guid>https://bbs.itying.com/topic/6ac9f511710f830027a6896d</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;很多AI课程喜欢把目录列得很长，但真正决定一套课值不值得看的，是里面的实战项目够不够“真”。我最近在看大地老师的DeepSeek AI大模型全栈开发实战，80讲。不按目录顺序平铺了，直接挑6个我觉得后端最该看的实战项目来说。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目一：三种语言写同一个AI问答系统（第16-18讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;用Node.js、Go、Python分别实现一个类似ChatGPT的医药问答系统。这个项目的价值不在业务本身，而在于你可以用自己最熟的语言入手，再看另外两个版本对照理解。我是Go后端，主要看第17讲，28分钟，从调API到多轮对话到流式输出，讲得比较清楚。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目二：AI合同审查（第19讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;用Node.js、Python、Go读取Word合同内容，结合大模型和Prompt技术做合同审查。这是一个典型的“文档处理 + 大模型”场景。后端日常工作中经常要处理各种文档，这个项目的思路可以直接迁移。21分钟，不长，但信息密度不低。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目三：文搜文和图搜图（第26-27讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;第26讲用向量数据库实现相似度全文搜索引擎，对应电商搜索和推荐系统。第27讲借助阿里DashScope模型实现图片向量化，做图搜图。这两个项目是向量数据库最典型的应用场景，学完能理解“向量检索”到底怎么用在业务里。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目四：LangChain + RAG 企业知识库（第28-33讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这是整套课里我花时间最多的部分。从LangChain入门、文档加载和切片，到Milvus向量存储，再到检索优化（MultiQueryRetriever、LongContextReorder），最后实现企业知识库系统。第32讲和第33讲是重点，一个讲实现，一个讲优化。学完这套流程，你就能回答“怎么让大模型基于公司内部文档回答问题”这个问题。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目五：仿京东《问京言》AI导购（第43-48讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;用智能体编排结合后端API和数据库，做一个类似京东AI导购的系统。用户问“有没有适合送长辈的手机”，系统会调用远程API获取商品数据，再让大模型生成推荐话术，最后在前端显示商品并保存对话历史。这是一个完整的“大模型 + 后端业务系统”闭环，也是最能体现后端做AI应用优势的项目。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;项目六：LLM Agent + 数据库做数据统计（第72-73讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;让AI理解自然语言，自动生成SQL去查数据库。比如“查一下上个月销量最高的商品”，AI会生成对应的SQL并返回结果。这个场景对后端来说太熟悉了，也是大模型落地企业最直接的方式之一。上下两讲，52分钟，讲得比较透。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;除了项目本身，还有两点值得说&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一是课程用Node.js、Python、Go三种语言并行讲解。不管你原来写什么语言，都能找到对应的实现路径。这一点对后端很友好。&lt;/p&gt;
&lt;p&gt;二是Dify部分（第63-80讲）覆盖了低代码平台搭建AI应用的完整流程，从部署到工作流到API调用。如果你想快速给公司内部搭一个AI助手，这条路比自己从零写快得多。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;适合谁&lt;/strong&gt;： 有后端基础、想往AI应用开发方向转的人。不需要算法背景，但需要会至少一门后端语言。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;不适合谁&lt;/strong&gt;： 想搞模型训练、调参、发论文的，这套课不覆盖。&lt;/p&gt;
&lt;p&gt;如果你也在找AI大模型的应用开发课程，可以先看这6个项目感不感兴趣，再去B站看免费试听课感受风格。至少对我来说，这6个项目是我坚持看下去的主要原因。&lt;/p&gt;
&lt;p&gt;官网地址：&lt;a href=&quot;https://www.itying.com/goods-1206.html&quot;&gt;https://www.itying.com/goods-1206.html&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 08:19:29 GMT</pubDate></item><item><title>后端转AI大模型，我试过三条路都走不通，最后靠这套课入了门</title><link>https://bbs.itying.com/topic/6ac9f48825689d00260df10b</link><guid>https://bbs.itying.com/topic/6ac9f48825689d00260df10b</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;先说一个我踩过的坑：我最开始学AI，是从Python和PyTorch入手的。看了两周，能跑通MNIST手写数字识别，但回到工作里一看，跟我的后端业务没有任何关系。那两周基本白费。&lt;/p&gt;
&lt;p&gt;后来我复盘了一下，后端程序员转AI，容易走进三条死胡同：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一条：去卷算法&lt;/strong&gt; 学PyTorch、看论文、调参。问题是，算法岗卷的是学历和论文，我一个写业务的后端，在这条赛道上没有任何优势。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二条：只看科普&lt;/strong&gt; 看了很多“大模型原理”“Transformer详解”的文章和视频，原理懂了个大概，但真让我接一个API到项目里，还是不知道从哪下手。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第三条：囤了一堆课不看&lt;/strong&gt; 极客时间买了两门，B站收藏了十几个视频，最后都吃灰了。&lt;/p&gt;
&lt;p&gt;真正让我入门的，是我在找Go教程的时候，顺带发现的这套大地老师的DeepSeek AI大模型全栈开发实战。80讲，2026年更新版。目前看到50讲左右，说几个让我觉得“找对了”的地方。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;它先讲怎么用AI，再讲怎么开发AI&lt;/strong&gt; 前10讲全是Prompt工程和AI编程。怎么写提示词让AI帮你写接口文档、排查报错、生成代码。这部分我学完第二天就用上了。我现在排查一个Go的并发Bug，会先让AI过一遍堆栈信息，比我瞎猜快得多。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;它用Go写了一遍AI应用&lt;/strong&gt; 这一点对我太重要了。市面上讲AI应用开发的课，大多用Python。但我日常写Go，看Python代码总有种隔了一层的感觉。这套课第17讲用Golang实现了一个类似ChatGPT的医药问答系统，第25讲用Go操作Milvus向量数据库，第51讲用Go调用本地部署的DeepSeek。我基本是照着Go的版本敲一遍，再看Python版本对照理解。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;它讲清楚了RAG到底怎么落地&lt;/strong&gt; 我之前一直有个疑问：公司内部文档那么多，怎么让大模型基于这些文档回答问题？课程第28到33讲给了完整答案：用LangChain加载文档、切片、向量化，存进Milvus，检索时用MultiQueryRetriever做优化。第32讲直接实现了一个企业知识库系统。这套流程走一遍，RAG就不再是个玄学概念了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dify那部分比我想的实用&lt;/strong&gt; 第63讲开始讲Dify，我原以为低代码平台就是玩具。但课程讲了怎么通过API调用Dify、怎么把Dify和Vue前端结合、怎么用工作流做复杂逻辑。我现在正在用Dify给部门内部搭一个问答助手，基本没写多少代码。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;一个我觉得最有价值的实战：第72和73讲，LLM Agent + 数据库实现数据统计和挖掘&lt;/strong&gt; 简单说，就是让AI理解自然语言，自动生成SQL去查数据库。比如“查一下上个月销量最高的商品”，AI会生成对应的SQL语句并返回结果。这个场景对后端来说太熟悉了，也最能体现“大模型接进现有系统”的价值。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;说一句实话&lt;/strong&gt; 这套课不是灵丹妙药。它教的是应用层开发，不是算法。如果你想搞模型训练，这套课不覆盖。如果你跟我一样，是个写业务的后端，想搞清楚怎么把大模型接进现有系统，那它的路径是对的。&lt;/p&gt;
&lt;p&gt;学完这套课，我至少能回答面试官一个问题：你做过什么AI相关的项目？我可以讲RAG知识库、讲Agent调数据库、讲Dify工作流。这些不是背出来的，是我自己敲过一遍的。&lt;/p&gt;
&lt;p&gt;如果你也在后端转AI的路上试过几条路走不通，可以先去B站看大地老师的AI入门免费课（b站免费学习地址：&lt;a href=&quot;https://www.bilibili.com/video/BV1r7PRe9EFq&quot;&gt;https://www.bilibili.com/video/BV1r7PRe9EFq&lt;/a&gt; ），感受一下风格，再决定要不要进这套实战。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 08:17:12 GMT</pubDate></item><item><title>想转大模型应用开发？一套从 Prompt → RAG → Agent → Dify 本地部署完整学习路线</title><link>https://bbs.itying.com/topic/6ac9f20d25689d00260df10a</link><guid>https://bbs.itying.com/topic/6ac9f20d25689d00260df10a</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;现在 AI 大模型相关岗位越来越多：大模型应用开发工程师、RAG 开发、Prompt 工程师、AI 后端工程师。翻看招聘 JD，岗位要求已经不再是 “会玩 ChatGPT”，而是要求掌握 Prompt 工程、RAG 检索增强、向量数据库 Milvus、Agent 智能体、Dify、开源模型本地部署，能够落地企业私有知识库、垂直业务 AI 应用。&lt;/p&gt;
&lt;p&gt;不少程序员想切入这个赛道，但是学习没有章法：有的只刷各种 Prompt 技巧，完全不懂后端集成；有的直接上手部署大模型，但是不懂 RAG 原理；还有的只会点点 Dify 页面，不会 API 集成，面试被问到底层原理一问三不知。&lt;/p&gt;
&lt;p&gt;本文整理一套适合有后端编程基础（Python / Go / Nodejs）开发者的完整学习路线，从基础提示词工程，到 RAG 知识库、Agent、Dify 平台、本地 DeepSeek/Qwen 部署，再到完整实战项目，帮助大家建立完整知识体系，用于开发实践和面试准备。&lt;/p&gt;
&lt;h2&gt;一、哪些人适合学习大模型应用开发&lt;/h2&gt;
&lt;p&gt;前提条件：掌握至少一门后端编程语言 Python / Go / Nodejs。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在职后端开发，希望拓展 AI 大模型技术栈，提升职场竞争力。&lt;/li&gt;
&lt;li&gt;想转行 AI 应用方向，不想做算法调参，偏向工程落地。&lt;/li&gt;
&lt;li&gt;做产品、测试，希望理解大模型应用底层逻辑，看懂技术方案。&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;提示：这条路线是&lt;strong&gt;大模型应用层开发&lt;/strong&gt;，不是算法训练，不需要深度学习、神经网络大量数学基础，重点是应用、集成、工程落地。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;二、分阶段完整学习路线&lt;/h2&gt;
&lt;h3&gt;阶段一：Prompt 提示词工程（基础入门）&lt;/h3&gt;
&lt;p&gt;Prompt 是一切的起点，不是简单写一句提问，而是一套工程能力。
学习重点：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;基础编写原则：目标明确、分隔符、思维链 CoT、角色设定、输出格式约束、示例示范、增加限制条件。&lt;/li&gt;
&lt;li&gt;多行业 Prompt 实践：文案生成、PPT 思维导图生成、Mermaid 图表、数据整理。&lt;/li&gt;
&lt;li&gt;编程领域 Prompt：生成代码、解释代码、排错、生成接口文档。&lt;/li&gt;
&lt;li&gt;结构化输出，强制 JSON 格式输出，为后续 Function Calling 打好基础。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;避坑：不要沉迷网上各种神奇 Prompt 合集，重点理解编写的通用方法论，能够自己根据业务场景设计提示词模板。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;阶段二：大模型 API 调用与 Function Calling&lt;/h3&gt;
&lt;p&gt;掌握公有大模型调用，理解多轮对话、流式输出、工具调用原理。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;使用 Python / Go / Nodejs，分别调用智谱、通义千问、百度千帆等国内大模型 API。掌握 HTTPS 请求与官方 SDK 两种调用方式。&lt;/li&gt;
&lt;li&gt;实现单轮、多轮会话、流式返回效果。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Function Calling 原理实战&lt;/strong&gt;：让大模型判断什么时候调用外部工具，获取工具返回结果再整理回答。&lt;/li&gt;
&lt;li&gt;实战小项目：医药问答系统、Word 文档合同审查项目。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;核心理解：大模型本身不会访问数据库、不会调用接口；Function Calling 是 “让模型决定调用什么工具，代码去真正执行工具逻辑”。&lt;/p&gt;
&lt;h3&gt;阶段三：RAG 检索增强生成 + Milvus 向量数据库（核心重点，面试高频）&lt;/h3&gt;
&lt;p&gt;RAG 用来解决私有知识库、大模型幻觉、知识滞后，企业项目几乎必用。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;理解 Embedding 向量嵌入原理；向量数据库 Milvus 基础概念：集合、索引、增删改查、向量相似度搜索。&lt;/li&gt;
&lt;li&gt;文档处理链路：文档加载、文本分割策略、向量化、向量入库、检索召回、重排序、把检索片段交给大模型生成答案。&lt;/li&gt;
&lt;li&gt;LangChain 框架实战，分别用 Nodejs、Python 操作 Milvus，搭建企业知识库 Demo。&lt;/li&gt;
&lt;li&gt;调优知识点：分块大小调整、混合检索、召回数量、如何缓解幻觉。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;自我检验：能够独立完整跑通一套 RAG 流程，知道每一步出问题会带来什么业务后果。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;阶段四：Agent 智能体 + 工作流开发&lt;/h3&gt;
&lt;p&gt;Agent = 大模型大脑 + 工具插件 + 规划推理能力，实现复杂任务自动化。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Agent 基础概念：工具调用、记忆、任务规划。&lt;/li&gt;
&lt;li&gt;工作流节点：大模型节点、知识库节点、问题分类器、Http 请求节点、参数提取、迭代循环节点。&lt;/li&gt;
&lt;li&gt;实战项目：AI 旅游攻略生成；Agent 对接数据库实现自然语言做数据统计挖掘。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;阶段五：Dify 开源 LLM 应用平台实战&lt;/h3&gt;
&lt;p&gt;Dify 是生产级开源大模型应用平台，不是玩具，企业大量使用。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Windows/Mac/Linux 多环境部署 Dify 平台，配置模型供应商。&lt;/li&gt;
&lt;li&gt;创建知识库：文档上传、解析、切片、向量化；爬虫抓取网页构建知识库。&lt;/li&gt;
&lt;li&gt;搭建 Agent、自定义插件、编写复杂工作流。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;重点：Dify API 调用&lt;/strong&gt;，后端程序通过接口调用 Dify 应用，和自己业务系统打通。&lt;/li&gt;
&lt;li&gt;实战项目：仿京东《京言》电商智能导购项目。理解意图分类、商品 API 调用、脚本转换、对话历史管理整套业务流程。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;阶段六：本地开源大模型部署 DeepSeek、Qwen&lt;/h3&gt;
&lt;p&gt;出于数据安全，很多业务要求不能调用公有 API，需要本地部署开源模型。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Ollama 工具，Windows/Mac/Linux 部署 DeepSeek、Qwen 系列开源大模型。&lt;/li&gt;
&lt;li&gt;封装本地模型 HTTP API，供业务程序调用。&lt;/li&gt;
&lt;li&gt;AnythingLLM 部署，搭建本地私有知识库。&lt;/li&gt;
&lt;li&gt;结合 Vue 前端，开发私有 AI 聊天助手。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;阶段七：综合项目沉淀（写进简历）&lt;/h3&gt;
&lt;p&gt;优先完成 2‑3 个完整可演示项目：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;企业私有知识库 RAG 问答系统。&lt;/li&gt;
&lt;li&gt;业务 Agent 项目，例如电商智能导购、合同审查。&lt;/li&gt;
&lt;li&gt;本地开源大模型搭建私有 AI 助手。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;三、高频面试自检问题（学完可以自测）&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;RAG 完整流程是什么？哪些环节会造成答案质量差？&lt;/li&gt;
&lt;li&gt;向量数据库 Milvus 的作用是什么？为什么不能直接用数据库 like 搜索？&lt;/li&gt;
&lt;li&gt;Function Calling 原理，大模型本身会不会真正执行接口调用？&lt;/li&gt;
&lt;li&gt;使用 Dify 开发业务应用，为什么不能完全依赖页面配置？&lt;/li&gt;
&lt;li&gt;如何缓解大模型幻觉？&lt;/li&gt;
&lt;li&gt;本地部署开源大模型，和调用公有大模型 API，分别适合什么业务场景？&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;四、学习避坑清单&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;❌只学 Prompt，完全不学后端代码与工程集成，只能做玩具 Demo。&lt;/li&gt;
&lt;li&gt;❌只会点 Dify 可视化操作，不懂 API 调用，不懂底层 RAG 原理。&lt;/li&gt;
&lt;li&gt;❌跳过 RAG 原理，直接上来部署本地大模型，本末倒置。&lt;/li&gt;
&lt;li&gt;❌只跑成功案例，不去模拟异常：检索为空、API 超时、模型输出格式错误。&lt;/li&gt;
&lt;li&gt;✅多做对比实验：调整分块大小、调整召回数量，直观看到效果变化，加深理解。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;结尾&lt;/h2&gt;
&lt;p&gt;大模型应用开发，核心是&lt;strong&gt;把大模型能力落地到真实业务系统&lt;/strong&gt;，而不是玩问答 Demo。
学习路径不要跳步：提示词工程 → API 调用与 Function Calling → RAG 向量知识库 → Agent 与工作流 → Dify 平台集成 → 本地开源模型部署，一步步沉淀项目经验。&lt;/p&gt;
&lt;p&gt;希望大家可以少走弯路，真正掌握可以求职、做业务项目的实战能力。欢迎评论区交流大模型学习遇到的问题。&lt;/p&gt;
&lt;p&gt;官网学习地址：&lt;a href=&quot;https://www.itying.com/goods-1206.html&quot;&gt;https://www.itying.com/goods-1206.html&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 08:06:37 GMT</pubDate></item><item><title>后端做 LLM 应用踩坑实录：不要只会调用大模型 API，业务落地远比想象复杂</title><link>https://bbs.itying.com/topic/6ac9f16625689d00260df109</link><guid>https://bbs.itying.com/topic/6ac9f16625689d00260df109</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;作为一名后端开发，最开始接触大模型开发，以为就是调个 HTTP 接口传 Prompt，把返回结果展示到页面就完事。真正上手做业务项目之后才发现，这仅仅只是冰山一角。&lt;/p&gt;
&lt;p&gt;很多网上教程，只演示简单单轮对话 Demo，但是一旦对接真实业务，就会冒出一堆棘手问题：RAG 知识库检索出来的内容和问题无关、大模型频繁幻觉、多轮对话上下文丢失；Dify 工作流节点报错、Milvus 向量库分块不合理导致答案质量差；本地部署 DeepSeek/Qwen 环境折腾很久跑不起来；Agent 调用外部数据库、业务 API 出现参数解析异常。&lt;/p&gt;
&lt;p&gt;不少同学自学大模型，停留在玩 ChatGPT、写简单 Prompt，一旦落到企业私有知识库、电商智能导购、合同审查这类真实业务，就处处碰壁。本文站在后端实战角度，聊聊 LLM 应用开发的真实痛点，梳理 RAG、向量数据库、Agent 智能体、Dify 低代码平台落地过程中遇到的各类坑，以及对应的处理思路。&lt;/p&gt;
&lt;h2&gt;一、误区：以为大模型开发 = 写 Prompt + 调用 API&lt;/h2&gt;
&lt;p&gt;很多初学者有一个巨大误区：觉得只要 Prompt 写得好，调用大模型 API，就可以搞定一切业务。
实际企业项目远不止这些：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;私有知识问题&lt;/strong&gt;：企业内部文档、产品资料、合同文件不能传到公有大模型，必须搭建私有 RAG 知识库，文档解析、切片、向量化、向量库召回每一步都会影响最终效果。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;业务数据打通&lt;/strong&gt;：大模型需要读取业务数据库、调用内部业务接口，比如电商导购需要读取商品库数据，这就离不开 Function Calling、Agent、工作流编排。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;多轮对话上下文管理&lt;/strong&gt;：会话记忆、上下文窗口溢出、历史消息裁剪，处理不好会出现答非所问。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;环境部署&lt;/strong&gt;：公有 API 有额度、网络风险；本地部署 DeepSeek、Qwen，Windows/Mac/Linux 不同环境的适配、Ollama 环境、模型量化、API 服务暴露，都是工程问题。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;稳定性与异常&lt;/strong&gt;：大模型输出格式不可控，JSON 解析失败、网络超时、向量库查询异常，都要后端做兜底处理。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;Prompt 是重要一环，但只是整个系统的输入。真正生产级 LLM 应用，是一套由「文档处理‑向量库‑大模型‑业务接口‑工作流‑异常兜底」组成完整工程体系。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;二、RAG 私有知识库开发高频踩坑&lt;/h2&gt;
&lt;p&gt;RAG 检索增强生成，几乎是企业 AI 应用标配，用来解决大模型幻觉、知识过时、私有数据无法输入公有模型的问题。但 RAG 并不是上传文档就完事。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;文档切片策略随意&lt;/strong&gt;
直接固定字符长度切割 PDF、Word 文档，把完整段落、表格拆得支离破碎。检索返回片段残缺，大模型拿到碎片化信息，输出答案自然错误。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;实战经验：区分文档类型，Markdown、PDF、表格文档使用不同分割器，尽量保证语义段落完整性，不能粗暴一刀切。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;向量召回不等于业务相关&lt;/strong&gt;
向量相似度只是语义近似，不等于业务匹配。经常出现：用户问商品售后，召回一堆营销文案。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;解决方案：可以搭配关键词检索，混合检索策略；设置召回数量、重排序；针对业务场景调整 Embedding 向量模型。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;文档更新之后知识库不同步&lt;/strong&gt;
业务文档修改、新增之后，向量数据库 Milvus 没有重新向量化，大模型依旧读取旧内容。很多 Demo 教程完全不提数据更新逻辑。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;幻觉依旧存在&lt;/strong&gt;
就算接入 RAG，大模型依然会编造不存在的数据。需要在 Prompt 中做约束，只允许使用检索到的知识库内容作答，增加事实校验逻辑。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;三、Dify 低代码平台，不是点几下鼠标就可以上线&lt;/h2&gt;
&lt;p&gt;Dify 是非常优秀的开源 LLM 应用平台，可以快速搭建 RAG 知识库、Agent、工作流。但是很多人把 Dify 当成零代码玩具，直接拿 Demo 配置上线，上线之后一堆坑。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;工作流节点调试困难&lt;/strong&gt;
条件分支、参数提取器、Http 请求、迭代节点，任意一个节点参数格式不对，整个流程直接中断。尤其是调用外部业务 API，返回 JSON 格式稍有偏差，流程就失败。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;API 对接业务系统的坑&lt;/strong&gt;
Dify 通过 HTTP 节点调用自己后端接口，要处理鉴权、超时、异常捕获；很多新手没有配置异常分支，一旦业务接口报错，整个 AI 应用直接崩溃。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;知识库高级场景&lt;/strong&gt;
需要对接外部 Milvus 向量库、爬虫抓取网页导入知识库，不是简单上传本地文件，需要理解 Dify 对外知识库调用机制。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;Dify 降低搭建门槛，但不等于不需要后端开发能力。复杂业务，依然需要后端写业务接口，和 Dify 做 API 层面的集成。仿京东《京言》电商导购项目就是典型案例：意图分类、调用商品数据库、脚本转换、多源数据拼接输出，整套业务逻辑，大量依赖工作流 + 外部 API 协同。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;四、Agent 智能体开发容易忽略的关键点&lt;/h2&gt;
&lt;p&gt;Agent 核心能力是工具调用：调用数据库、Http 接口、插件，自主完成复杂任务，例如旅游攻略生成、数据分析挖掘。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Function Calling 输出格式不可控&lt;/strong&gt;
大模型偶尔输出非标准 JSON，直接解析会程序报错，后端必须增加容错、格式修复逻辑，不能直接信任模型输出。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;避免 Agent 无限循环&lt;/strong&gt;
迭代节点如果不加终止条件，会出现无限调用工具，消耗大量 token。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;权限风险&lt;/strong&gt;
Agent 可以调用数据库、接口，一定要做好权限隔离，不能给 Agent 开放高危删除、修改数据能力。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;五、本地大模型部署的现实问题 DeepSeek / Qwen&lt;/h2&gt;
&lt;p&gt;很多团队出于数据安全，选择本地部署开源大模型 DeepSeek、Qwen。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;不同操作系统 Windows / Mac / Linux 环境差异，Ollama 安装、模型下载、显卡显存不足，新手很容易卡在这里。&lt;/li&gt;
&lt;li&gt;部署完模型不等于完事，还需要封装 HTTP API 服务，供业务后端调用；对接 AnythingLLM 做本地知识库。&lt;/li&gt;
&lt;li&gt;模型量化、性能评估，测试问答质量，不是跑通一条问答就代表可以业务使用。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;六、后端学习大模型应用，建议的实操顺序&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;学会 Prompt 工程，掌握提示词模板、思维链、角色设定、结构化输出。&lt;/li&gt;
&lt;li&gt;练习调用各大厂商大模型 API（智谱、通义千问、千帆等），掌握 Function Calling、流式输出、多轮会话。&lt;/li&gt;
&lt;li&gt;搞懂 Embedding、向量数据库 Milvus，动手实现简易 RAG，复现文档解析‑切片‑向量化‑召回‑生成完整链路。&lt;/li&gt;
&lt;li&gt;上手 Dify，搭建知识库，练习工作流编排，调试各个节点，学会通过 API 和自己业务系统打通。&lt;/li&gt;
&lt;li&gt;本地通过 Ollama 部署 DeepSeek/Qwen 开源大模型，完成本地私有问答 Demo。&lt;/li&gt;
&lt;li&gt;做完整业务项目：例如医药问答、合同审查、电商智能导购，完整走完开发、调试、异常处理全流程。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;不要只跑理想状态 Demo，刻意制造异常：接口超时、知识库检索为空、模型输出乱格式，看看程序会不会崩。线上系统的稳定性，恰恰体现在各种异常场景。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;总结&lt;/h2&gt;
&lt;p&gt;大模型应用开发，不是调调 API、写写提示词。真正生产级项目，考验更多的是后端工程能力：文档处理、向量库调优、会话管理、异常容错、业务系统集成、私有化部署。系统学习参考：&lt;a href=&quot;https://www.itying.com/goods-1206.html&quot;&gt;https://www.itying.com/goods-1206.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;网上很多教程只展示一切顺利的理想场景，只有自己踩过坑，才知道 RAG 召回差、Agent 调用失败、Dify 工作流中断这些真实问题该如何处理。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 08:03:50 GMT</pubDate></item><item><title>Golang 做秒杀踩坑实录：直接 Gin+MySQL 写抢购，上线直接崩了</title><link>https://bbs.itying.com/topic/6ac9f07d25689d00260df108</link><guid>https://bbs.itying.com/topic/6ac9f07d25689d00260df108</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;之前做项目的时候，接到一个需求，要做商品秒杀、预约抢购功能。最开始图省事，直接用 Gin + MySQL 来实现，没有引入消息队列。压测的时候就暴露出一堆致命问题：大量并发请求打过来，数据库连接池瞬间耗尽，出现超卖、数据错乱，接口大量超时报错，服务直接接近雪崩。&lt;/p&gt;
&lt;p&gt;经过这次踩坑，我完整学习了 RabbitMQ 在 Go 项目中的落地（学习地址：&lt;a href=&quot;https://www.itying.com/goods-1199.html&quot;&gt;https://www.itying.com/goods-1199.html&lt;/a&gt; ），理解了削峰填谷、异步解耦的真正价值。今天站在后端开发实战角度，聊聊秒杀类高并发场景会遇到的坑，以及 RabbitMQ 结合 Golang 如何解决这类业务问题。&lt;/p&gt;
&lt;h2&gt;一、传统 Gin+MySQL 实现秒杀，到底会出哪些问题&lt;/h2&gt;
&lt;p&gt;很多新手写秒杀逻辑，代码逻辑看起来逻辑没问题：接收抢购请求，判断库存 &amp;gt; 0，开启事务扣减库存，生成订单返回结果。
但是高并发压测下隐患全部暴露出来：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;超卖问题&lt;/strong&gt;：多个 goroutine 同时读取库存，都读到库存大于 0，同时执行扣减，库存变成负数，出现超卖，业务数据错乱。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;数据库锁冲突严重&lt;/strong&gt;：同一行库存记录被大量请求争抢，行锁竞争激烈，大量请求阻塞等待，数据库 CPU、IO 飙升，连接池被打满。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;接口响应超时&lt;/strong&gt;：大量请求同步操作数据库，接口 RT 飙升，大量用户请求直接超时，用户体验极差。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;没有容错能力&lt;/strong&gt;：数据库一旦压力过载，整个抢购功能直接不可用，没有缓冲降级手段。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;不是 MySQL 不能做扣库存，&lt;strong&gt;不能让大量抢购请求直接同步打到数据库&lt;/strong&gt;。短时间爆发的流量，必须要有一层中间件做流量缓冲。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;二、RabbitMQ 核心能力，为什么适合秒杀抢购场景&lt;/h2&gt;
&lt;p&gt;RabbitMQ 作为成熟 AMQP 协议消息中间件，在业务里主要承担 4 个核心作用：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;削峰填谷&lt;/strong&gt;：瞬时爆发的抢购请求先存入消息队列，消费者按照数据库处理能力，匀速消费消息，避免流量直接冲击数据库。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;异步提速&lt;/strong&gt;：前端提交请求，立刻返回排队提示；真正的扣库存、生成订单后置异步处理，大幅降低接口响应时间。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;应用解耦&lt;/strong&gt;：抢购请求接收、订单生成、库存扣减逻辑互相隔离，某一部分故障不会直接让整个业务完全挂掉。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;消息分发&lt;/strong&gt;：支持多种交换机模式，可以灵活分发不同业务消息，适配预约、订票、抢购等多种业务场景。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;三、RabbitMQ 五种工作模式，在 Go 业务中分别适合什么场景&lt;/h2&gt;
&lt;p&gt;很多同学学 RabbitMQ 上来直接搞秒杀，但是基础五种模式没有搞懂，写代码到处踩坑。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;简单模式&lt;/strong&gt;：一对一生产者消费者，适合简单通知、简单任务下发。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;工作队列模式&lt;/strong&gt;：一个队列，多个消费者并行处理任务，适合耗时任务并发处理；重点要掌握手动 Ack 确认、预取计数 prefetch，防止消息丢失、任务分配不均RabbitMQ。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;发布订阅模式&lt;/strong&gt;：Fanout 交换机，消息广播给多个队列，适合事件通知，比如抢购成功后，同时推送短信、站内信。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;路由模式 Direct&lt;/strong&gt;：根据 routing-key 精确匹配，定向投递消息。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;主题 Topic 模式&lt;/strong&gt;：通配符匹配路由，适合多类型业务消息过滤；还有 RPC 模式，实现基于消息队列的请求‑应答调用。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;秒杀系统底层主要基于&lt;strong&gt;工作队列模式&lt;/strong&gt;实现削峰；而抢购成功后的通知推送，会使用发布订阅模式。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;四、Golang 结合 RabbitMQ 实现秒杀的整体流程&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;用户提交抢购请求，接口做参数校验、用户资格校验；不直接操作数据库。&lt;/li&gt;
&lt;li&gt;将抢购消息（用户 ID、商品 ID）投递到 RabbitMQ 队列，接口直接返回提示 “正在排队，请稍后查看结果”。&lt;/li&gt;
&lt;li&gt;后端启动多个 Go 消费者协程，按照数据库可承受速率消费队列消息。&lt;/li&gt;
&lt;li&gt;消费者拿到消息，执行库存判断、事务扣减库存、生成订单。&lt;/li&gt;
&lt;li&gt;处理成功或失败，记录结果，用户轮询查询抢购结果。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这里有几个生产环境必须要处理的关键点：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;消息可靠性保障&lt;/strong&gt;：消息持久化、生产者确认、消费者手动 ack，防止服务重启消息丢失。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;消费端限流&lt;/strong&gt;：设置 Qos prefetch_count，防止瞬间推送海量消息压垮消费者服务RabbitMQ。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;消息过期处理&lt;/strong&gt;：超时未处理消息做丢弃或者死信队列处理。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;不能完全依赖队列&lt;/strong&gt;：队列只做流量缓冲，库存判断、扣减依然要在数据库层做校验，不能只信任队列消息。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;五、压测对比：传统方案 VS RabbitMQ 优化方案&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;传统 Gin+MySQL：几百并发，数据库压力就拉满，大量超时，出现超卖。&lt;/li&gt;
&lt;li&gt;RabbitMQ 缓冲架构：接口层可以承接大量用户请求；消费端控制处理速率，数据库压力平稳，不会出现雪崩，同时规避大部分超卖风险。&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;注意：RabbitMQ 不是银弹。百万级超大流量单纯依靠 RabbitMQ 也不够，还需要叠加 Redis 限流、负载均衡等多层防护。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;六、学习过程中容易踩的坑总结&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;忘记手动 Ack 确认消息，服务重启消息大量重放，或者消息堆积内存暴涨RabbitMQ。&lt;/li&gt;
&lt;li&gt;不开启消息持久化，RabbitMQ 重启之后消息全部丢失，抢购消息直接没了。&lt;/li&gt;
&lt;li&gt;消费者不做限流，队列瞬间推送成千上万条消息，Go 服务内存飙升。&lt;/li&gt;
&lt;li&gt;误以为消息队列可以完全解决超卖：队列只是削峰，库存扣减业务层依然要做校验。&lt;/li&gt;
&lt;li&gt;只写 Demo，没有模拟消息丢失、重复消费等异常场景，上线才暴雷。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;总结&lt;/h2&gt;
&lt;p&gt;秒杀、抢购、预约、订票这类短时间大量写请求的业务，&lt;strong&gt;核心思路就是 “不要让瞬时流量直接打到底层数据库”&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;Golang 结合 RabbitMQ，把突发流量做异步缓冲，是中小型项目性价比很高的方案。学习的时候，不要直接复制秒杀 Demo，先把五种消息模式、消息可靠性、ack、持久化这些基础啃透，再去写业务代码。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 07:59:57 GMT</pubDate></item><item><title>后端面试高频：RabbitMQ+Golang 高并发秒杀系统完整学习路线</title><link>https://bbs.itying.com/topic/6ac9f039710f830027a6896c</link><guid>https://bbs.itying.com/topic/6ac9f039710f830027a6896c</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;在 Go 后端面试中，消息队列、秒杀抢购系统，属于高频考察知识点。很多开发者可以背诵 RabbitMQ 概念，但是没有完整手写实现过一套抢购业务，面试被问到落地细节就答不上来。&lt;/p&gt;
&lt;p&gt;很多网上教程只讲概念，缺少从环境安装、五种模式编码，再到完整秒杀业务实战的完整链路。本文梳理一套从入门到实现秒杀业务的完整学习路径，帮大家真正理解消息队列，能够手写业务 Demo，应对开发与面试。&lt;/p&gt;
&lt;h2&gt;一、先搞懂：什么场景适合引入 RabbitMQ&lt;/h2&gt;
&lt;p&gt;不要为了炫技术随便引入消息队列，引入 MQ 会增加系统复杂度，适合下面几类业务：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;流量削峰&lt;/strong&gt;：秒杀、抢购、订票，瞬时大量写请求，缓冲流量，保护数据库。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;异步任务处理&lt;/strong&gt;：短信发送、图片处理、日志处理，不需要用户同步等待结果。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;系统解耦&lt;/strong&gt;：一个事件触发多个下游业务，比如订单完成，触发积分、通知、物流等多个业务。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;消息分发&lt;/strong&gt;：多模块之间事件通信。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;像简单 CRUD 后台，流量平稳，完全没必要上 RabbitMQ，过度设计反而增加维护成本。&lt;/p&gt;
&lt;h2&gt;二、学习前置基础&lt;/h2&gt;
&lt;p&gt;学习 Golang 操作 RabbitMQ，你需要具备基础储备：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Go 基础语法，了解 goroutine 协程。&lt;/li&gt;
&lt;li&gt;Gin Web 框架基础，会写简单接口。&lt;/li&gt;
&lt;li&gt;MySQL 基础，了解事务、锁、库存扣减业务逻辑。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;如果没有 Web 基础，直接上来写秒杀项目，很容易只懂调用 API，不理解业务上下文。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;三、分阶段学习路线&lt;/h2&gt;
&lt;h3&gt;阶段 1：RabbitMQ 环境与基础 5 大模式编码实战&lt;/h3&gt;
&lt;p&gt;第一步不要直接写秒杀！先把基础吃透。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;安装 RabbitMQ 服务，熟悉管理可视化后台，理解交换机、队列、绑定、routing-key 基础概念。&lt;/li&gt;
&lt;li&gt;逐个编码实现 5 种消息模式：&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;简单模式：生产者发送消息，消费者接收消息。&lt;/li&gt;
&lt;li&gt;工作队列模式：多消费者任务分发，重点练习手动 Ack、Qos 消费限流，理解消息不丢失机制。&lt;/li&gt;
&lt;li&gt;发布订阅模式 Fanout：广播消息。&lt;/li&gt;
&lt;li&gt;路由模式 Direct：精确路由。&lt;/li&gt;
&lt;li&gt;主题 Topic 模式 + RPC 模式。&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;这个阶段重点理解：消息持久化、生产者确认、消费者确认 ack、消息过期、死信队列这些可靠性相关知识点。很多生产故障根源，都是对这些概念理解不到位。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;阶段 2：复现问题：传统 Gin+MySQL 实现抢购，压测复现超卖问题&lt;/h3&gt;
&lt;p&gt;自己手写一套最简单的抢购接口，不使用 MQ。
然后使用压测工具模拟大量并发请求，复现真实业务问题：超卖、数据库锁冲突、接口超时。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;这一步非常关键！只有亲眼看到传统写法的问题，你才能够真正理解消息队列解决了什么问题，而不是死记硬背面试题。&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;阶段 3：改造项目，引入 RabbitMQ 完成秒杀抢购系统&lt;/h3&gt;
&lt;p&gt;把上面有问题的 Gin 抢购项目进行改造，引入 RabbitMQ。
业务实现要点：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;HTTP 接口层：接收抢购请求，做参数、用户资格校验，业务校验失败直接返回错误。&lt;/li&gt;
&lt;li&gt;合法请求组装消息，投递到 RabbitMQ 队列，前端直接返回排队提示。&lt;/li&gt;
&lt;li&gt;启动 Go 消费者，消费队列消息；消费者内部完成库存判断、事务扣减库存、生成订单。&lt;/li&gt;
&lt;li&gt;提供查询接口，用户轮询获取抢购最终结果。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;重点练习处理异常场景：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MQ 服务宕机重启，消息持久化之后不丢失。&lt;/li&gt;
&lt;li&gt;消费者处理中途崩溃，消息重新消费，思考如何处理消息重复消费。&lt;/li&gt;
&lt;li&gt;消息过期、无效消息如何处理。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;阶段 4：进阶优化：面向百万级并发的架构升级&lt;/h3&gt;
&lt;p&gt;基础 MQ 版本完成之后，思考系统进一步优化方案，这也是面试高频提问点：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;增加 Redis 做前置限流，过滤无效请求，减少进入 MQ 的消息数量。&lt;/li&gt;
&lt;li&gt;Redis 集群 + RabbitMQ 组合架构，分层防护。&lt;/li&gt;
&lt;li&gt;负载均衡，多实例部署消费者，提升消息处理能力。&lt;/li&gt;
&lt;li&gt;思考死信队列处理超时未支付订单。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;要明白：RabbitMQ 只是解决其中一环，高并发秒杀是一套组合方案，不是单一中间件包治百病。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;四、高频面试问题梳理（学习完可以自我检验）&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;直接用 Gin+MySQL 做秒杀会出现哪些问题？根本原因是什么？&lt;/li&gt;
&lt;li&gt;RabbitMQ 五种工作模式分别适用什么业务场景？&lt;/li&gt;
&lt;li&gt;如何保证 RabbitMQ 消息不丢失？生产者、队列、消费者分别要做什么配置？&lt;/li&gt;
&lt;li&gt;什么是消息重复消费？业务层如何处理幂等性？&lt;/li&gt;
&lt;li&gt;秒杀系统中 RabbitMQ 承担的角色是什么？能不能完全依靠 MQ 来防止超卖？&lt;/li&gt;
&lt;li&gt;工作队列模式中 prefetch_count 参数的作用是什么？&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;如果你学完之后，上面问题可以结合自己写过的 Demo 完整讲出来，就代表真正学懂了，而不是背面试八股。&lt;/p&gt;
&lt;h2&gt;五、学习避坑点&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;❌跳过基础模式，直接复制秒杀项目代码，只会调用库函数，底层原理一无所知。&lt;/li&gt;
&lt;li&gt;❌只跑正常流程，不去模拟服务宕机、网络断开、消息丢失等异常场景。&lt;/li&gt;
&lt;li&gt;❌误以为消息队列可以彻底杜绝超卖；数据库层依然必须做库存校验。&lt;/li&gt;
&lt;li&gt;❌忽略 ack 机制，测试环境一切正常，上线之后消息堆积、内存暴涨。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;结尾&lt;/h2&gt;
&lt;p&gt;高并发秒杀系统，考察的不是某一个 API 调用，而是&lt;strong&gt;流量思想、异步思维、异常容错思维&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;先复现旧方案的问题，再用 RabbitMQ 解决问题，再做架构升级，这样一套流程学完，不管是做实际业务开发，还是应对面试，都会非常扎实。&lt;/p&gt;
&lt;p&gt;欢迎大家在评论区交流自己学习消息队列遇到的问题。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 07:58:49 GMT</pubDate></item><item><title>Go-Zero 微服务到底怎么学？拆解一套 30 讲的实战课程目录</title><link>https://bbs.itying.com/topic/6ac9eeba25689d00260df107</link><guid>https://bbs.itying.com/topic/6ac9eeba25689d00260df107</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;Go-Zero 这个框架，我断断续续自学过一段时间。官方文档写得不错，但有个问题：它假设你已经知道微服务该怎么拆、RPC 该怎么设计。对后端程序员来说，真正的门槛不在语法，而在“一套完整的微服务项目，到底由哪些部分组成”。&lt;/p&gt;
&lt;p&gt;最近学习了大地老师的 Go-Zero 实战课（地址：&lt;a href=&quot;https://www.itying.com/goods-31915.html&quot;&gt;https://www.itying.com/goods-31915.html&lt;/a&gt; ），30 讲正课，每讲 20-40 分钟。我把它的目录按学习路径重新拆了一遍，发现它的结构挺有意思，值得拿出来说说。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一阶段：Go-Zero API 层（第 1-17 讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这部分占了一半以上篇幅，全在讲 API 服务。从环境搭建、goctl 创建项目、.api 文件语法，到集成 MySQL、GORM、JWT、Redis、中间件，基本上是一个 Web 后端该有的全套。&lt;/p&gt;
&lt;p&gt;几个我觉得选得准的点：&lt;/p&gt;
&lt;p&gt;第 10-11 讲专门讲 GORM 多表关联，一对一、一对多、多对多、子集筛选、自定义预加载 SQL。这些是实际业务里绕不开的，但很多教程一笔带过。&lt;/p&gt;
&lt;p&gt;第 15 讲把鉴权、熔断、限流、超时、负载监控五个中间件放在一起讲。Go-Zero 内置了这些治理能力，课程没有只告诉你“有”，而是让你看到它们分别挂在哪里。&lt;/p&gt;
&lt;p&gt;第 17 讲集成 Redis，这是缓存层的标配。&lt;/p&gt;
&lt;p&gt;学完这 17 讲，你手里有一个能跑的、带鉴权和缓存的单体 API 服务。这是进微服务的前提。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二阶段：RPC 与 Protobuf 基础（第 18-24 讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;从单体进微服务，第一道坎是 RPC。课程没有直接上 Go-Zero 的 RPC，而是先用原生方式实现了一遍：第 19 讲用 RPC 实现微服务，第 20 讲做一个 goods 服务，第 21 讲甚至演示了 PHP 跨语言调用 Go 的 RPC 服务。&lt;/p&gt;
&lt;p&gt;然后第 22-24 讲讲 Protobuf：安装、序列化/反序列化、message 嵌套、结合 gRPC 创建服务。这部分是微服务通信的底层，先把这里搞懂，后面用 Go-Zero 的 RPC 才不会糊里糊涂。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第三阶段：Go-Zero 微服务与 ETCD（第 25-30 讲）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;第 25 讲正式用 Go-Zero 实现微服务，第 26 讲做一个商品微服务。第 27 讲引入 ETCD 注册中心，讲 Go-Zero 怎么集成 ETCD 做负载均衡。第 28 讲做了一个生成二维码的微服务，然后用 Web API 去调用它——这是一个完整的“API 网关调微服务”的闭环。第 30 讲把 ETCD 集群和微服务集群架构放在一起讲，41 分钟，是整套课里最长的一讲。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;这套课的几个特点&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;一是它把“单体 → RPC → gRPC → Go-Zero 微服务”这条路径走完了，不是直接扔给你一个微服务项目让你照着抄。&lt;/p&gt;
&lt;p&gt;二是 goctl 的用法贯穿始终，但不止于“敲命令”。.api 文件怎么写、动态路由怎么配、API 怎么模块化，这些在生成代码之前就讲清楚了。&lt;/p&gt;
&lt;p&gt;三是配套资源齐全：视频 + 课件 + 源码 + 赞助群 + 技术支持。买课还送一套 Docker K8s 入门实战，以及一套 Golang 面试题 PDF。课程本身包含 52 讲 Golang 基础，如果 Go 语法不熟可以先补。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;一点提醒&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;这套课需要你有 Go 基础，官方说明里写得很清楚。另外教程和电脑绑定，不支持虚拟机，购买前注意一下。每套教程限一人学习，下单要填正确的 QQ 号。&lt;/p&gt;
&lt;p&gt;如果你正在找一条从 Go 后端到微服务的完整路径，这套目录的结构值得参考。哪怕不买付费课程，按这个顺序去查官方文档和开源项目，也能少走一些弯路。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 07:52:26 GMT</pubDate></item><item><title>后端写了5年CRUD，我为什么花158块买了这套Go-Zero微服务课</title><link>https://bbs.itying.com/topic/6ac9ee17710f830027a6896b</link><guid>https://bbs.itying.com/topic/6ac9ee17710f830027a6896b</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;先说结论：不是因为它便宜。158块钱，也就两天外卖，但我真正在意的是另一件事——我终于找到一个课，能让我在一个周末里，把“单体服务怎么拆成微服务”这件事从头到尾跑通一遍。&lt;/p&gt;
&lt;p&gt;我原来做 Java 后端，Spring Boot 那一套很熟。后来公司有几个新项目转 Go，我跟着写了半年业务代码，语法是熟了，但一直停留在“用 Gin 写接口”的水平。微服务、服务注册、熔断限流这些词天天听，真让我自己搭一套，心里没底。&lt;/p&gt;
&lt;p&gt;Go-Zero 我之前听说过，知道它是 Go 圈里比较火的微服务框架，但官方文档看了一圈，goctl 生成完代码之后该干嘛，还是有点懵。后来在 B 站刷到大地老师的 Golang 入门课，顺着找到了这套 2025 年 11 月新出的 Go-Zero 实战。&lt;/p&gt;
&lt;p&gt;让我决定下单的，是课程目录里的两个细节。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一，它没有跳过“单体到微服务”这个坎。&lt;/strong&gt; 前 17 讲都在讲 API 层：集成 MySQL、GORM 多表关联、JWT 鉴权、中间件、Redis。这些是一个正常后端服务该有的东西。从第 18 讲才开始进入微服务，先讲 RPC 和 Protobuf，再讲 gRPC，最后才落到 Go-Zero 的微服务实现。这个顺序是对的——不先把单体写明白，直接上微服务就是空中楼阁。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二，它讲了一个“商品微服务”的完整案例。&lt;/strong&gt; 第 20 讲用 RPC 实现 goods 服务，第 26 讲用 Go-Zero 再实现一遍，第 28 讲又做了个生成二维码的微服务，然后用 Web API 去调用它。这中间还穿插了 ETCD 注册中心、负载均衡、ETCD 集群。基本上，一个微服务项目该有的环节，它都串了一遍。&lt;/p&gt;
&lt;p&gt;我目前看到第 28 讲左右，说几个真实感受。&lt;/p&gt;
&lt;p&gt;goctl 这个工具确实省事。.api 文件写接口定义，一条命令生成 handler、logic、model，连路由都配好了。但课程没有只教你“敲命令”，它把动态路由、参数分组、API 模块化这些都拆开讲了，你知道生成出来的代码为什么长那样。&lt;/p&gt;
&lt;p&gt;GORM 那几讲超出我预期。多对多关联、子集筛选、自定义预加载 SQL，这些是我之前写业务时真正卡过的地方，它用轮播图和文章数据做例子，跟着敲一遍就通了。&lt;/p&gt;
&lt;p&gt;中间件那一讲（第 15 讲）把鉴权、熔断、限流、超时、负载监控放在一起讲，26 分钟。说实话信息密度不低，但每个中间件都有对应的代码位置，不是纯念 PPT。&lt;/p&gt;
&lt;p&gt;另外说一句，买这套课送一套 Docker K8s 入门实战，价值 158。等于说 Go-Zero 和 K8s 两块都覆盖了。课程本身还包含 52 讲 Golang 基础，如果你 Go 语法还不熟，可以先把基础过一遍再进微服务。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;适合谁：&lt;/strong&gt; 有 Go 基础、写过 Gin 或类似框架、想系统搞明白微服务怎么落地的人。不适合完全没碰过 Go 的人，也不适合已经在大厂天天写 Go-Zero 的人。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;不适合谁：&lt;/strong&gt; 指望着看完就能拿 30K offer 的，建议先冷静。这套课教的是“怎么把东西搭起来”，能不能拿高薪，还得看你自己动手写了多少。&lt;/p&gt;
&lt;p&gt;如果你也在从单体往微服务过渡，可以先去 B 站看大地老师的免费 Golang 入门课（b站地址：&lt;a href=&quot;https://www.bilibili.com/video/BV1Rm421N7Jy&quot;&gt;https://www.bilibili.com/video/BV1Rm421N7Jy&lt;/a&gt; ），感受一下讲课风格，再决定要不要进这套 Go-Zero。至少对我来说，这 158 块花得比买那些吃灰的极客时间专栏值。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 10 Oct 2026 07:49:43 GMT</pubDate></item><item><title>Flutter跨平台开发全栈——商业项目迁移与能力提升指南</title><link>https://bbs.itying.com/topic/6ac8515425689d00260df106</link><guid>https://bbs.itying.com/topic/6ac8515425689d00260df106</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;现在很多公司已经在用 Flutter 做商业产品，同时需要兼容 HarmonyOS Next 纯血鸿蒙设备。很多开发者会有疑问：已经上线的 Flutter 商业项目，迁移到鸿蒙 Next 完整流程是什么？什么情况必须上混合开发？如何提升自己的 Flutter 全栈竞争力，能同时搞定移动端、桌面端、鸿蒙端？&lt;/p&gt;
&lt;p&gt;本文从&lt;strong&gt;存量项目迁移视角&lt;/strong&gt;，结合仿小米商城商业案例，讲项目评估、迁移步骤、混合开发落地，同时整理一套可以落地的能力提升路线，帮助开发者具备处理真实商业项目多端适配的能力。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;提示：本文侧重工程实战，不做基础语法科普，适合已经掌握 Flutter 基础（注：没有基础的朋友文章最下方有提供基础课程免费学习地址）。想进阶做商业项目、多端适配的同学阅读。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;一、存量 Flutter 商业项目迁移鸿蒙 Next 前期评估&lt;/h2&gt;
&lt;p&gt;拿到一个已有的 Flutter 项目，不要直接编译鸿蒙，第一步做项目评估，评估维度如下：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;区分纯 Dart 代码与原生插件依赖&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;纯 Dart 实现组件、业务逻辑、状态管理（GetX）：迁移成本极低，几乎可以直接复用。&lt;/li&gt;
&lt;li&gt;带有 Android/iOS 原生实现的第三方插件：这是迁移最大难点，例如唤起浏览器、地图、定位、支付、推送。
&lt;ul&gt;
&lt;li&gt;如果社区已经存在鸿蒙适配版本，直接替换依赖；&lt;/li&gt;
&lt;li&gt;如果没有适配版本，二选一：①自己基于 Channel 封装 ArkTS 原生实现；②业务降级，暂时移除该功能。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;硬件调试条件评估&lt;/strong&gt;
Flutter‑HarmonyOS 调试&lt;strong&gt;不支持 X86 模拟器&lt;/strong&gt;，必须准备 ARM 架构模拟器或者真实 HarmonyOS Next 手机设备。没有真机环境，很难完成完整适配测试，很多 UI、兼容性问题模拟器复现不出来。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;业务模块划分，区分通用业务和平台特有业务&lt;/strong&gt;
以电商商城项目举例：
✅通用跨平台业务（单体 Flutter）：商品列表、确认订单、收货地址增删改查、支付选择弹窗。
平台特有业务（需要混合开发）：获取设备实时位置、硬件能力调用、系统分享等。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;迁移策略：&lt;strong&gt;渐进式适配，优先跑通纯 Dart 页面，再逐个解决插件与原生能力问题，不要追求一次性全部功能适配完成。&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;二、两种迁移方案对比：单体改造 VS 引入混合开发&lt;/h2&gt;
&lt;h3&gt;方案 A：单体 Flutter 改造（优先尝试）&lt;/h3&gt;
&lt;p&gt;适用：项目大部分业务都是 UI 交互，原生插件依赖少。
执行步骤：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;切换到鸿蒙适配版本 Flutter SDK；&lt;/li&gt;
&lt;li&gt;把项目导入，优先编译，记录编译报错；&lt;/li&gt;
&lt;li&gt;修复平台判断、权限配置等编译问题；&lt;/li&gt;
&lt;li&gt;替换或者改造不兼容的第三方插件；&lt;/li&gt;
&lt;li&gt;ARM 真机跑通，做 UI、业务流程测试；&lt;/li&gt;
&lt;li&gt;打包 hap 安装包。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;优点：项目架构改动最小，维护成本低；缺点：遇到缺少鸿蒙适配的原生插件时，会卡住。&lt;/p&gt;
&lt;h3&gt;方案 B：引入混合开发模式（备选方案）&lt;/h3&gt;
&lt;p&gt;当单体模式遇到大量无法解决原生依赖，就采用 Flutter+ArkTS 混合开发模式。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;核心架构思想：&lt;strong&gt;通用业务全部保留 Flutter 实现；平台专属能力下沉到鸿蒙 ArkTS 原生层，通过 Channel 桥接给 Dart 调用，Flutter 层只做调用接口，不关心底层原生实现。&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;三个核心通道使用场景再梳理：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;MethodChannel&lt;/strong&gt;：请求‑应答模式，Dart 调用原生，同步 / 异步拿到返回结果。比如调用原生打开浏览器 url_launcher 能力。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;EventChannel&lt;/strong&gt;：事件流，原生持续推送数据到 Flutter。典型实战：持续获取 GPS 实时位置。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PlatformView&lt;/strong&gt;：把原生 ArkTS 视图嵌入 Flutter 页面。适合需要直接使用原生控件场景，代价是要处理手势冲突、性能损耗，不要滥用。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;⚠️混合开发避坑：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;做好通道生命周期管理，页面销毁的时候销毁 Channel，避免内存泄漏；&lt;/li&gt;
&lt;li&gt;Dart 和原生之间传递数据做好参数校验，防止异常参数导致程序崩溃；&lt;/li&gt;
&lt;li&gt;尽量减少 PlatformView 使用，能用 Channel 接口调用就不要嵌入原生视图。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;三、完整实战案例：仿小米商城项目迁移鸿蒙 Next 流程&lt;/h2&gt;
&lt;p&gt;参考真实项目实践流程：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;基础项目：Flutter+GetX 仿小米商城，已经完成 Android/iOS 端，具备商品、订单、地址管理、支付选择完整业务。&lt;/li&gt;
&lt;li&gt;第一步：Windows/Mac 分别搭建 Flutter‑HarmonyOS 开发环境，真机调试环境就绪。&lt;/li&gt;
&lt;li&gt;第二步：纯 Dart 业务适配，商城页面直接编译运行；收货地址新增修改、确认订单页面 UI 和业务正常跑通。&lt;/li&gt;
&lt;li&gt;第三步：处理第三方插件兼容。例如 url_launcher 没有鸿蒙适配，使用 MethodChannel 调用 ArkTS 原生能力封装跳转接口。&lt;/li&gt;
&lt;li&gt;第四步：混合开发案例：实现实时获取位置，使用 EventChannel 完成原生位置数据向 Flutter 持续回调。&lt;/li&gt;
&lt;li&gt;第五步：高级混合开发：使用 PlatformView 嵌入鸿蒙原生视图，完成混合渲染。&lt;/li&gt;
&lt;li&gt;第六步：打包 hap，全流程业务测试，修复 UI 适配、权限问题。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;整个流程覆盖：环境搭建、单体适配、插件兼容改造、三种 Channel 通信、PlatformView 原生视图嵌入，就是商业项目迁移的完整链路。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;四、拓展能力：不止移动端，Flutter 桌面端开发&lt;/h2&gt;
&lt;p&gt;很多同学只把 Flutter 当成移动端框架，实际上 Flutter 同样可以开发 Windows 桌面应用。例如仿阿里网盘桌面端项目，同一套思想：组件、状态管理、Dart 语法可以复用，只是适配桌面端窗口、鼠标事件、文件系统差异。&lt;/p&gt;
&lt;p&gt;掌握移动端 + 鸿蒙 + 桌面端，才算完整 Flutter 全栈能力。&lt;/p&gt;
&lt;h2&gt;五、能力提升路线，面向商业项目求职&lt;/h2&gt;
&lt;p&gt;如果你希望具备独立承接 Flutter 多端商业项目的能力，可以按下面路线补齐：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;夯实基础层&lt;/strong&gt;：Dart、Flutter 组件、布局；精通至少一套状态管理，优先 GetX（国内大量商业项目在用）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;单体项目实战层&lt;/strong&gt;：独立完成完整业务 App，电商、工具类都可以，跑通 Android、iOS。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;多端适配层&lt;/strong&gt;：学习 Windows 桌面端开发；学习 Flutter‑HarmonyOS 环境搭建，跑通单体项目迁移。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;混合开发进阶层&lt;/strong&gt;：吃透 MethodChannel、BasicMessageChannel、EventChannel、PlatformView，能独立封装平台原生能力。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;工程化层&lt;/strong&gt;：多端打包脚本、版本管理、异常捕获、性能优化，处理项目编译、打包各类报错。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;六、高频问题汇总（来自实战）&lt;/h2&gt;
&lt;h3&gt;Q1：X86 模拟器为什么跑不了 Flutter 鸿蒙项目？&lt;/h3&gt;
&lt;p&gt;A：Flutter for OpenHarmony 的调试编译目标是 ARM 指令集，X86 模拟器架构不支持，官方明确需要 ARM 模拟器或者真机，很多新人踩坑。&lt;/p&gt;
&lt;h3&gt;Q2：是不是所有 Flutter 项目都可以一键编译鸿蒙？&lt;/h3&gt;
&lt;p&gt;A：&lt;strong&gt;不是。纯 Dart 代码可以直接编译；依赖原生实现的插件，必须做适配改造，商业项目迁移需要评估插件成本，不能幻想一键迁移。&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;Q3：混合开发什么时候用？是不是项目都要上混合？&lt;/h3&gt;
&lt;p&gt;A：优先单体模式；只有当必须调用平台独有的硬件、系统能力，且没有适配插件的时候，再引入混合开发。混合开发会提升项目复杂度，增加维护成本，尽量少用。&lt;/p&gt;
&lt;h3&gt;Q4：学习 Flutter 鸿蒙，必须先有鸿蒙 ArkTS 基础吗？&lt;/h3&gt;
&lt;p&gt;A：做单体适配，了解基础概念即可；如果要做混合开发，封装 ArkTS 原生能力，必须掌握 ArkTS 基础语法。&lt;/p&gt;
&lt;h2&gt;七、学习资源建议&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;免费入门：B 站 Flutter 入门系列，打好 Dart 与 Flutter 基础，学习地址：&lt;a href=&quot;https://www.bilibili.com/video/BV1S4411E7LY&quot;&gt;https://www.bilibili.com/video/BV1S4411E7LY&lt;/a&gt;
2.Flutter+GetX 仿商城项目，先完成 Android/iOS 端完整业务开发，再做Flutter 鸿蒙 Next 多端适配实战；仿网盘桌面项目拓展桌面端开发视野。实战地址：&lt;a href=&quot;https://www.itying.com/goods-1183.html&quot;&gt;https://www.itying.com/goods-1183.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;官方：Flutter 中文文档、OpenHarmony‑SIG 社区 flutter‑flutter 仓库。&lt;/li&gt;
&lt;li&gt;动手优先：不要只看视频，一定要动手在真机调试环境复现编译、打包、通信的全部流程，很多坑只有动手才会遇到。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;写在最后
Flutter 全栈开发者，不是只会写 UI 组件，更重要的是&lt;strong&gt;评估项目架构、选择单体 / 混合方案、处理多端兼容性问题、解决编译打包各类工程问题&lt;/strong&gt;。鸿蒙 Next 生态持续发展，具备 Flutter + 鸿蒙适配、混合开发能力，在求职与接商业项目中是非常大加分项。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Fri, 09 Oct 2026 02:28:36 GMT</pubDate></item><item><title>Golang + Gin + Gorm 仿小米商城实战：从零到云原生部署的完整学习路径</title><link>https://bbs.itying.com/topic/6ac84fa725689d00260df105</link><guid>https://bbs.itying.com/topic/6ac84fa725689d00260df105</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;h2&gt;为什么 Go 开发者需要一个“完整项目”来练手&lt;/h2&gt;
&lt;p&gt;学 Go 的人很多，但真正能拿出一个“能讲清楚”的企业级项目的人不多。&lt;/p&gt;
&lt;p&gt;原因很简单：语法可以看文档，但工程能力只能在完整项目中练出来。你会写 goroutine，不代表你会用多协程处理商品图片；你会用 GORM，不代表你会设计一套支持多级分类、多属性筛选的电商数据模型。&lt;/p&gt;
&lt;p&gt;IT营大地老师的Go仿小米商城项目（地址：&lt;a href=&quot;https://www.itying.com/goods-1157.html%EF%BC%89&quot;&gt;https://www.itying.com/goods-1157.html）&lt;/a&gt; 之所以值得拿来练手，是因为它覆盖了&lt;strong&gt;一个真实电商系统从后台管理到前台展示、从支付对接到部署上线的全部链路&lt;/strong&gt;。不是 Demo，是能跑起来、有完整业务闭环的项目。&lt;/p&gt;
&lt;h2&gt;这个项目到底包含了什么？&lt;/h2&gt;
&lt;p&gt;** 后台管理系统：RBAC 权限是核心**
后台部分最值得研究的是 &lt;strong&gt;RBAC 权限管理&lt;/strong&gt;。不同角色的管理员登录后，看到的左侧菜单是不一样的——这背后涉及角色表、权限表、用户表的三方关联，以及权限表的自关联（实现树形菜单结构）。&lt;/p&gt;
&lt;p&gt;具体实现包括：&lt;/p&gt;
&lt;p&gt;1.角色的增删改查&lt;/p&gt;
&lt;p&gt;2.管理员与角色的关联&lt;/p&gt;
&lt;p&gt;3.权限列表的层级展示与自关联查询&lt;/p&gt;
&lt;p&gt;4.角色授权：勾选权限、回显已授权权限&lt;/p&gt;
&lt;p&gt;5.中间件中根据 URL 判断当前用户是否有权访问&lt;/p&gt;
&lt;p&gt;这套权限系统的价值在于，它是大多数后台管理系统的通用底座。你把它吃透，换一个业务场景也能直接复用。&lt;/p&gt;
&lt;p&gt;** 商品模块：电商系统最复杂的部分**
商品模块是这个项目里&lt;strong&gt;技术密度最高&lt;/strong&gt;的部分。&lt;/p&gt;
&lt;p&gt;商品分类支持多级关联。商品本身关联了类型、属性、图库、颜色，还有商品之间的关联（比如配件推荐）。增加商品时，需要同时往多张表写入数据——课程里用了&lt;strong&gt;多个协程并行执行增加操作&lt;/strong&gt;，这是 Go 并发能力在真实业务中的直接应用。&lt;/p&gt;
&lt;p&gt;商品详情页涉及：&lt;/p&gt;
&lt;p&gt;1.根据颜色切换商品图片&lt;/p&gt;
&lt;p&gt;2.规格参数用 Markdown 语法存储，用 gomarkdown 模块解析渲染&lt;/p&gt;
&lt;p&gt;3.商品属性筛选&lt;/p&gt;
&lt;p&gt;4.动态生成商品属性表单（增加商品时，选择商品类型后自动生成对应的属性输入项）&lt;/p&gt;
&lt;p&gt;另外还有&lt;strong&gt;富文本编辑器 wysiwyg-editor 的集成、批量上传图片、图片裁剪并上传到 OSS 云存储、动态生成缩略图&lt;/strong&gt;。这些不是花哨的功能，是电商后台的日常。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;前台商城：从首页到支付的完整闭环&lt;/strong&gt;
前台部分覆盖了用户能看到的全部页面：&lt;/p&gt;
&lt;p&gt;**首页：**顶部导航、轮播图、左侧分类、中间导航、楼层数据渲染。公共数据（导航、分类）抽离到 base.go，避免每个页面重复查询。首页数据用 Redis 缓存，课程里直接对比了缓存前后的执行时间差异。&lt;/p&gt;
&lt;p&gt;**商品列表与详情：**自定义列表模板、分页、搜索、详情页的版本选择、颜色切换、规格参数、关联赠品、关联图片。&lt;/p&gt;
&lt;p&gt;**购物车：**Cookie 存储购物车数据，Ajax 异步增减数量，Checkbox 改变选中状态。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;注册登录&lt;/strong&gt;：发送短信验证码、防止短信轰炸（验证 IP 和手机号的发送次数）、倒计时重发、验证码校验、密码加密存储。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;订单与支付：&lt;strong&gt;收货地址管理、提交订单（防止重复提交）、生成支付二维码、对接&lt;/strong&gt;支付宝 PC 端支付&lt;/strong&gt;和&lt;strong&gt;微信 Native 支付&lt;/strong&gt;、异步更新订单状态。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;前后端分离：RESTful API + JWT&lt;/strong&gt;
项目后期把后台功能封装成** RESTful API**，供 Vue / Angular / React 等单页面应用调用。同时引入 &lt;strong&gt;JWT&lt;/strong&gt; 做接口安全验证，配置 CORS 允许跨域。&lt;/p&gt;
&lt;p&gt;这部分的意义在于：&lt;strong&gt;它把项目从“传统模板渲染”升级到了“前后端分离架构”&lt;/strong&gt;，这是当前企业开发的主流形态。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;技术深度：不止是 CRUD&lt;/strong&gt;
项目里几个容易被忽略但很有价值的技术点：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Elasticsearch 全文搜索&lt;/strong&gt;：商品搜索用 ES 实现，涉及索引创建、映射配置、中文分词、数据增删改查、分页查询。这是海量数据搜索的标准方案。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Redis 的深度使用：&lt;strong&gt;不只做缓存，还用于&lt;/strong&gt;分布式 Session 存储、发布订阅实现分布式采集数据的消息通讯&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;**&lt;a href=&quot;http://go-socket.io&quot;&gt;go-socket.io&lt;/a&gt;：**实现智能机器人自动问答、群聊、无人点餐系统的无刷新更新。&lt;/p&gt;
&lt;p&gt;**安全相关：**MD5 加密、DES 加密解密、RSA 加密、Cookie 加密、SSL 证书 HTTPS 配置。&lt;/p&gt;
&lt;h2&gt;部署：从 Linux 到 K8s&lt;/h2&gt;
&lt;p&gt;项目不只教你怎么写，还教你怎么部署。&lt;/p&gt;
&lt;p&gt;**基础部署：**Linux 和 Windows 下部署 Go 项目，Nginx 负载均衡。&lt;/p&gt;
&lt;p&gt;**容器化：**Docker 打包，Docker Swarm 集群编排。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;云原生&lt;/strong&gt;：Kubernetes（K8s）分布式部署。&lt;/p&gt;
&lt;p&gt;这部分内容对应的是从“能跑”到“能上线”的关键跨越。很多开发者写完项目不知道怎么部署，这套内容补上了这块短板。&lt;/p&gt;
&lt;h2&gt;课程结构：从零基础到项目实战&lt;/h2&gt;
&lt;p&gt;这套教程的编排逻辑是层层递进的：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一阶段：Go 语言基础（52 讲）&lt;/strong&gt;
从环境搭建、变量常量、数据类型、流程控制、数组切片 map、函数、指针、结构体、接口、goroutine channel、反射、文件操作，到泛型。覆盖了 Go 语言的全部核心语法。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二阶段：Gin 框架 + 数据库&lt;/strong&gt;
Gin 路由、中间件、模板渲染、文件上传、Cookie Session、MySQL 增删改查、索引优化、事务与锁、GORM 配置与关联查询。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第三阶段：仿小米商城项目实战&lt;/strong&gt;
从 MVC 架构搭建开始，逐步实现后台管理、RBAC 权限、商品模块、前台渲染、购物车、订单、支付、RESTful API、JWT、Elasticsearch、&lt;a href=&quot;http://Socket.io&quot;&gt;Socket.io&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第四阶段：微服务与部署&lt;/strong&gt;
gRPC、Go-Micro、Consul、Docker、Docker Swarm、K8s。&lt;/p&gt;
&lt;p&gt;整套教程 114 讲，每讲 20-30 分钟，配套源码、课件和技术支持。购买还赠送价值 219 元的 Golang 微服务入门实战教程和价值 158 元的 Docker K8s 入门实战教程。&lt;/p&gt;
&lt;h2&gt;适合谁学&lt;/h2&gt;
&lt;p&gt;如果你符合以下任一情况，这套内容值得投入时间：&lt;/p&gt;
&lt;p&gt;已经掌握 Go 基础语法，但&lt;strong&gt;没有完整项目经验&lt;/strong&gt;，面试时讲不出东西&lt;/p&gt;
&lt;p&gt;想从 PHP / Java / Node.js 转到 Go 做后端开发，&lt;strong&gt;需要一个企业级项目作为跳板&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;正在做电商类项目，需要参考&lt;strong&gt;商品模块、RBAC 权限、支付对接&lt;/strong&gt;的实现方案&lt;/p&gt;
&lt;p&gt;想系统学习&lt;strong&gt;Go 项目的部署链路&lt;/strong&gt;，从 Linux 到 Docker 到 K8s&lt;/p&gt;
&lt;p&gt;仿小米商城项目的价值不在于“仿”，而在于它把&lt;strong&gt;一个真实电商系统会遇到的技术问题都暴露出来了&lt;/strong&gt;：多表关联、并发写入、权限控制、支付对接、搜索优化、缓存策略、分布式部署。这些问题，只有在完整项目中才会遇到，也只有在解决它们的过程中，才能真正提升工程能力。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Fri, 09 Oct 2026 02:21:27 GMT</pubDate></item><item><title>携手共进，合作共赢｜鸿芯智谷与一览网络正式达成战略合作</title><link>https://bbs.itying.com/topic/6a9288900a64c600432b0714</link><guid>https://bbs.itying.com/topic/6a9288900a64c600432b0714</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;2026年8月29日，深圳——AI产教融合领域迎来重要节点。当日上午，深圳市鸿芯智谷科技有限公司（以下简称“鸿芯智谷”）与深圳市一览网络股份有限公司（新三板上市公司，以下简称“一览网络”）在深圳正式签署战略合作协议。双方核心团队共同出席并见证，标志着AI硬科技人才培养与就业服务的深度协同全面启动。&lt;/p&gt;
&lt;p&gt;鸿芯智谷总经理赖伟宏携李总、肖总、王总、吴总等核心管理层出席仪式；一览网络总经理薛泉源率一览英才一众高管到场。双方代表现场完成签约。&lt;/p&gt;
&lt;p&gt;本次合作聚焦AI大模型、Vibe Coding、AIGC创作、FDE开发、AI嵌入式开发、AI机器视觉开发等硬核技术方向，围绕实战课程体系与产业用人需求深度融合，共同探索“实战育人+精准就业”的全新产业生态，为AI时代的产才融合提供可落地的范本。&lt;/p&gt;
&lt;p&gt;此次战略联手，是AI硬科技培育力量与专业化就业服务平台的一次深度耦合。双方旨在打通人才培养与高质量就业之间的断点，推动产业资源与人才资源高效对接，构建从技能培训到岗位交付的闭环链路。&lt;/p&gt;
&lt;p&gt;作为AI产教融合领域的深耕者，鸿芯智谷长期聚焦嵌入式AI、AI大模型、AIGC应用、机器人视觉四大核心赛道，自主研发系列实战课程，涵盖AI大模型、Vibe Coding、AIGC创作、FDE开发、AI嵌入式开发等方向，拥有完整的教学体系与项目实训能力。企业秉持“把车间搬进课堂”的育人理念，致力于培养兼具硬件认知、算法能力和项目落地经验的复合型AI技术人才，持续为数字科技产业输送实战型力量。
&lt;img src=&quot;/public/upload/455d3530-a37a-11f1-b930-dd78e93b9eaa.png&quot; alt=&quot;05.png&quot;&gt;
一方具备系统化、实战化的硬科技人才培育能力，一方拥有丰富的产业端企业资源与成熟的就业输出通道。双方此次合作，实现了人才供给侧与产业需求侧的精准匹配，也为AI领域产教融合探索出更具实效的路径。&lt;/p&gt;
&lt;p&gt;以此签约为起点，鸿芯智谷与一览网络将共建“课程实训—人才培育—精准就业”一体化机制，推动产教融合真正落地见效，使学习者从课堂走向职场，使企业从人才池中获得适配力量。此举既为AI硬科技产业发展注入新鲜血液，也为广大从业者和学子铺就清晰、可持续的职业发展之路。&lt;/p&gt;
&lt;p&gt;面向未来，双方将持续迭代课程体系、优化服务模式、完善就业链路，共建专业化、实战化、产业化的AI人才生态，为国内AI产业高质量发展筑牢人才根基。&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Sat, 29 Aug 2026 07:21:52 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中关于window.getLastWindow工具提示问题</title><link>https://bbs.itying.com/topic/6a83f5d5b9a4090042a3862d</link><guid>https://bbs.itying.com/topic/6a83f5d5b9a4090042a3862d</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中关于window.getLastWindow工具提示问题
为什么在工具里&lt;/p&gt;
&lt;pre class=&quot;prettyprint language-javascript&quot;&gt;&lt;code&gt;const win = await window.getLastWindow(this.getUIContext().getHostContext())  这个方法显示的是调用的 
&lt;/code&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint language-javascript&quot;&gt;&lt;code&gt;function getLastWindow(ctx: BaseContext, callback: AsyncCallback&amp;lt;Window&amp;gt;): void;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;而不是&lt;/p&gt;
&lt;pre class=&quot;prettyprint language-javascript&quot;&gt;&lt;code&gt;function getLastWindow(ctx: BaseContext): Promise&amp;lt;Window&amp;gt;;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;导致获取的win 变成了void &amp;amp; Promise&amp;lt;window&amp;gt; 很怪，我明明调用的是下面个方法怎么变成了上面个了&lt;/p&gt;
&lt;p&gt;然后我const win =await window.getLastWindow(this.getUIContext().getHostContext()).then() 这样就正常了&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Tue, 18 Aug 2026 06:04:05 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中如何获取到用户的应用列表？</title><link>https://bbs.itying.com/topic/6a83f0e70a64c600432b06f8</link><guid>https://bbs.itying.com/topic/6a83f0e70a64c600432b06f8</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中如何获取到用户的应用列表？
在API24该如何获取到用户的应用列表？&lt;/p&gt;
&lt;/div&gt;</description><author>songsunli</author><pubDate>Tue, 18 Aug 2026 05:43:03 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中LazyForEach列表刷新后数据错乱？IDataSource的key管理和DataChangeListener踩坑</title><link>https://bbs.itying.com/topic/6a83ebc7b9a4090042a3861a</link><guid>https://bbs.itying.com/topic/6a83ebc7b9a4090042a3861a</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中LazyForEach列表刷新后数据错乱？IDataSource的key管理和DataChangeListener踩坑
做了一个商品列表页，用 LazyForEach + IDataSource 实现分页加载，遇到这些情况：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;上拉加载第二页数据后，列表里出现了第一页某些 item 的重复显示，实际数据没重复&lt;/li&gt;
&lt;li&gt;删除列表中间某一项商品，结果紧接着下面那项也消失了，滑动一下才恢复正常&lt;/li&gt;
&lt;li&gt;下拉刷新整个列表（清空后重新填充），列表短暂白屏闪一下再出来，有时候还能看到旧数据残影&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description><author>h691938207</author><pubDate>Tue, 18 Aug 2026 05:21:11 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next Worker 线程反复创建几轮就崩了？Worker 生命周期管理与内存回收实战</title><link>https://bbs.itying.com/topic/6a83e60f0a64c600432b06df</link><guid>https://bbs.itying.com/topic/6a83e60f0a64c600432b06df</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next Worker 线程反复创建几轮就崩了？Worker 生命周期管理与内存回收实战
有个需求是用户每选一张图片就开一个 Worker 做缩放+压缩，用完 terminate 掉。测试的时候发现：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;连续处理 15-20 张图之后，DevEco Profiler 里 native heap 持续往上涨，Worker terminate 了但内存不降&lt;/li&gt;
&lt;li&gt;有时候处理到第 10 张左右直接闪退，hilog 里看到 OOM相关日志&lt;/li&gt;
&lt;li&gt;试过 Worker 复用，但发现 Worker 里用过的变量第二次进 onmessage 时还残留着上次的值，导致结果不对&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description><author>eggper</author><pubDate>Tue, 18 Aug 2026 04:56:47 GMT</pubDate></item><item><title>DevEco Code 安装报错</title><link>https://bbs.itying.com/topic/6a83e133b9a4090042a38613</link><guid>https://bbs.itying.com/topic/6a83e133b9a4090042a38613</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;DevEco Code 安装报错
具体信息如下：&lt;/p&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&lt;code&gt;PS D:&amp;#x5C;HM_projiect&amp;#x5C;EmployeeDailyManager&amp;gt; npm install -g @deveco&amp;#x2F;deveco-code
npm error code EPERM
npm error syscall mkdir
npm error path D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;@deveco
npm error errno -4048
npm error Error: EPERM: operation not permitted, mkdir &amp;#x27;D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;@deveco&amp;#x27;
npm error     at async mkdir (node:internal&amp;#x2F;fs&amp;#x2F;promises:859:10)
npm error     at async D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;node_modules&amp;#x5C;@npmcli&amp;#x5C;arborist&amp;#x5C;lib&amp;#x5C;arborist&amp;#x5C;reify.js:572:20
npm error     at async Promise.allSettled (index 0)
npm error     at async #reifyPackages (D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;node_modules&amp;#x5C;@npmcli&amp;#x5C;arborist&amp;#x5C;lib&amp;#x5C;arborist&amp;#x5C;reify.js:309:11)
npm error     at async Arborist.reify (D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;node_modules&amp;#x5C;@npmcli&amp;#x5C;arborist&amp;#x5C;lib&amp;#x5C;arborist&amp;#x5C;reify.js:121:5)
npm error     at async Install.exec (D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;lib&amp;#x5C;commands&amp;#x5C;install.js:152:5)
npm error     at async Npm.exec (D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;lib&amp;#x5C;npm.js:209:9)
npm error     at async module.exports (D:&amp;#x5C;Program Files&amp;#x5C;Huawei&amp;#x5C;DevEco Studio&amp;#x5C;tools&amp;#x5C;node&amp;#x5C;node_modules&amp;#x5C;npm&amp;#x5C;lib&amp;#x5C;cli&amp;#x5C;entry.js:67:5) {
npm error   errno: -4048,
npm error   code: &amp;#x27;EPERM&amp;#x27;,
npm error   syscall: &amp;#x27;mkdir&amp;#x27;,
npm error   path: &amp;#x27;D:&amp;#x5C;&amp;#x5C;Program Files&amp;#x5C;&amp;#x5C;Huawei&amp;#x5C;&amp;#x5C;DevEco Studio&amp;#x5C;&amp;#x5C;tools&amp;#x5C;&amp;#x5C;node&amp;#x5C;&amp;#x5C;node_modules&amp;#x5C;&amp;#x5C;@deveco&amp;#x27;
npm error }
npm error
npm error The operation was rejected by your operating system.
npm error It&amp;#x27;s possible that the file was already in use (by a text editor or antivirus),
npm error or that you lack permissions to access it.
npm error
npm error If you believe this might be a permissions issue, please double-check the
npm error permissions of the file and its containing directories, or try running
npm error the command again as root&amp;#x2F;Administrator.
npm error A complete log of this run can be found in: C:&amp;#x5C;Users&amp;#x5C;Ben.Yu01&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;npm-cache&amp;#x5C;_logs&amp;#x5C;2026-06-15T00_09_57_665Z-debug-0.log
PS D:&amp;#x5C;HM_projiect&amp;#x5C;EmployeeDailyManager&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description><author>yuanlaile</author><pubDate>Tue, 18 Aug 2026 04:36:03 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next多包结构下的包大小治理——HAP 和 HSP 越来越胖怎么减</title><link>https://bbs.itying.com/topic/6a83dc48b9a4090042a3860d</link><guid>https://bbs.itying.com/topic/6a83dc48b9a4090042a3860d</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next多包结构下的包大小治理——HAP 和 HSP 越来越胖怎么减
鸿蒙的应用发布单位是 App Pack（.app），里面包含一个或多个 HAP（Harmony Ability Package）和若干个 HSP（Harmony Shared Package）。跟 Android 的 APK + Dynamic Feature Module 类似，但有自己的特点。&lt;/p&gt;
&lt;/div&gt;</description><author>phonegap100</author><pubDate>Tue, 18 Aug 2026 04:15:04 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中AppGallery审核被拒那些事—常见原因、隐私合规和应对经验</title><link>https://bbs.itying.com/topic/6a83d7710a64c600432b06c3</link><guid>https://bbs.itying.com/topic/6a83d7710a64c600432b06c3</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中AppGallery审核被拒那些事—常见原因、隐私合规和应对经验
隐私合规是审核被拒的重灾区。从 HarmonyOS NEXT 开始，华为对应用的隐私行为管得很细：App 首次启动必须弹出隐私政策弹窗，用户同意之前不能采集任何个人信息；module.json5 里声明的每个权限都必须在隐私政策里有对应说明；接入的第三方 SDK 如果有数据采集行为，也要在隐私标签里声明。&lt;/p&gt;
&lt;/div&gt;</description><author>wuwangju</author><pubDate>Tue, 18 Aug 2026 03:54:25 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中是否编译打包不能只靠command-line-tools了</title><link>https://bbs.itying.com/topic/6a83d2790a64c600432b06b9</link><guid>https://bbs.itying.com/topic/6a83d2790a64c600432b06b9</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中是否编译打包不能只靠command-line-tools了
【问题描述】：是否编译打包不能只靠command-line-tools了呢，因为我们另一台机器可能是5.0的版本只依赖command-line-tools就行，但是新机器上配置的是6.0版本的，就会有这个报错。&lt;br&gt;
hvigorw -v指令这个没问题，就是hvigorw clean有问题&lt;/p&gt;
&lt;p&gt;【问题现象】：新机器上配置的是6.0版本的，就会有这个报错&lt;/p&gt;
&lt;p&gt;ERROR: 00303217Configuration Error&lt;/p&gt;
&lt;p&gt;Error Message: Invalid value of &apos;DEVECO_SDK_HOME’in the system environment path&lt;/p&gt;
&lt;/div&gt;</description><author>nodeper</author><pubDate>Tue, 18 Aug 2026 03:33:13 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中CodeGenin问题</title><link>https://bbs.itying.com/topic/6a83cd90b9a4090042a385e6</link><guid>https://bbs.itying.com/topic/6a83cd90b9a4090042a385e6</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中CodeGenin问题
官方自带模型，上下文1K不到，根本没法用。自己添加付费模型，上下文长了，整个CodeGenin就卡死或者直接崩溃。&lt;/p&gt;
&lt;/div&gt;</description><author>sinazl</author><pubDate>Tue, 18 Aug 2026 03:12:16 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中Router页面复杂对象如何传参</title><link>https://bbs.itying.com/topic/6a83c838b9a4090042a385d5</link><guid>https://bbs.itying.com/topic/6a83c838b9a4090042a385d5</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中Router页面复杂对象如何传参
使用Router进行页面跳转传参时，数组、自定义实体类等对象如何传参给二级页面？&lt;/p&gt;
&lt;/div&gt;</description><author>htzhanglong</author><pubDate>Tue, 18 Aug 2026 02:49:28 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中WelinkH5无法自动登录</title><link>https://bbs.itying.com/topic/6a83c367b9a4090042a385cb</link><guid>https://bbs.itying.com/topic/6a83c367b9a4090042a385cb</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中WelinkH5无法自动登录
welink轻应用嵌入了H5，企业已经进行了第三方对接，首页地址、接口权限和后台管理地址均已配置，client_id也是正确的，在H5上引入了 &lt;a href=&quot;https://open-doc.welink.huaweicloud.com/docs/jsapi/2.0.12/hwh5-cloudonline.js&quot;&gt;https://open-doc.welink.huaweicloud.com/docs/jsapi/2.0.12/hwh5-cloudonline.js&lt;/a&gt;，但是调用获取code方法时提示没有对应的方法，代码如下&lt;/p&gt;
&lt;pre class=&quot;prettyprint language-javascript&quot;&gt;&lt;code&gt;async isWeLinkLogin(companyCode) {
    const companyInfo = await getCompanyInfo(companyCode)
    if (companyInfo &amp;amp;&amp;amp; companyInfo.wlClientId) {
        const ua = navigator.userAgent.toLowerCase();
        if (ua.indexOf(&amp;#x27;welink&amp;#x27;) === -1) {
            console.log(&amp;#x27;非 WeLink 环境，展示普通登录&amp;#x27;);
            return;
        }
        try {
            &amp;#x2F;&amp;#x2F; ✅ 先加载 SDK
            const HWH5Instance = await this.loadWeLinkSDK()
            console.log(&amp;#x27;SDK 加载成功:&amp;#x27;, HWH5Instance)
            const H = HWH5Instance || (typeof HWH5 !== &amp;#x27;undefined&amp;#x27; ? HWH5 : undefined) || (typeof window !== &amp;#x27;undefined&amp;#x27; ? window.HWH5 : undefined)
            if (!H) {
                console.log(&amp;#x27;WeLink SDK 对象不存在&amp;#x27;)
                return
            }
            console.log(&amp;#x27;HWH5 对象方法:&amp;#x27;, Object.keys(H))
            let data
            if (H &amp;amp;&amp;amp; H.getAuthorizationCode) {
                data = await H.getAuthorizationCode()
            } else if (H &amp;amp;&amp;amp; H.getAuthCode) {
                const maybe = H.getAuthCode()
                if (maybe &amp;amp;&amp;amp; maybe.then) {
                    data = await maybe
                } else {
                    data = await new Promise((resolve, reject) =&amp;gt; {
                        try {
                            H.getAuthCode(res =&amp;gt; resolve(res))
                        } catch (e) {
                            reject(e)
                        }
                    })
                }
            } else {
                console.log(&amp;#x27;WeLink SDK 对象不包含 getAuthorizationCode&amp;#x2F;getAuthCode&amp;#x27;, H)
                return
            }
            const authCode = data &amp;amp;&amp;amp; (data.code || data.authCode || data.authorizationCode)
            if (authCode) {
                let res = await scanLogin({
                    companyCode: companyInfo?.companyCode || this.companyCode.code,
                    code: authCode
                })
                this.handleLogin(res)
            } else {
                console.log(&amp;#x27;未获取到授权码，无法进行自动登录&amp;#x27;)
            }
        } catch (error) {
            console.log(&amp;#x27;获取异常&amp;#x27;, error)
        }
    } else {
        return
    }
},
loadWeLinkSDK() {
    return new Promise((resolve, reject) =&amp;gt; {
        &amp;#x2F;&amp;#x2F; 如果已经存在，直接返回
        if (window.HWH5 || (typeof HWH5 !== &amp;#x27;undefined&amp;#x27;)) {
            resolve(window.HWH5 || HWH5)
            return
        }
        &amp;#x2F;&amp;#x2F; 如果没有通过 script 标签引入，才动态加载
        const existingScript = document.querySelector(&amp;#x27;script[src*=&amp;quot;hwh5-cloudonline&amp;quot;]&amp;#x27;)
        if (existingScript) {
            existingScript.addEventListener(&amp;#x27;load&amp;#x27;, () =&amp;gt; {
                resolve(window.HWH5 || HWH5)
            })
            return
        }
        const script = document.createElement(&amp;#x27;script&amp;#x27;)
        script.src = &amp;#x27;https:&amp;#x2F;&amp;#x2F;open-doc.welink.huaweicloud.com&amp;#x2F;docs&amp;#x2F;jsapi&amp;#x2F;2.0.12&amp;#x2F;hwh5-cloudonline.js&amp;#x27;
        script.onload = () =&amp;gt; {
            console.log(&amp;#x27;WeLink SDK 动态加载完成&amp;#x27;)
            resolve(window.HWH5 || (typeof HWH5 !== &amp;#x27;undefined&amp;#x27; ? HWH5 : undefined))
        }
        script.onerror = () =&amp;gt; {
            reject(new Error(&amp;#x27;WeLink SDK 加载失败&amp;#x27;))
        }
        document.head.appendChild(script)
    })
},
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;执行代码一直提示WeLink SDK 对象不包含 getAuthorizationCode/getAuthCode&lt;/p&gt;
&lt;/div&gt;</description><author>vueper</author><pubDate>Tue, 18 Aug 2026 02:28:55 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中如何切换游戏模式？</title><link>https://bbs.itying.com/topic/6a83b9af0a64c600432b06a4</link><guid>https://bbs.itying.com/topic/6a83b9af0a64c600432b06a4</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中如何切换游戏模式？
用什么调试工具能在6.1.0.125系统下给应用切换游戏模式。不然调度太怂了&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/471/250/650/8EAF2EB194FE8F115132411285B97A5B:F865901A1156AA3B9E4C57721DBF56AA15BA62EA5B9C52EA3D87FD927142355E.20260623123003.36333581183183859672241299687860:50001231000000:2800:FA207D3D812C9E9AACFBF26E13BF716A970DB97868776661F513ECCFD81727C8.jpg&quot; alt&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/471/250/650/8EAF2EB194FE8F115132411285B97A5B:F865901A1156AA3B9E4C57721DBF56AA15BA62EA5B9C52EA3D87FD927142355E.20260623123006.94885575273750424016480492674883:50001231000000:2800:DA51A611807FB86D20AEB2AE8AE243589A16CE38F70FC392A133F821E5FF7A08.jpg&quot; alt&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>caililin</author><pubDate>Tue, 18 Aug 2026 01:47:27 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next沉浸光感顶部导航栏</title><link>https://bbs.itying.com/topic/6a83b4a30a64c600432b0694</link><guid>https://bbs.itying.com/topic/6a83b4a30a64c600432b0694</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next沉浸光感顶部导航栏
沉浸顶部导航栏的这种按钮是用的什么组件而且可以支持沉浸光感，那个切换的按钮，（不是segment buttonV2的话还可以通过什么实现这种按钮切换呢并且有沉浸光感的效果）&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/893/904/295/4FF71F4D748D3CDFB0229A8140FC0A5D:6BF7344F697F80DC97A2681FEE34569DDC52D23146985EDBE686BF3761477596.20260616144752.58218838973021130482673575882044:50001231000000:2800:7E26485C74A5AED3CDF2E802B57B4146A43E8FCB7E060DD1779316CDC9741CED.jpg&quot; alt&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Tue, 18 Aug 2026 01:25:55 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next中3DGS识别问题</title><link>https://bbs.itying.com/topic/6a83af460a64c600432b0682</link><guid>https://bbs.itying.com/topic/6a83af460a64c600432b0682</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next中3DGS识别问题
我现在这边在开发一个手机版的徽章识别的一个软件手机相册选择和拍摄过后怎么没有模型呢？同时，模型、其他背景这些都是自动没有的用户在应用中选择一张本地照片应用将其转换为3D模型背景不要有，并允许用户通过转动设备从不同角度查看模型。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/314/301/886/F22F6254E54ED7B175B1373E7837CC83:C937E608C4F8DB46D35F619BA371466BE537A576D10EB2E28E3A555180CA72A4.20260623123654.62698676995033236417769690914598:50001231000000:2800:DAA1049D0BC72DD1AC71A3CADC9CC439525C4F247A4A3E7065B8C4CCF84AF900.png&quot; alt=&quot;cke_2425.png&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>songsunli</author><pubDate>Tue, 18 Aug 2026 01:03:02 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中硬件解码释放后，同一XComponent Surface使用OpenGL渲染画面不更新</title><link>https://bbs.itying.com/topic/6a83aa330a64c600432b0679</link><guid>https://bbs.itying.com/topic/6a83aa330a64c600432b0679</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中硬件解码释放后，同一XComponent Surface使用OpenGL渲染画面不更新
&lt;strong&gt;问题描述&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;在OpenHarmony-5.0.3.135系统上，使用XComponent的Surface进行硬件解码直接渲染。播放结束后释放硬件解码器，然后使用OpenGL渲染同一Surface时，画面无法更新，一直停留在最后一帧。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;场景说明&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;我们的业务场景是视频播放器在播放过程中，需要从硬件解码切换为软件解码。硬件解码使用Surface模式直接渲染到XComponent，切换时先释放硬件解码器，再使用OpenGL渲染同一Surface来显示软件解码后的画面。但切换后画面卡住不动，无法正常显示软解内容。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;环境信息&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;系统版本：OpenHarmony-5.0.3.135&lt;/li&gt;
&lt;li&gt;涉及组件：XComponent（surface类型）、OH_VideoDecoder（硬件解码）、OpenGL ES&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;复现步骤&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;使用&lt;code&gt;OH_VideoDecoder_SetSurface()&lt;/code&gt;将硬件解码器绑定到XComponent的Surface，开始硬解渲染&lt;/li&gt;
&lt;li&gt;播放结束后，调用&lt;code&gt;OH_VideoDecoder_Stop()&lt;/code&gt;和&lt;code&gt;OH_VideoDecoder_Destroy()&lt;/code&gt;释放硬件解码器&lt;/li&gt;
&lt;li&gt;使用OpenGL ES在同一XComponent Surface上渲染软件解码后的画面&lt;/li&gt;
&lt;li&gt;实际结果：画面无变化，停留在硬解最后一帧&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;补充说明&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如果跳过硬解步骤，直接用OpenGL渲染该Surface，画面显示正常&lt;/li&gt;
&lt;li&gt;硬解播放期间画面显示正常&lt;/li&gt;
&lt;li&gt;已确认OpenGL渲染逻辑本身没有问题（在纯软解场景下验证过）&lt;/li&gt;
&lt;li&gt;已确认Surface未被销毁，XComponent仍处于活跃状态&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;尝试过的方案&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在释放硬解后调用&lt;code&gt;OH_NativeWindow_NativeWindowHandle&lt;/code&gt;相关接口尝试重置Surface状态&lt;/li&gt;
&lt;li&gt;在OpenGL渲染前重新创建EGLContext和EGLSurface&lt;/li&gt;
&lt;li&gt;在硬解释放和OpenGL渲染之间加入延迟&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以上方案均未能解决问题。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;问题&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;硬件解码器释放后，XComponent的Surface是否仍持有之前解码器绑定的状态？是否需要主动清理？&lt;/li&gt;
&lt;li&gt;多解码器共用同一NativeWindow时，是否有推荐的切换流程？&lt;/li&gt;
&lt;li&gt;OpenHarmony-5.0.3.135上是否有已知的Surface状态残留问题？&lt;/li&gt;
&lt;li&gt;硬解切软解的场景下，是否有官方推荐的最佳实践？&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;期待回复&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;希望有经验的大佬指点，或者官方开发人员确认是否为系统已知问题。如有需要，我可以提供更多代码细节和日志信息。&lt;/p&gt;
&lt;/div&gt;</description><author>sinazl</author><pubDate>Tue, 18 Aug 2026 00:41:23 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中长连接保活：Continuous Task + WebSocket 心跳与系统省电策略</title><link>https://bbs.itying.com/topic/6a83a544b9a4090042a38595</link><guid>https://bbs.itying.com/topic/6a83a544b9a4090042a38595</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中长连接保活：Continuous Task + WebSocket 心跳与系统省电策略
开发即时通讯应用，需要在后台维持 WebSocket 长连接以接收消息推送。使用 Continuous Task 申请后台长时任务，配合 30 秒一次的心跳包维持连接，但遇到以下问题：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;连接频繁断开：应用切到后台约 5-8 分钟后，WebSocket 连接被断开，服务端收到连接关闭事件&lt;/li&gt;
&lt;li&gt;心跳发不出去：在系统省电模式下，心跳包无法按时发出，服务端因超时（60 秒无响应）主动断开连接&lt;/li&gt;
&lt;li&gt;Continuous Task 被取消：系统日志显示 Continuous task cancelled: timeout，但文档说 Continuous Task 可以持续运行&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Tue, 18 Aug 2026 00:20:20 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next 7还会保留卓易通吗</title><link>https://bbs.itying.com/topic/6a83a054b9a4090042a38586</link><guid>https://bbs.itying.com/topic/6a83a054b9a4090042a38586</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next 7还会保留卓易通吗
鸿蒙7还会保留卓易通吗&lt;/p&gt;
&lt;/div&gt;</description><author>itying888</author><pubDate>Mon, 17 Aug 2026 23:59:16 GMT</pubDate></item><item><title>有没有HarmonyOS鸿蒙Next大佬做过ocr识别微信和支付宝账单</title><link>https://bbs.itying.com/topic/6a839accb9a4090042a38577</link><guid>https://bbs.itying.com/topic/6a839accb9a4090042a38577</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;有没有HarmonyOS鸿蒙Next大佬做过ocr识别微信和支付宝账单
我怎么解析都不稳定，乱七八糟的。要么没时间，要么把汇总也识别出来了。&lt;/p&gt;
&lt;p&gt;有没有大佬能能用的代码&lt;/p&gt;
&lt;/div&gt;</description><author>h691938207</author><pubDate>Mon, 17 Aug 2026 23:35:40 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中用龙虾模式开发了一个智能体最终正式上架</title><link>https://bbs.itying.com/topic/6a8395feb9a4090042a38574</link><guid>https://bbs.itying.com/topic/6a8395feb9a4090042a38574</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中用龙虾模式开发了一个智能体最终正式上架
一不小心用龙虾模式开发了一个智能体。用以辅助炒股盯盘的判断工具。现在是真机测试阶段。但好像龙虾模式下开发的智能体都不能正式上架，由于此智能体已经训练了一段时间了。再改模式损失会很大。所以想知道龙虾模式下开发的智能体最终能否上架，如果能就不用再改模式了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/381/341/768/F456222F9D5FB18D8A44904B806EFB84:1EB31D77B74440D154123A8F3EF39F61A3C6169DD5D787AFDDE41D906D988C01.20260623175216.00995101925501263188384404349558:50001231000000:2800:E80320845E5BBE15E39508B8838761C22D22FAA36B4861D0E7B391AA2635441D.jpg&quot; alt&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/381/341/768/F456222F9D5FB18D8A44904B806EFB84:1EB31D77B74440D154123A8F3EF39F61A3C6169DD5D787AFDDE41D906D988C01.20260623175216.31000372927538585668937720415130:50001231000000:2800:1662CC26382F7C396352A465CDC6F9EA03084D8D8F0EC8D3AC8E3E6D356C3D31.jpg&quot; alt&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/381/341/768/F456222F9D5FB18D8A44904B806EFB84:1EB31D77B74440D154123A8F3EF39F61A3C6169DD5D787AFDDE41D906D988C01.20260623175216.82112856600812219958877586048298:50001231000000:2800:7BF153B843C11425269B206CB6DCAA996A1866B450CBF049370DA1BDE98C7000.jpg&quot; alt&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>vueper</author><pubDate>Mon, 17 Aug 2026 23:15:10 GMT</pubDate></item><item><title>OpenHarmony打包时提示detecting c compiler abi info - failed</title><link>https://bbs.itying.com/topic/6a83912b0a64c600432b064f</link><guid>https://bbs.itying.com/topic/6a83912b0a64c600432b064f</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;OpenHarmony打包时提示detecting c compiler abi info - failed
新建项目，runtimeOS切换为openharmony，切换BiSheng为Original，无法打包成功&lt;/p&gt;
&lt;pre class=&quot;prettyprint language-text&quot;&gt;&lt;code&gt;Exceptions happened while executing C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;build-tools&amp;#x5C;cmake&amp;#x5C;bin&amp;#x5C;cmake.exe -HC:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;DevEcoStudioProjects&amp;#x5C;MyApplication&amp;#x5C;Library1&amp;#x5C;src&amp;#x5C;main&amp;#x5C;cpp -BC:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;DevEcoStudioProjects&amp;#x5C;MyApplication&amp;#x5C;Library1&amp;#x5C;.cxx&amp;#x5C;default&amp;#x5C;default&amp;#x5C;debug&amp;#x5C;arm64-v8a -DOHOS_ARCH=arm64-v8a -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;DevEcoStudioProjects&amp;#x5C;MyApplication&amp;#x5C;Library1&amp;#x5C;build&amp;#x5C;default&amp;#x5C;intermediates&amp;#x5C;cmake&amp;#x5C;default&amp;#x5C;obj&amp;#x5C;arm64-v8a -DCMAKE_BUILD_TYPE=Debug -DOHOS_SDK_NATIVE=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native -DCMAKE_SYSTEM_NAME=OHOS -DCMAKE_OHOS_ARCH_ABI=arm64-v8a -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_TOOLCHAIN_FILE=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;build&amp;#x5C;cmake&amp;#x5C;ohos.toolchain.cmake -GNinja -DCMAKE_MAKE_PROGRAM=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;build-tools&amp;#x5C;cmake&amp;#x5C;bin&amp;#x5C;ninja.exe -DCMAKE_FIND_ROOT_PATH=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;DevEcoStudioProjects&amp;#x5C;MyApplication&amp;#x5C;Library1&amp;#x5C;.cxx&amp;#x5C;default&amp;#x5C;default&amp;#x5C;debug&amp;#x5C;hvigor&amp;#x5C;arm64-v8a -DPACKAGE_FIND_FILE=C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;DevEcoStudioProjects&amp;#x5C;MyApplication&amp;#x5C;Library1&amp;#x5C;.cxx&amp;#x5C;default&amp;#x5C;default&amp;#x5C;debug&amp;#x5C;hvigor&amp;#x5C;arm64-v8a&amp;#x5C;summary.cmake --no-warn-unused-cli -DCMAKE_CXX_FLAGS=--std=c++11.

Not searching for unused variables given on the command line.

-- The C compiler identification is Clang 15.0.4

-- The CXX compiler identification is Clang 15.0.4

-- Detecting C compiler ABI info

-- Detecting C compiler ABI info - failed

-- Check for working C compiler: C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm&amp;#x2F;bin&amp;#x2F;clang.exe

-- Check for working C compiler: C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm&amp;#x2F;bin&amp;#x2F;clang.exe - broken

CMake Error at C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;build-tools&amp;#x2F;cmake&amp;#x2F;share&amp;#x2F;cmake-3.28&amp;#x2F;Modules&amp;#x2F;CMakeTestCCompiler.cmake:67 (message):

  The C compiler

    &amp;quot;C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm&amp;#x2F;bin&amp;#x2F;clang.exe&amp;quot;

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: &amp;#x27;C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;DevEcoStudioProjects&amp;#x2F;MyApplication&amp;#x2F;Library1&amp;#x2F;.cxx&amp;#x2F;default&amp;#x2F;default&amp;#x2F;debug&amp;#x2F;arm64-v8a&amp;#x2F;CMakeFiles&amp;#x2F;CMakeScratch&amp;#x2F;TryCompile-3jnczn&amp;#x27;

    

    Run Build Command(s): C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;build-tools&amp;#x5C;cmake&amp;#x5C;bin&amp;#x5C;ninja.exe -v cmTC_6af85

    [1&amp;#x2F;2] C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;llvm&amp;#x5C;bin&amp;#x5C;clang.exe --target=aarch64-linux-ohos --gcc-toolchain=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm --sysroot=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;sysroot  -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security  -D__MUSL__  -fPIE -MD -MT CMakeFiles&amp;#x2F;cmTC_6af85.dir&amp;#x2F;testCCompiler.c.o -MF CMakeFiles&amp;#x5C;cmTC_6af85.dir&amp;#x5C;testCCompiler.c.o.d -o CMakeFiles&amp;#x2F;cmTC_6af85.dir&amp;#x2F;testCCompiler.c.o -c C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;DevEcoStudioProjects&amp;#x2F;MyApplication&amp;#x2F;Library1&amp;#x2F;.cxx&amp;#x2F;default&amp;#x2F;default&amp;#x2F;debug&amp;#x2F;arm64-v8a&amp;#x2F;CMakeFiles&amp;#x2F;CMakeScratch&amp;#x2F;TryCompile-3jnczn&amp;#x2F;testCCompiler.c

    clang: warning: argument unused during compilation: &amp;#x27;--gcc-toolchain=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm&amp;#x27; [-Wunused-command-line-argument]

    [2&amp;#x2F;2] C:&amp;#x5C;Windows&amp;#x5C;system32&amp;#x5C;cmd.exe &amp;#x2F;C &amp;quot;cd . &amp;amp;&amp;amp; C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;llvm&amp;#x5C;bin&amp;#x5C;clang.exe --target=aarch64-linux-ohos --gcc-toolchain=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm --sysroot=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;sysroot -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security  -D__MUSL__ --rtlib=compiler-rt -fuse-ld=lld -Wl,--build-id=sha1 -Wl,--warn-shared-textrel -Wl,--fatal-warnings -lunwind -Wl,--no-undefined -Qunused-arguments -Wl,-z,noexecstack -Wl,--gc-sections CMakeFiles&amp;#x2F;cmTC_6af85.dir&amp;#x2F;testCCompiler.c.o -o cmTC_6af85  -lm &amp;amp;&amp;amp; cd .&amp;quot;

    FAILED: cmTC_6af85 

    C:&amp;#x5C;Windows&amp;#x5C;system32&amp;#x5C;cmd.exe &amp;#x2F;C &amp;quot;cd . &amp;amp;&amp;amp; C:&amp;#x5C;Users&amp;#x5C;Admin&amp;#x5C;AppData&amp;#x5C;Local&amp;#x5C;OpenHarmony&amp;#x5C;Sdk&amp;#x5C;20&amp;#x5C;native&amp;#x5C;llvm&amp;#x5C;bin&amp;#x5C;clang.exe --target=aarch64-linux-ohos --gcc-toolchain=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm --sysroot=C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;sysroot -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security  -D__MUSL__ --rtlib=compiler-rt -fuse-ld=lld -Wl,--build-id=sha1 -Wl,--warn-shared-textrel -Wl,--fatal-warnings -lunwind -Wl,--no-undefined -Qunused-arguments -Wl,-z,noexecstack -Wl,--gc-sections CMakeFiles&amp;#x2F;cmTC_6af85.dir&amp;#x2F;testCCompiler.c.o -o cmTC_6af85  -lm &amp;amp;&amp;amp; cd .&amp;quot;

    clang: error: unable to execute command: Couldn&amp;#x27;t execute program &amp;#x27;C:&amp;#x2F;Users&amp;#x2F;Admin&amp;#x2F;AppData&amp;#x2F;Local&amp;#x2F;OpenHarmony&amp;#x2F;Sdk&amp;#x2F;20&amp;#x2F;native&amp;#x2F;llvm&amp;#x2F;bin&amp;#x2F;ld.lld.exe&amp;#x27;: Unknown error (0xD8)

    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    ninja: build stopped: subcommand failed.

    

    

  

  CMake will not be able to correctly generate this project.

Call Stack (most recent call first):

  CMakeLists.txt:3 (project)

-- Configuring incomplete, errors occurred!

undefined
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description><author>songsunli</author><pubDate>Mon, 17 Aug 2026 22:54:35 GMT</pubDate></item><item><title>Deveco Studio中怎么打开Deveco Code?</title><link>https://bbs.itying.com/topic/6a838c18b9a4090042a38569</link><guid>https://bbs.itying.com/topic/6a838c18b9a4090042a38569</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;Deveco Studio中怎么打开Deveco Code?
都装好了，都能分别打开，但是Deveco Studio里就是那个Code Genie，这个Code Genie又一直让我体验Deveco Code，我装了Deveco Code也能打开tui，但是我在Studio里怎么打开啊，哪位能教教我。。。困惑好久了~~&lt;/p&gt;
&lt;/div&gt;</description><author>h691938207</author><pubDate>Mon, 17 Aug 2026 22:32:56 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next NFC 智闪卡功能第三方 HCE 兼容优化建议</title><link>https://bbs.itying.com/topic/6a838741b9a4090042a38563</link><guid>https://bbs.itying.com/topic/6a838741b9a4090042a38563</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next NFC 智闪卡功能第三方 HCE 兼容优化建议
各位鸿蒙 NFC、系统生态相关产品与研发同事好： 我是一名硬件业余爱好者，在开发基于手机 HCE 模拟卡片的自研硬件设备过程中，发现鸿蒙设备智闪卡当前的射频路由策略，对第三方私有 HCE 应用存在一定兼容限制，在此客观反馈使用场景与优化建议，供后续系统迭代参考。&lt;/p&gt;
&lt;h2&gt;一、基础场景说明&lt;/h2&gt;
&lt;p&gt;自研硬件采用标准 NFC ISO-DEP 通信，设备侧使用独立私有 AID，无支付、交通、门禁类通用标准 AID，理论上与钱包内置卡片业务无冲突；整套交互完全遵循安卓原生 HCE 开发规范，在其他品牌安卓设备均可正常按 AID 路由分发，仅鸿蒙机型出现功能阻断。&lt;/p&gt;
&lt;p&gt;产品目标是实现贴近即识别的无感验证，依赖息屏、锁屏状态下 HCE 服务正常接收读卡器指令，当前智闪卡机制会干扰该流程正常运行。&lt;/p&gt;
&lt;h2&gt;二、当前遇到的兼容问题&lt;/h2&gt;
&lt;p&gt;智闪卡带来的熄屏快速刷卡功能，日常通勤场景体验优秀，但全局射频抢占逻辑会影响第三方私有 HCE 应用使用：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;读卡器射频场触发后，系统会优先拉起华为钱包，未优先根据读卡器下发私有 AID 匹配对应第三方 HCE 服务；即便应用前台运行、手机解锁，第三方服务依旧无法收到 APDU 交互指令，设备无法识别手机。&lt;/li&gt;
&lt;li&gt;用户使用存在两难取舍，操作设置成本偏高 想要正常使用第三方 HCE 工具，用户需要多层菜单内修改 NFC 默认应用、关闭智闪卡；普通用户难以找到对应设置入口，且修改后会直接失去钱包交通卡、门禁卡无感刷卡能力，二者只能选择其一，体验割裂。&lt;/li&gt;
&lt;li&gt;用户手动配置易被重置 部分用户反馈，手动将第三方应用设为默认 NFC 应用后，打开一次华为钱包，系统会自动恢复钱包为默认刷卡程序，配置无法稳定留存，容易造成用户困惑。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;三、优化建议（兼顾智闪卡功能与第三方生态）&lt;/h2&gt;
&lt;p&gt;我们十分认可智闪卡便民价值，不建议移除该功能，仅希望调整路由判断逻辑，实现官方钱包与第三方应用共存：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;区分 AID 类型差异化路由 智闪卡仅针对钱包内已添加卡片对应的公有标准 AID 提供高优先响应；对于开发者自定义私有 AID，遵循原生安卓 AID 匹配逻辑，转发至对应第三方 HCE 服务，两类业务互不干扰。&lt;/li&gt;
&lt;li&gt;持久保留用户手动选择的默认应用 用户主动选定第三方应用作为 NFC 默认程序后，该配置不应被钱包自动覆盖，保障用户自主选择的使用状态稳定生效。&lt;/li&gt;
&lt;li&gt;前台应用路由优先级提升 第三方 HCE 应用前台活跃时，其 NFC 路由优先级高于后台智闪卡服务，适配设备调试、高频使用第三方 NFC 工具的场景。&lt;/li&gt;
&lt;li&gt;简化智闪卡临时启停入口 在 NFC 一级设置页面增加直观开关，无需跳转钱包多级菜单，降低普通用户操作难度。&lt;/li&gt;
&lt;li&gt;提供合规第三方硬件接入通道 针对智能验证类硬件产品，开放标准化接入审核渠道，合规第三方应用可接入智闪卡无感熄屏刷卡能力，无需手动关闭钱包功能。&lt;/li&gt;
&lt;li&gt;拆分触发逻辑开关，NFC碰一碰自动触发和双击电源触发作为两个选项唤醒智闪卡，类似小艺的语音唤醒和长按电源可独立设置。&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;补充说明&lt;/h2&gt;
&lt;p&gt;目前没有兼顾钱包刷卡与自研硬件 NFC 功能的折中适配方案，该路由限制会影响各类私有身份验证、DIY 智能硬件、小型工控识别设备等依赖原生 HCE 的第三方产品落地。 期待鸿蒙 NFC 后续迭代优化多应用共存机制，在优化官方便民功能的同时，给第三方开发者保留开放兼容的开发环境，构建更完整的 NFC 软硬件生态。如有相关技术细节需要沟通，欢迎交流。&lt;/p&gt;
&lt;/div&gt;</description><author>phonegap100</author><pubDate>Mon, 17 Aug 2026 22:12:17 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next特性开发</title><link>https://bbs.itying.com/topic/6a838277b9a4090042a38562</link><guid>https://bbs.itying.com/topic/6a838277b9a4090042a38562</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next特性开发
HarmonyOS 鸿蒙Next特性开发基于ArkTS与ArkUI，支持声明式UI、元服务、分布式软总线、一次开发多端部署。核心特性包括自由流转、服务找人、安全隐私增强及原生流畅体验。开发需使用DevEco Studio，关注API版本与权限声明。&lt;/p&gt;
&lt;/div&gt;</description><author>wuwangju</author><pubDate>Mon, 17 Aug 2026 21:51:51 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next编程语言</title><link>https://bbs.itying.com/topic/6a837dae0a64c600432b062e</link><guid>https://bbs.itying.com/topic/6a837dae0a64c600432b062e</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next编程语言
ArkTS是动态类型编程语言，主打易学易用、生态丰富、极简开发、持续创新四大特征；仓颉是静态类型编程语言，主打高性能、强安全、跨平台、智能化等特性。C/C++代码可通过跨语言互操作封装为ArkTS、仓颉扩展模块，提供给ArkTS、仓颉高效使用。ArkTS和仓颉均通过垃圾回收机制自动管理内存，C/C++需开发者手动管理内存。&lt;/p&gt;
&lt;/div&gt;</description><author>nodeper</author><pubDate>Mon, 17 Aug 2026 21:31:26 GMT</pubDate></item><item><title>DevEco Profiler 里的 ArkUI 性能数据到底怎么看—从火焰图到帧率瓶颈定位</title><link>https://bbs.itying.com/topic/6a8378b4b9a4090042a38551</link><guid>https://bbs.itying.com/topic/6a8378b4b9a4090042a38551</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;DevEco Profiler 里的 ArkUI 性能数据到底怎么看—从火焰图到帧率瓶颈定位
DevEco Profiler 的 ArkUI 分析能力在最近几个版本提升很明显。ArkUI Inspector 能看到组件树结构，Frame Timeline 能看到每帧的耗时分布，CPU Profiler 能录制函数调用火焰图，Allocation Tracker 能追踪内存分配热点。工具是有了，但会用和用好之间有段距离。&lt;/p&gt;
&lt;/div&gt;</description><author>bupafengyu</author><pubDate>Mon, 17 Aug 2026 21:10:12 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中PersistenceV2存个大对象页面直接卡两秒？持久化序列化开销与主线程阻塞排查</title><link>https://bbs.itying.com/topic/6a8373bbb9a4090042a38548</link><guid>https://bbs.itying.com/topic/6a8373bbb9a4090042a38548</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中PersistenceV2存个大对象页面直接卡两秒？持久化序列化开销与主线程阻塞排查
做了一个购物车模块，用 PersistenceV2 持久化购物车数据。购物车是一个数组，每条记录包含商品信息、规格、数量、优惠标签等字段。碰到一些情况：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;购物车里有 50+ 件商品的时候，每次修改一件商品的数量，界面明显卡一下，Profiler 看主线程有 200-500ms 的阻塞&lt;/li&gt;
&lt;li&gt;把购物车清空后卡顿消失了，放回 100 条数据又开始卡&lt;/li&gt;
&lt;li&gt;改用 AppStorageV2 同样的卡顿，换成 Preferences 手动控制读写时机后好很多&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description><author>caililin</author><pubDate>Mon, 17 Aug 2026 20:48:59 GMT</pubDate></item><item><title>DevEco Code支持哪些IDE</title><link>https://bbs.itying.com/topic/6a836ed80a64c600432b060c</link><guid>https://bbs.itying.com/topic/6a836ed80a64c600432b060c</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;DevEco Code支持哪些IDE
DevEco Code支持哪些IDE，可以在DevEco 6.1版本安装吗？&lt;/p&gt;
&lt;/div&gt;</description><author>htzhanglong</author><pubDate>Mon, 17 Aug 2026 20:28:08 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中CustomDialog弹窗被Navigation页面盖住？弹窗层级、路由跳转和bindSheet替代方案踩坑</title><link>https://bbs.itying.com/topic/6a8369760a64c600432b0601</link><guid>https://bbs.itying.com/topic/6a8369760a64c600432b0601</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中CustomDialog弹窗被Navigation页面盖住？弹窗层级、路由跳转和bindSheet替代方案踩坑
应用用 Navigation 做主路由，在列表页弹出一个 CustomDialog 让用户确认操作。碰到这些情况：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;弹窗弹出来后，用户点了弹窗以外的区域触发了列表 item 的点击事件，Navigation push 到了详情页，弹窗被新页面盖住了但还活着—返回列表页后弹窗又出现了&lt;/li&gt;
&lt;li&gt;弹窗里有个&amp;quot;查看详情&amp;quot;按钮，点击后想跳转到详情页，调了 this.navPathStack.pushPathByName(‘detail’, data)，新页面出来了但弹窗浮在新页面上面，挡住了详情页内容&lt;/li&gt;
&lt;li&gt;用 bindSheet 做半模态弹窗，在 sheet 里点按钮触发 Navigation push，sheet 没有自动关闭，和新页面叠在一起&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description><author>sinazl</author><pubDate>Mon, 17 Aug 2026 20:05:10 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中一个组件同时设置layoutWeight和height的话会怎样计算其高度？</title><link>https://bbs.itying.com/topic/6a835fb7b9a4090042a38526</link><guid>https://bbs.itying.com/topic/6a835fb7b9a4090042a38526</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中一个组件同时设置layoutWeight和height的话会怎样计算其高度？
父组件是Column，父组件高度auto。&lt;/p&gt;
&lt;/div&gt;</description><author>zlyuanteng</author><pubDate>Mon, 17 Aug 2026 19:23:35 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中酒店民宿入住的服务动态消息的能力中的content有模板吗</title><link>https://bbs.itying.com/topic/6a835ad3b9a4090042a3851e</link><guid>https://bbs.itying.com/topic/6a835ad3b9a4090042a3851e</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中酒店民宿入住的服务动态消息的能力中的content有模板吗
&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/781/355/226/917147E2F3CF78A30D54C3B3DA797740:5DB2258252EC7B206B9D220C929BA080EE5BFEEC4E1A4837552D6240BDA5265F.20260624101256.45470968982072804692502301262240:50001231000000:2800:E11640D9759242DDFC08BABABE9E8306DB0DE505F29CA430092AB37096BC1704.png&quot; alt&gt;&lt;/p&gt;
&lt;p&gt;文档里面content的TimelineStatusContent类型只有外卖模板不知道酒店的怎么传&lt;/p&gt;
&lt;/div&gt;</description><author>sinazl</author><pubDate>Mon, 17 Aug 2026 19:02:43 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中小艺开放平台vibe coding生成skill后，为什么不能上架，真机测试也不行</title><link>https://bbs.itying.com/topic/6a8355fcb9a4090042a38517</link><guid>https://bbs.itying.com/topic/6a8355fcb9a4090042a38517</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中小艺开放平台vibe coding生成skill后，为什么不能上架，真机测试也不行
小艺开放平台vibe coding生成skill后，为什么不能上架，真机测试也不行，点击真机测试图标后，显示“暂无可调试的skill”，上架图标点不了。&lt;/p&gt;
&lt;p&gt;上架渠道勾选哪一个都一样，最基础的只仅自己使用甚至都不行。&lt;/p&gt;
&lt;p&gt;15号创建的skill还可以上架以及测试，今天创建的就不行了&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/192/156/725/1DADD66A205CB5BA018B4D501A433F73:13A3AE91BFBE5CABB7AFB61E973F0C5DDE3B5A42CDBF130D30ED00D88C80DD48.20260624101713.59625803040247078395258814934703:50001231000000:2800:9FFA5669A0C6DF427FC7CD6F115F8BCE8F1E0407EFCC24F4AD12225936A8AD0B.png&quot; alt=&quot;cke_117.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/192/156/725/1DADD66A205CB5BA018B4D501A433F73:13A3AE91BFBE5CABB7AFB61E973F0C5DDE3B5A42CDBF130D30ED00D88C80DD48.20260624101809.97258941725248456991428879891541:50001231000000:2800:242846792441A341C5F020054357871A16418EDF9D4A2402A94B0B2336C21A61.png&quot; alt=&quot;cke_5743.png&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>htzhanglong</author><pubDate>Mon, 17 Aug 2026 18:42:04 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next中长列表滚动卡顿问题定位</title><link>https://bbs.itying.com/topic/6a8350eeb9a4090042a3850f</link><guid>https://bbs.itying.com/topic/6a8350eeb9a4090042a3850f</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next中长列表滚动卡顿问题定位
我现在有一个长列表（5W+），现在用V2组件+Repeat启用虚拟滚动功能，现在发现，当我用调试模式启动HAP运行时，在真机上滚动非常非常卡顿，但是如果以运行模式启动，则不卡顿。&lt;/p&gt;
&lt;p&gt;现在想知道造成这个差异的原因是什么，由于在调试模式下尝试定位、规避这个问题耗费了很长时间，所以想知道是否有办法在调试模式下也不卡顿。&lt;/p&gt;
&lt;/div&gt;</description><author>yuanlaile</author><pubDate>Mon, 17 Aug 2026 18:20:30 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中Android Java版本的AREngine支持设备提问</title><link>https://bbs.itying.com/topic/6a834c21b9a4090042a3850a</link><guid>https://bbs.itying.com/topic/6a834c21b9a4090042a3850a</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中Android Java版本的AREngine支持设备提问
Android Java版本的AREngine现在有哪些在售的平板可以用的，官方给的这几款都不在售了&lt;a href=&quot;https://developer.huawei.com/consumer/cn/doc/graphics-Guides/introduction-0000001050130900&quot;&gt;业务介绍-AR Engine - 华为HarmonyOS开发者&lt;/a&gt;，目前我知道的是需要麒麟芯片+HarmonyOS 4.0系统，请问链接这款可以用吗？急急急，马上要采购了，谢谢！&lt;br&gt;
【京东】&lt;a href=&quot;https://3.cn/2Tg-dvdH?jkl=&quot;&gt;https://3.cn/2Tg-dvdH?jkl=&lt;/a&gt;@DFE0D6ZAsCF@ MF3390「华为MatePad Pro 12.2英寸平板」&lt;/p&gt;
&lt;p&gt;点击链接直接打开 或者复制文案打开京东&lt;/p&gt;
&lt;/div&gt;</description><author>vueper</author><pubDate>Mon, 17 Aug 2026 18:00:01 GMT</pubDate></item><item><title>deveco stduio 的项目终端打不开deveco code————已解决</title><link>https://bbs.itying.com/topic/6a8346fd0a64c600432b05d9</link><guid>https://bbs.itying.com/topic/6a8346fd0a64c600432b05d9</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;deveco stduio 的项目终端打不开deveco code————已解决
deveco code安装在管理员终端里，但是除此之外的其他路径下的终端都打不开deveco code，输入启动命令deveco 后就一直无响应。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/191/352/330/570A4197454BB5C148F12AA619BE7390:AF89B9EC462460A066EF7CE099467DB787D5F21EA91BC7544235B74647C55B4C.20260612201422.23511506228831802786537412965935:50001231000000:2800:61172F8F0F0C5975EE27E2A74EA7017D57EE031109FCA897F2D69B51EA9F7A78.png&quot; alt=&quot;cke_1518.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/191/352/330/570A4197454BB5C148F12AA619BE7390:AF89B9EC462460A066EF7CE099467DB787D5F21EA91BC7544235B74647C55B4C.20260612201439.42718491499852863492889127688458:50001231000000:2800:17AB806CF4494303F25321B46F013EE87E670B62DCDB441C1C3A073163BEF051.png&quot; alt=&quot;cke_1780.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;解决办法：禁用该选项。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/191/352/330/ABB59DC9CC8954D06D80D1D256276647:DBBD2467A0ACAE493D6F848DB65FCC6480D9F2B080C12195F7F46231EBF5C2B4.20260624102355.94165018356808908037495587292676:50001231000000:2800:049E0D2C1FBBF68341EB0B2BCF431627F58846F2B0AB59909AEB08489997477D.png&quot; alt=&quot;cke_3468.png&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>h691938207</author><pubDate>Mon, 17 Aug 2026 17:38:05 GMT</pubDate></item><item><title>deveco codegenie无法使用</title><link>https://bbs.itying.com/topic/6a83420ab9a4090042a384e2</link><guid>https://bbs.itying.com/topic/6a83420ab9a4090042a384e2</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;deveco codegenie无法使用
昨天还能用，今天就一直加载，没有反应；有时会深度思考，执行一步就停滞了。重新装了系统，问题还是一样的。&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/300/072/407/472D0AFEF1A54BD7A3AFBED395E72C31:32E16CD18B6E65368968F77088D5A44CF91FC78F152031D471A2EBB927F56363.20260624115744.68755260587347633058251231564519:50001231000000:2800:5FBACBA2EFD47FA363A49C0A1BF0BB104319DB9F1F3656E79AEDFBAB8AAB9C98.png&quot; alt=&quot;cke_1251.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/300/072/407/91190B7B2BA7CAC2CEED4349DA6ECDA7:BB6268DC25F72BEF54B959587238712E0A653E08F7E6F59BAA0EEFD671361FC1.20260624161600.96998501490028235926448084800179:50001231000000:2800:801A75332374AF2BF3429612C4D49C6A59CE4338F41747E3A50E993F5102E78D.png&quot; alt=&quot;cke_575.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/300/072/407/472D0AFEF1A54BD7A3AFBED395E72C31:32E16CD18B6E65368968F77088D5A44CF91FC78F152031D471A2EBB927F56363.20260624115702.22067160999486619013360438720303:50001231000000:2800:C0AE0BC45FF6D9BE47DF17DBC94F152300CFF09853B312623BCD675DDDE5CA5D.png&quot; alt=&quot;cke_365.png&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/300/072/407/472D0AFEF1A54BD7A3AFBED395E72C31:32E16CD18B6E65368968F77088D5A44CF91FC78F152031D471A2EBB927F56363.20260624115728.57410549819535203501004950184268:50001231000000:2800:C5CC76409B189F3CA6FDC792BEA62003FD7874BC7BE675E9FBD1A1126DC99AC2.png&quot; alt=&quot;cke_718.png&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>yuanlaile</author><pubDate>Mon, 17 Aug 2026 17:16:58 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next中用户认证界面怎么自定义调整样式</title><link>https://bbs.itying.com/topic/6a833d0eb9a4090042a384dd</link><guid>https://bbs.itying.com/topic/6a833d0eb9a4090042a384dd</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next中用户认证界面怎么自定义调整样式&lt;/p&gt;
&lt;h2&gt;WidgetParam参数也不支持，比如修改指纹/人脸图标等，用户认证界面现在是系统弹窗，怎么修改这个弹窗&lt;/h2&gt;
&lt;/div&gt;</description><author>bupafengyu</author><pubDate>Mon, 17 Aug 2026 16:55:42 GMT</pubDate></item><item><title>DevEco Studio是没有HarmonyOS 鸿蒙Next版本吗?</title><link>https://bbs.itying.com/topic/6a8333780a64c600432b05a7</link><guid>https://bbs.itying.com/topic/6a8333780a64c600432b05a7</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;DevEco Studio是没有HarmonyOS 鸿蒙Next版本吗?
在deveco官网只看到windows和macOS的版本，如图
&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/948/516/691/244B83CE82AB2BFC6F2D2CE3D1C91BD8:B562D7F8066461F953587900F36CF47DBCC5583465F6F5B7CCF4AFB3BCF1B350.20260624154521.17297574590622732738441812022554:50001231000000:2800:412A984C6A948751614471E6D4B542C1A5D2B24AABB76457C478DD68BA8F5059.jpg&quot; alt=&quot;图片&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>caililin</author><pubDate>Mon, 17 Aug 2026 16:14:48 GMT</pubDate></item><item><title>HarmonyOS鸿蒙Next 7开发者版本我不想更新了怎么关闭啊</title><link>https://bbs.itying.com/topic/6a832e69b9a4090042a384c8</link><guid>https://bbs.itying.com/topic/6a832e69b9a4090042a384c8</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS鸿蒙Next 7开发者版本我不想更新了怎么关闭啊
这个鸿蒙 7 开发者版本我不想更新了 怎么关闭啊  怎么才能关闭 不再提示了
&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/714/820/528/62F46B82E6889531B402B421402AB34A:C6A0C28029B27FFED0B6B8F0F0DD46BD2B6AF4D4C95689F1D79478A1A3A63727.20260618004709.50581899685234077953552994577865:50001231000000:2800:EA2B401708492E20BBA035DA3F616206EB21EE5F8B09DC61D0CE5A46C7A10D60.jpg&quot; alt&gt;
&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/714/820/528/62F46B82E6889531B402B421402AB34A:C6A0C28029B27FFED0B6B8F0F0DD46BD2B6AF4D4C95689F1D79478A1A3A63727.20260618004709.41636080948593203843968878934468:50001231000000:2800:C3E5BAE87B777E983D897F9807D335FEF0783A6098DB3B27EDBFAB16FFA44E38.jpg&quot; alt&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>songsunli</author><pubDate>Mon, 17 Aug 2026 15:53:13 GMT</pubDate></item><item><title>HarmonyOS 鸿蒙Next中关于开发应用时候的reason字段填写</title><link>https://bbs.itying.com/topic/6a83296d0a64c600432b0587</link><guid>https://bbs.itying.com/topic/6a83296d0a64c600432b0587</guid><description>&lt;div class=&quot;markdown-text&quot;&gt;&lt;p&gt;HarmonyOS 鸿蒙Next中关于开发应用时候的reason字段填写
如下图是中文的reason字段填写规范，那么如果是英文的话他并不能满足第二条吧特别是“用于…”的句式，还是有英文相关的reason字段规范呢&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://alliance-communityfile-drcn.dbankcdn.com/FileServer/getFile/cmtybbs/527/455/115/BEF851C0273E559085257BDC795BDE04:45A3DE6BF341C6510C0861D44F4C8797385B7EE6178B99E2A1EF64FDE0F56BB6.20260624154624.32320128808262411144227812616190:50001231000000:2800:AD5FFA316C9CA69E1A321DB2D5F9019ED8009D50B16B5CC11CEFC0D981AF1185.png&quot; alt=&quot;cke_219.png&quot;&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>gougou168</author><pubDate>Mon, 17 Aug 2026 15:31:57 GMT</pubDate></item></channel></rss>