本文主要介绍一下,开发(微信)小程序,我们需要知道哪些内容
基本概念
微信小程序可以认为是微信内的应用程序,只能用微信打开和浏览,即微信是小程序的宿主环境。由于小程序开发中用到的wxml、wxss、js与网页开发中的技术模型基本一直,从某种角度来说,小程序也是一种网页
目前,除了微信小程序外,其他平台也在加大对小程序的投入和探索:
小程序的主要特点
- 即用即走:不需要安装、卸载,不用重新登录注册
- 去中心化:可以通过多种途径获取(扫码、识别二维码、分享)
- 具备微信功能:拍照、扫描、支付等
- 开发、运营、流量成本低
小程序与网页开发的区别
网页 | 小程序 | |
---|---|---|
线程 | 单线程 | 渲染线程+脚本线程 |
浏览器API | 可用 | 不可用 |
运行环境 | PC/移动端 | Android / IOS / 开发者工具等 |
开发 | 浏览器、编辑器 | 微信开发流程 |
开发准备
注册小程序账号
进入微信公众平台
立即注册
-
选择账号类型
选择账号类型 -
填写邮箱密码
填写邮箱密码 -
激活邮箱
激活邮箱 选择主体类型
不同主体类型对应的账号能力不同-
完善信息
信息登记 认证审核
部分类型账号需要进行认证审核,审核通过前无法使用部分功能
注册成功后,该小程序会有一个对应的账号信息,包括AppID,用于后续的项目开发
用户身份
对于一个项目来说,有不同的人员构成。其中体验成员
一般为参与项目内测和体验的成员,如测试人员,但其不属于项目成员。
不同项目成员拥有不同的权限,从而保证小程序开发安全有序
微信公众平台
微信公众平台即对应项目的开发、管理、运营平台
一个小程序项目的管理员利用你的微信号,可以将你加入到对应项目中
通常,利用微信扫描登录二维码会看到当前微信号下的所有项目,即你加入了哪些项目
下面介绍微信公众平台中几个常用模块:
版本管理
一般,小程序开发会经历以下四个版本,最终成为用户使用的版本。
需要注意的是,每一次的上线都需要对版本号进行更新。一方面,这是一个良好的开发习惯和规范,另一方面,版本号在后期的日志查询方面也起到重要作用
统计
统计
就是对用户使用小程序的情况进行的收集分析。统计包含常规分析和自定义分析功能,如图:
自定义分析
也就是我们通常说的埋点,微信为开发者提供了埋点上报的功能,相关的埋点数据也可以在公众平台中查询。为了进一步了解用户使用小程序的情况(比如,用户点击下单按钮行为),需要开发者自定义一些埋点事件
如何进行自定义分析:
埋点需求:明确埋点需求,事件类型(点击、浏览等),上报参数(公共参数、私有参数)
-
创建事件:包括填写配置和API上报两种方式,要注意事件名称的规范性
API上报 代码埋点(API上报):根据事件类型在代码中埋点,调用微信提供的上报方法wx.reportAnalytics
测试发布:保存并测试 -> 选择测试开发者 -> 事件配置同步到所选开发者的设备上 -> 打开设备进行对应操作 -> 同步结果 -> 查看上报详情
上述方法测试时有一定的延迟,相对来说比较麻烦耗时
另一种方法:通过小程序的开发调试日志查看是否上报成功
注意:创建完事件后要及时发布!-
分析数据
分析数据
开发管理
在开发管理中需要注意的两个部分:
- 错误查询:开发者可以在这里快速查询小程序最近出现的具体错误内容,了解错误概况信息,以便快速修复问题
- 实时日志:帮助开发者快捷地排查小程序漏洞、定位问题
- 性能监控:加载性能、接口使用情况
- 告警设置:超过告警阈值即告警,可设置阈值
- 测试:耗时情况
- AppID:小程序ID,微信客户端用来确定小程序的身份,使用微信提供的高级接口,可以公开
- AppSecret:小程序密钥,保密,放在服务器端,不能放在客户端。需要什么内容由服务器端处理好之后返回给客户端
- 服务器域名:小程序可以访问的外部网站,可以上传和下载文件。但是对象服务器不是任意的,需要事先设置通讯域名,小程序只可以跟指定的域名进行网络通信。出于安全考虑,
api.weixin.qq.com
不能被配置为服务器域名,相关API也不能在小程序内调用
开发工具
为了方便微信小程序的开发调试,微信为我们提供微信开发者工具(IDE)
,点击下载
小程序调试
-
预览 :包括二维码预览和自动预览(shift + command + P),自动预览支持手机端和PC端预览调试
自动预览 - 真机调试:远程调试、查看连接情况、错误信息等
-
编译模式:自定义编译条件,调试不同启动页面和启动参数
编译模式 -
调试基础库:每一个基础库都只能在对应的客户端版本上运行
调试基础库
调试工具
- Wxml:页面结构样式调整
- Console:输入和调试代码、错误日志
- Sources:当前项目处理后的脚本文件
- Network:请求响应情况
- AppData:当前项目运行时小程序的具体数据,可以编辑数据并反馈到界面上
- Storage:数据存储情况,可进行增删改查
- Sensor:模拟地理位置、调试重力感应 API
- Audits:体验评分(性能、体验、最佳实践)
......
IDE使用
首次使用开发者工具的时候需要使用微信扫码登录
可以选择新建项目:如果已经完成小程序账号的注册,可以直接到公众平台中拿到AppID;如果没有,可以使用测试号(暂时使用)
也可以导入已有的项目:
原生项目结构
新建项目后,微信为我们提供了一个项目模板:
├── pages # 存放渲染页面
│ └── index # 首页文件
│ ├── index.js
│ ├── index.json
│ ├── index.wxml
│ └── index.wxss
│ └── logs
│ ├── logs.js
│ ├── logs.json
│ ├── logs.wxml
│ └── logs.wxss
├── utils # 公共js文件
│ └── util.js
├── app.js # 配置小程序页面
├── app.json
├── app.wxss
├── project.config.json # 项目配置文件(同IDE「详情」)
├── sitemap.json # 配置小程序及其页面是否允许被微信索引
已上