适用对象:想快速开发微信小程序、计划用云开发、准备首次提审的个人开发者。 技术栈:微信小程序原生开发 + 微信云开发 + 云数据库。 项目:记账工具类小程序「老友们的进账本」。
最近用 AI 辅助做了一个微信小程序,功能不复杂:输入月薪自动拆算到日,手动录入自媒体/兼职等额外收入,按月生成统计。但从立项到提交审核,愣是踩了 7 个坑。
下面按时间线记录,每个坑都写清楚:现象 → 根因 → 解决 → 建议。希望下一位少走点弯路。
项目最开始叫「日进斗金」,后来决定改成「老友们的进账本」。结果代码里、文档里、脚本里到处都是旧名字。
微信小程序真正影响用户看到名字的只有两处:
project.config.json 里的 projectname(开发者工具显示)app.json 里的 navigationBarTitleText(用户顶部标题)这两个文件之外,README、脚本注释里的旧名不影响运行,但容易在以后维护时把人搞糊涂。
把两个配置文件改掉,其余文档用全局搜索替换统一处理。
起名要趁早。 注册小程序、备案、写代码前,先把名字定死。改一次名字,关联文档和脚本要全局搜一遍,避免留下旧名地雷。
现在微信小程序必须备案。提交后等审核,期间不能提审、不能预览,只能干着急。
备案是平台强制流程,开发者无能为力,只能等。
不依赖备案的工作提前做:
备案通过后,直接填 AppID、开云开发、测试、提审,一气呵成。
备案和其他工作并行做。 把等待时间变成开发时间,别卡在一个流程上。
新小程序直接弹广告,用户没有忠诚度,秒卸载。
广告变现不是功能一上线就要满上,而是要有节奏。微信激励视频广告时长由平台控制,开发者无法直接限制为 30 秒内。
设计上采用推广期免费次数 + 看广告继续的模式:
代码里用 adConfig.enabled 一个开关控制全局广告,开发模式关闭,上线后开通流量主再打开。
新用户先给甜头,再谈变现。 广告开关做成配置项,便于测试和上线后切换。
开通云开发后,代码里填了环境 ID,编译报错:Env Not Exists。
微信开发者工具导入项目时,会自动关联一个云开发环境。如果代码里硬编码了另一个环境 ID,就会冲突。
去掉 wx.cloud.init() 里的 env 参数,让微信自动选择当前环境。对于只有一个云环境的小程序,自动选择不会出错。
不要硬编码环境 ID。 尤其是首次开发时,环境可能重新创建,自动选择最稳妥。
云开发环境修好后,点「保存收入设置」仍然提示保存失败。
代码里保存数据前先调用 app.getOpenid(),这个函数依赖 login 云函数。但云函数还没部署到云端,整个数据库操作链就断了。
去掉手动获取 openid 的逻辑,改用数据库权限控制。把集合权限设为「仅创建者可读写」,系统会自动只返回当前用户的记录,不需要手动过滤。
能用数据库权限解决的事,不要额外调云函数。 减少依赖,就少一个失败点。
上传代码版本 1.0.0 后,点「提交审核」,弹窗提示「请先添加服务类目」。
微信小程序首次提审必须设置服务类目,至少 1 个,最多 5 个。
去公众平台设置服务类目,建议选「工具-记账」或「工具-计算器」,再把其中一个设为主营类目。
类目提前设好。 第一次提审前就把服务类目、主营类目、隐私指引都检查一遍,避免临门一脚被卡住。
类目设好后,提交审核时又弹出「用户隐私保护指引」设置。
如果选「采集用户隐私」,需要列出具体采集项(头像、位置、手机号等)。如果选「未采集」,但代码里实际调用了隐私接口,相关权限会被回收。
先在代码里全局搜索一遍隐私相关接口:
getUserProfilegetUserInfogetPhoneNumbergetLocation / chooseLocationchooseAddress确认没有调用后,再选「未采集用户隐私」。
隐私设置要诚实。 代码里实际调了什么就写什么,不要为了省事乱选,否则审核被驳回更麻烦。
广告变现代码虽然写好了,但新小程序不能立即开通流量主。微信规定:累计独立访客 UV ≥ 1000 才能开通。
所以首次提审时,广告功能保持关闭,先上线拉用户。达到 UV 门槛后,再创建广告位、替换广告单元 ID、打开开关、重新发布。
坑 | 教训 |
|---|---|
起名 | 尽早定,改了全局搜替换 |
备案 | 等待期间做其他不依赖备案的工作 |
广告策略 | 新用户先免费,再引导广告 |
环境 ID | 不硬编码,让微信自动选择 |
保存失败 | 用数据库权限替代手动获取 openid |
服务类目 | 首次提审必须提前设置 |
隐私设置 | 代码里没调隐私接口才能选「未采集」 |
整个开发过程用 AI 辅助写代码确实快,但平台规则、配置调试、提审流程这些坑,AI 也帮不了跳过。唯一能做的,就是把坑记下来,下回少踩。
如果你也在做个人小程序,欢迎交流。项目代码里的广告策略和云开发配置方案,可以在实际场景中复用。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。