现状定位与迁移
基于百度智能小程序(SWAN)· 核于 2026-07
速查
- 现状结论(如实):仍在线可用,但已进入维护 / 收缩期——投入远不及微信,新项目不建议以百度为主战场;这是投入收缩的综合判断,并非官方宣布停运
- 规模曲线:2018-07 上线 → 2 个月 MAU 破亿 → 2019-07 MAU 2.5 亿 → 2020-09 MAU 峰值 5 亿 → 2024-06 约 3.97 亿、行业第三(微信 > 支付宝 > 百度),已「淡出头部」
- 收缩信号:百度全面 all-in AI(文心 / ERNIE),资源向大模型 / 智能云倾斜;GitHub
swan-team活跃度低;官方文档站在线但更新节奏放缓 - 表述纪律:做题 / 教学用「投入收缩 / 淡出头部」,不要说「已停运」;官方渠道仍可注册开发
- 与微信四大差异:后缀
.swan/.css、指令s-、APIswan.*、分发靠百度搜索 / 信息流(微信靠社交裂变) - 特色能力差异:百度深度 AI(
swan.ai.*OCR / 人脸 / 语音)+ DuMixAR + 开源联盟跨端;微信生态最全 + 社交裂变 - 迁移工具
wx2swan:官方系,自动把wx.*→swan.*、.wxml→.swan;常无法开箱即跑,需人工过报告 wx2swan已知坑:不支持require('utils.js')(须改./utils.js)、不支持动态 require、须移除usingComponents里的插件、不支持miniprogram_npm、不支持的 API 会被直接删除
一、现状定位(2026,如实)
结论:百度智能小程序仍在线、仍可注册开发,但已明显进入维护 / 收缩期,投入远不及微信,新项目不建议以它为主战场。
规模曲线(均为公开数据):
| 时间 | 里程碑 |
|---|---|
| 2018-07 | 百度 Create 大会上线;2 个月 MAU 破亿 |
| 2018-12 | 框架宣布「全面开源」,组建开源联盟(H5 态跨端) |
| 2019-07(一周年) | MAU 2.5 亿、入驻小程序 15 万、开发者 8 万+ |
| 2020-09 | MAU 峰值 5 亿,240+ 小程序月活过百万 |
| 2024-06 | MAU 约 3.97 亿、行业第三(微信 9.3 亿 > 支付宝 6.64 亿 > 百度),已「淡出头部」 |
收缩信号(均为交叉可查的公开信号,非官方停运声明):
- 百度公司层面全面 all-in AI:资源明显向文心大模型 / 智能云倾斜,传统搜索承压。
- GitHub
swan-team组织仓库少、活跃度低。 - 官方文档站仍在线,但未见重大版本更新节奏。
表述纪律(重要):以上「收缩」结论是基于公开数据 + 百度战略转向 AI 的综合判断,百度并未正式宣布下线,官方渠道仍可注册开发。做题 / 教学时宜用「投入收缩 / 淡出头部 / 存量维护」,切勿表述为「已停运 / 已关闭」。定位它时,宜作为「微信之外的第二 / 第三平台」与「SWAN 差异点」考点,而非主流生产平台。
二、与微信的关键差异(重点考点)
| 维度 | 百度智能小程序 | 微信小程序 |
|---|---|---|
| 框架 | SWAN(源自百度 San.js) | 微信自研 |
| 模板后缀 | .swan | .wxml |
| 样式后缀 | .css | .wxss |
| API 前缀 | swan.* | wx.* |
| 条件渲染 | s-if / s-elif / s-else | wx:if / wx:elif / wx:else |
| 列表渲染 | s-for / s-for-index / s-for-item / s-key | wx:for / wx:for-index / wx:for-item / wx:key |
| 事件绑定 | bind / catch + 全小写(同微信) | bind / catch + 全小写 |
| 生命周期 | onLaunch / onLoad / onReady…(同微信) | 同左 |
| 登录 | swan.login → code;Web 态用 onLogin() 钩子 | wx.login → code |
| 主分发入口 | 百度搜索 / 信息流(搜索直达、语音直达、寻址单卡) | 社交(分享、群、朋友圈) |
| 特色能力 | 深度 AI(swan.ai.* OCR / 人脸 / 语音)、DuMixAR、开源联盟跨端 | 生态最全、社交裂变 |
| 生态 / 投入 | 收缩,淡出头部 | 主导,持续高投入 |
一句话记忆:「后缀 swan、指令 s-、API swan.、靠搜索分发」——四点抓住即可与微信区分。语法与生命周期同构(详见 SWAN 框架与模板),差异化能力见 API 与分发。
三、wx2swan 迁移工具
因为百度智能小程序与微信高度同构,百度官方系提供了 wx2swan(npm 包)帮助把微信小程序项目自动转成 SWAN:主要做 wx.* → swan.* 的 API 替换、.wxml → .swan 的模板转换等。
但它常常无法开箱即跑,转换后需要人工过一遍报告(工具会生成 error / info / warning 报告)。已知的坑点:
- 不支持
require('utils.js'):相对路径的require须改成./utils.js形式。 - 不支持动态
require。 - 须移除
usingComponents里的插件:插件类引用需要手工处理。 - 不支持
miniprogram_npm:微信的 npm 构建产物目录不被识别。 - 遇到不支持的 API 会被直接删除:转换时若某 API 在百度侧无对应实现,工具会直接删掉相关调用,需人工在报告里逐条确认补齐。
因此迁移的正确姿势是:跑 wx2swan 做批量粗转,再人工按报告逐项修复,重点检查 require 路径、插件、npm 依赖与被删除的 API。
四、给学习者的定位建议
- 要不要学:作为「小程序平台差异」知识点值得了解,尤其 SWAN 的
s-指令、swan.ai.*AI 能力、搜索分发这三个独特点;但不建议投入等同微信的精力。 - 要不要上生产:若目标用户在百度 App 生态、或需要百度搜索 / AI 能力,可作为第二 / 第三平台补充;一般 C 端新项目优先微信。
- 怎么记:把它理解成「换了后缀和前缀、靠搜索分发、带 AI 能力的类微信小程序」即可。