上篇介绍了开发环境准备,这篇文章将介绍下微信小程序代码提交,发布上线过程,重点介绍下过程中遇到的坑以及解决方法。
1.发布上线
1.1代码上传
在完成小程序的本地调试之后,如果您准备将其更新并发布上线,可以通过点击工具栏右上角的【上传】按钮提交代码。在上传前,请仔细核对版本号等相关信息,确保所有细节无误后进行提交。
上传完成后,微信开发者工具将自动执行代码质量扫描。针对扫描过程中发现的问题,您可以根据提供的指引进行相应的调整与优化。我已经在文章的后半部分总结了我在开发过程中遇到的一些常见问题及解决办法,希望能对你有所帮助。
1.2提交审核
代码上传后,登录微信公众平台(https://mp.weixin.qq.com/)。在管理菜单下版本管理子菜单中,开发版本中,可以看到刚刚上传的版本。点击提交审核,进入提交审核版本维护页面。
根据平台要求,请填写版本描述信息,并上传小程序的截图或视频(虽然这些是非必填项,但建议您提供,因为这有助于加快审核流程)。同时,维护好测试账号和相关的测试备注。此外,您可以选择是否使用加急服务(每年有一次加急机会)。
提交完之后,可以在审批版本中查看审核结果。审核结果也可以在微信的【服务通知】上看到。审核官方给定的是1~7天,大部分情况下是上午提交下午审核完,下午提交第二天上午会审核完,快的情况下1个小时内就审核完了。周末也有人审核哦,只不过相对工作日会慢一些。
1.3发布上线
审核通过后,版本仍需经过发布步骤才能正式上线。在发布时,您可以选择全量发布或灰度发布的方式。
2.碰到的坑及解决方案
2.1代码质量问题
1)图片和音频资源大小超过200K
官方建议:小程序代码包里可以存放一些必要的静态资源(如tabbar的icon等);但其他非必要的静态资源体积过大会影响小程序代码包加载速度。因此我们建议图片、音频等静态资源体积大小超过200K时,将它们上传到CDN,用URL引入会是个更好的选择。
总结:为了优化小程序的性能,建议尽量减少小程序包中静态资源的数量。对于必要的资源,应先进行压缩处理。非必要的资源可以放置在CDN上,并通过URL进行引用。图片压缩可以参考我之前分享的免费又好用的国产AI图片处理工具。
2)组件未按需注入
解决方案:为了实现按需注入,请在配置文件中进行相应设置。具体操作如下:在项目根目录下找到 manifest.json 文件,打开该文件的源码视图,在 mp-weixin 节点下添加或修改配置项 "lazyCodeLoading": "requiredComponents"。
3)主包尺寸应小于1.5M
官方建议:小程序代码包单个包大小限制为2M。因此我们建议开发者在开发时,如果遇到单包体积大于1.5M的情况,可以采取分包的方式,把部分代码拆分到分包去,降低单个包的体积,提升小程序的加载速度。具体可以查看文档《使用分包》。
总结:当主包文件过大时,建议进行拆包处理,即将 pages 目录下的部分功能拆分到 subPackages 目录下,建议尽早按照模块进行拆包(后期拆分相对麻烦些,需要改文件路径)。具体操作方法是:修改项目根目录下的配置文件 pages.json,将需要拆分的页面从 pages 目录迁移到 subPackages 目录中。
4)存在无依赖文件
官方建议:【必须】在「代码质量」面板,点击「建议去除」后,可以打开代码依赖分析面板的「无依赖文件」页面,这里可以看到代码包里没有被用到的文件。请在代码包中去除这部分文件,减小体积并优化加载速度。
在本地开发的过程中,会自动过滤无依赖的文件,如果出现误过滤的情况,可以在 project.config.json 的 setting 字段中添加 ignoreDevUnusedFiles 为 false,也可以在 packOptions 的 include 字段中手动将被忽略的文件引入,同时欢迎发帖反馈误报的情况提交代码片段帮助我们完善此功能
总结:根据【代码质量】面板中查看并去掉「无依赖文件」。在微信开发者工具右上角【详情】,点击【本地设置】勾选 上传时过滤无依赖文件 ,同时建议将自动压缩样式文件、脚本文件、wxml文件一并勾选上。
2.2版本审核问题
1)未设置主营类目,无法提交审核
解决方案:在基本设置下找到服务类目,点击详情,设置主营类目即可。
2) 默认自动同意《用户服务协议》及《隐私政策》
解决方案:设置协议勾选框,且默认未勾选,用户勾选后才允许点击登录按钮。
3)小程序账号登录功能暂未符合规范要求,请在用户了解体验小程序功能后,再要求用户进行账号登录
解决方案:需要开放一部分无需登录即可体验的功能,再由用户主动点击进一步功能触发登录授权。
4)小程序涉及收集、存储用户身份信息
解决方案:对于个人开发者而言,这一问题基本无解,因为微信平台政策不允许记录用户的手机号、邮箱等个人信息,而是要求转向企业开发者来处理这些信息。不过,在某些情况下,如为了方便跟踪反馈处理情况,申请临时存储用户电话的等信息,偶尔能够获得批准。
最后介绍下我开发了两款微信小程序:趣味知识宝典、萌娃成长,大家可以免费使用,多多支持下!
趣味知识宝典:一款知识学习工具,在趣味中学习知识,包括成语(包含成语拼音、释义、出处、语法、例句、近义词、反义词、故事(寓言故事、历史典故)等,按照寓言、高考(近10年)、时间等多维度分类),科普知识(十万为什么),谜语(猜字谜、脑筋急转弯)等。
萌娃成长:育儿好帮手,奶瓶喂养、母乳亲喂、辅食喂养、补剂用药、换尿不湿、睡眠记录、身高体重、疫苗接种、发育评估(DQ)统统搞定,记录宝宝成长每个瞬间,与宝妈奶爸一起交流育儿经验,与萌娃一起健康快乐成长。
未完待续,下一篇将介绍微信登陆!