以下只适用于初次接触小程序 -.-

  1. 模仿手机端操作

    工具自带网络切换和前后台切换。

    \图片1.png

    \图片2.png

  2. 编译模式

    工具自带编译模式可以自行定义进入页面方式,而不用每次都从首页index进入。

    \图片3.png

  3. 线上只允许https连接

    小程序线上发布后只允许https连接,所以应尽量先配置好https服务器,并使用https连接;为了方便可以在开发中先关闭https硬性要求。

    \图片4.png

  4. 小程序站内只允许访问配置过的api服务器地址

    除了小程序后台配置中设置的api请求地址,其他地址均不能在小程序内访问;比如:在获取到用户code后调用微信api获取openid操作只能在配置过的服务器api中调用获取,然后再由服务器返回openid。

  5. 加密不一样

    小程序http传到服务器端的音频文件是未加密的silk(base64码),通过https传输的是silk v3加密缓存文件。

  6. project.config.json不要随意修改

    当需要更换小程序appid时,不能直接在原有项目修改project.config.json文件里的appid参数,不然调用appsecret会提示appsecret不正确或者是用户的user_code不可用。 正确的做法应该是新建一个项目,用工具生成project.config.json。

    \图片5.png

  7. 音频暂停wx.pauseBackgroundAudio()

    调用音频暂停函数后,小程序音频将停止播放,但是下次执行wx.playBackgroundAudio(OBJECT),即使播放音频源不一样,只要上次播放的音频还未播放完,仍然会继续播放上次音频,直到播放完后才会播放目标音频。

  8. 录音wx.startRecord(OBJECT)与音频暂停wx.stopBackgroundAudio()的冲突

    (iphone端)当调用音频暂停函数时,微信内部会自行进行音频销毁处理,此时如果正在执行音频录音,会导致帧数跳低卡顿,卡顿后的录音音频会丢失。

  9. 避免全局污染

    不要过度依赖app.js全局类里面的globalData全局变量,跳转页面时最好传参方式,然后在跳转页面获取参数。

    \图片6.png

    \图片7.png

  10. 缓存时效性

    如果用户没有在手机上删除小程序缓存,则小程序缓存时间是永久缓存。

  11. 赋值差别对待

    小程序如果不涉及view页面的变量,最好直接赋值,而不要通过setData,setData会赋值并且渲染页面。

  12. 二维码参数限制

    小程序生成二维码参数scene最大数值不能超过32位,因此在设计uuid时候最好控制下长度。

  13. 审核要求(划重点)

    1. 小程序审核不允许主动拉取授权,只能用户手动操作去拉取授权。

    2 .需要处理用户授权拒绝情况。

    1. 小程序页面不允许有诱导性分享,以及公众号二维码。

    2. 小程序审核对于项目内容有很多限制,请确保开发需求能符合。
  14. 多逛逛论坛

    有不清楚的或者暂时无法解决的优先看下开发者社区有没有此类问题。 \图片8.png

happy coding!!!