小程序优化
- DNS 预解析域名
- 网络请求超时时间
- 超时时间
- 默认超时时间和最大超时时间都是 60s;
- 超时时间可以在 app.json 或 game.json 中通过 networktimeout 配置。
- 使用限制
- 返回值编码
- 建议服务器返回值使用 UTF-8 编码。对于非 UTF-8 编码,小程序会尝试进行转换,但是会有转换失败的可能。
- 小程序会自动对 BOM 头进行过滤(只过滤一个 BOM 头)
- 回调函数
- 只要成功接收到服务器返回,无论 statusCode 是多少,都会进入 success 回调。请开发者根据业务逻辑对返回值进行判断。
- 作用:周期性更新能够在用户未打开小程序的情况下,也能从服务器提前拉取数据,当用户打开小程序时可以更快地渲染页面,减少用户等待时间,增强在弱网条件下的可用性。
- 作用:预拉取能够在小程序冷启动的时候通过微信后台提前向第三方服务器拉取业务数据,当代码包加载完时可以更快地渲染页面,减少用户等待时间,从而提升小程序的打开速度 。
- 作用:根据系统主题展示不同的默认样式
- 兼容性:微信从 iOS 客户端 7.0.12、Android 客户端 7.0.13 开始正式支持 DarkMode,小程序也从基础库 v2.11.0、开发者工具 1.03.2004271 开始,为开发者提供小程序内的 DarkMode 适配能力
- 目前市面上的用户设备大致可分为小屏的手机端、中屏的平板、大屏的 PC 端三类,而在这三类设备中又会有细小的尺寸差别,也称作屏幕碎片化。
- 随着小程序能够在越来越多的设备终端上运行,开发者也应该针对不同的屏幕尺寸进行相应的适配。
- 当小程序需要打开另一个小程序让用户进行快捷操作时,可将要打开的小程序以半屏的形态跳转。
const appBaseInfo = wx.getAppBaseInfo();
console.log(appBaseInfo.SDKVersion);
console.log(appBaseInfo.enableDebug);
console.log(appBaseInfo.host);
console.log(appBaseInfo.language);
console.log(appBaseInfo.version);
console.log(appBaseInfo.theme);
wx.setEnableDebug({
enableDebug: true
});
wx.setEnableDebug({
enableDebug: false
});