CryptoManager.getLatestUserKey(Object object)

基础库 2.17.3 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:不支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

相关文档: 微信小程序加密网络通道

功能描述

获取最新的用户加密密钥

参数

Object object

属性 类型 默认值 必填 说明
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

object.success 回调函数

参数
Object res
属性 类型 说明
encryptKey string 用户加密密钥
iv string 密钥初始向量
version number 密钥版本
expireTime number 密钥过期时间

示例代码

const userCryptoManager = wx.getUserCryptoManager()
userCryptoManager.getLatestUserKey({
  success: res => {
    const {encryptKey, iv, version, expireTime} = res
    console.log(encryptKey, iv, version, expireTime)
  }
})

CryptoManager

基础库 2.17.3 开始支持,低版本需做兼容处理。

相关文档: 微信小程序加密网络通道

用户加密模块

方法

UserCryptoManager.getLatestUserKey()

获取最新的用户加密密钥

UserCryptoManager.getRandomValues(Object object)

获取密码学安全随机数

PreDownloadSubpackageTask.onProgressUpdate(function listener)

基础库 2.27.3 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

功能描述

监听分包加载进度变化事件

参数

function listener

分包加载进度变化事件的监听函数

参数

Object res
属性 类型 说明
progress number 分包下载进度百分比
totalBytesWritten number 已经下载的数据长度,单位 Bytes
totalBytesExpectedToWrite number 预期需要下载的数据总长度,单位 Bytes

微信小程序PreDownloadSubpackageTaskwx.preDownloadSubpackage(Object object)

基础库 2.27.3 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:不支持

微信小程序插件:不支持

微信 Windows 版:支持

微信 Mac 版:支持

微信 鸿蒙 OS 版:支持

功能描述

触发分包预下载。

参数

Object object

属性 类型 默认值 必填 说明
packageType string 分包的类型。目前仅支持填 “workers”,表示 workers 分包。
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

返回值

PreDownloadSubpackageTask

预下载分包任务实例,用于获取分包预下载状态

注意事项

  • wx.preDownloadSubpackage 目前只开放了下载 worker 分包的能力,还不支持下载普通类型的分包。

示例代码

// 首先要在 app.json / game.json 中配置workers作为分包
{
  "workers": {
    "path": "myWorkersFolder",
    "isSubpackage": true  // true 表示把 worker 打包为分包。默认 false。填 false 时等同于 { "workers": "myWorkersFolder" }
  }
}
// 然后调用 wx.preDownloadSubpackage 下载 worker 分包,下载成功后才可以创建 worker
var task = wx.preDownloadSubpackage({
  packageType: "workers",
  success(res) {
    console.log("load worker success", res)
    wx.createWorker("myWorkersFolder/request/index.js")   // 创建 worker。 如果 worker 分包没下载完就调 createWorker 的话将报错
  },
  fail(res) {
    console.log("load worker fail", res)
  }
})

task.onProgressUpdate(res => {
  console.log(res.progress) // 可通过 onProgressUpdate 接口监听下载进度
  console.log(res.totalBytesWritten)
  console.log(res.totalBytesExpectedToWrite)
})

PerformanceObserver.observe(Object options)

基础库 2.11.0 开始支持,低版本需做兼容处理。

微信小程序插件:不支持

功能描述

开始监听性能指标数据。

参数

Object options

设置 type 监听单个类型的指标,设置 entryTypes 监听多个类型指标。

属性 类型 默认值 必填 说明
type string 指标类型。不能和 entryTypes 同时使用
合法值 说明
navigation 路由
render 渲染
script 脚本
loadPackage 代码包下载
entryTypes Array.<string> 指标类型列表。不能和 type 同时使用。

PerformanceObserver

基础库 2.11.0 开始支持,低版本需做兼容处理。

PerformanceObserver 对象,用于监听性能相关事件

属性

Array supportedEntryTypes

获取当前支持的所有性能指标类型

方法

PerformanceObserver.observe(Object options)

开始监听

PerformanceObserver.disconnect()

停止监听

PerformanceEntry

相关文档: 性能优化

单条性能数据。具体数据口径请参考性能数据文档

属性

string entryType

指标类型

entryType 的合法值

说明 最低版本
navigation 路由
render 渲染
script 脚本

string name

指标名称

name 的合法值

说明 最低版本
appLaunch 微信小程序启动耗时。(entryType: navigation)
route 路由处理耗时。(entryType: navigation)
firstRender 页面首次渲染耗时。(entryType: render)
firstPaint 页面首次绘制(FP)时间点,无 duration。(iOS 不支持)(entryType: render) 2.21.2
firstContentfulPaint 页面首次内容绘制(FCP)时间点,无 duration。(iOS 14.5 以下版本不支持)(entryType: render) 2.21.2
largestContentfulPaint 页面最大内容绘制(LCP)时间点,无 duration。(iOS 不支持)(entryType: render) 2.23.1
evaluateScript 逻辑层 JS 代码注入耗时。(entryType: script)
downloadPackage 代码包下载耗时。(entryType: loadPackage) 2.24.0
resourceTiming 视图层资源加载耗时。(entryType: resource) 2.24.0

number startTime

开始时间,不同指标的具体含义会有差异。

number duration

耗时 ms。仅对于表示阶段的指标有效。

string path

页面路径。仅 render 和 navigation 类型指标有效。

number referrerPath

基础库 2.23.1 开始支持,低版本需做兼容处理。

页面跳转来源页面路径。仅 route 指标有效。

number pageId

基础库 2.23.1 开始支持,低版本需做兼容处理。

path 对应页面实例 Id(随机生成,不保证递增)。仅 render/navigation 指标有效。

number referrerPageId

基础库 2.23.1 开始支持,低版本需做兼容处理。

referrerPath对应页面实例 Id(随机生成,不保证递增)。仅 route 指标有效。

number navigationStart

路由真正响应开始时间。仅 navigation 类型指标有效。

string navigationType

路由详细类型,与微信小程序路由方法对应。仅 navigation 类型指标有效。

string moduleName

分包名,主包表示为 APP (2.21.2 开始)。仅 evaluateScript 指标有效。

Array. fileList

基础库 2.21.2 开始支持,低版本需做兼容处理。

注入文件列表。仅 evaluateScript 指标有效。

number viewLayerReadyTime

基础库 2.21.2 开始支持,低版本需做兼容处理。

渲染层代码注入完成时间。仅 firstRender 指标有效。

number initDataSendTime

基础库 2.21.2 开始支持,低版本需做兼容处理。

首次渲染参数从逻辑层发出的时间。仅 firstRender 指标有效。

number initDataRecvTime

基础库 2.21.2 开始支持,低版本需做兼容处理。

首次渲染参数在渲染层收到的时间。仅 firstRender 指标有效。

number viewLayerRenderStartTime

基础库 2.21.2 开始支持,低版本需做兼容处理。

渲染层执行渲染开始时间。仅 firstRender 指标有效。

number viewLayerRenderEndTime

基础库 2.21.2 开始支持,低版本需做兼容处理。

渲染层执行渲染结束时间。仅 firstRender 指标有效。

string packageName

基础库 2.24.0 开始支持,低版本需做兼容处理。

代码包名称。仅 downloadPackage 指标有效。

number packageSize

基础库 2.24.0 开始支持,低版本需做兼容处理。

代码包大小。仅 downloadPackage 指标有效。

string uri

基础库 2.24.0 开始支持,低版本需做兼容处理。

资源路径。仅 resourceTiming 指标有效。

string initiatorType

基础库 2.24.0 开始支持,低版本需做兼容处理。

初始化性能条目的资源类型。仅 resourceTiming 指标有效。

initiatorType 的合法值

说明 最低版本
audio 音频
cover-image cover-image 组件的图片
image 组件的图片
open-data 组件的图片

number transferSize

基础库 2.24.0 开始支持,低版本需做兼容处理。

表示获取资源的大小(以八位字节为单位)的数字。仅 resourceTiming 指标有效。(iOS 不支持)

number domainLookupStart

基础库 2.24.0 开始支持,低版本需做兼容处理。

解析域名开始时间。仅 resourceTiming 指标有效。

number domainLookupEnd

基础库 2.24.0 开始支持,低版本需做兼容处理。

解析域名结束时间。仅 resourceTiming 指标有效。