# API 总览

  • 当前多端 SDK 对齐小程序基础库的版本是 3.2.5,即基础库版本大于 3.2.5 的小程序 JSAPI 在多端模式下尚不支持,其他通用接口的接口文档可查看 小程序 API 文档中心,如果与应用 API 有所区别的即可点击跳转对应接口文档
  • 是否支持:指的是是否适用于多端框架;由于和小程序是同源 API,“否“表示的是只支持小程序环境中使用,不适用于多端框架使用
  • 如果测试出现了不符合预期的情况,可先检查一下 SDK 是否已经是最新的,以及是否配置了扩展 SDK ,如自查依旧无法定位问题可联系社区小助手进行参考
  • 如开发者的 App 中需使用到下方标记的尚未支持的 API,可联系社区小助手进行需求反馈

图表中

[1]: 表示支持,但 API 返回的内容和小程序的存在差异

[1]: 表示不支持,原因是有替代方案

支持的类型

  1. 支持,但 API 返回内容有差异
  2. 支持,但交互行为存在差异
  3. 支持,但停止维护

不支持的原因

  1. 有其他替代方案
  2. 尚未支持,后续会支持
  3. 尚未支持,后续会支持,但是 API 含义会有差异
  4. 微信特有交互流程,后续不会支持
  5. 已废弃,后续不会支持
  6. 特定系统才有的 API,后续不会支持

补充:

# 基础

名称 功能说明 是否支持
wx.env 环境变量
wx.canIUse 判断应用的API,回调,参数,组件等是否在当前版本可用
wx.base64ToArrayBuffer 将 Base64 字符串转成 ArrayBuffer 对象 [3]
wx.arrayBufferToBase64 将 ArrayBuffer 对象转成 Base64 字符串 [3]

# 系统

名称 功能说明 是否支持
wx.getSystemInfo 获取系统信息 [1]
wx.openSystemBluetoothSetting 跳转系统蓝牙设置页 [2]
wx.openAppAuthorizeSetting 跳转系统授权管理页
wx.getAppAuthorizeSetting 获取 App 授权设置
wx.getWindowInfo 获取窗口信息
wx.getSystemSetting 获取设备设置
wx.getSystemInfoSync wx.getSystemInfo 的同步版本 [1]
wx.getSystemInfoAsync 异步获取系统信息 [1]
wx.getDeviceInfo 获取设备基础信息
wx.getAppBaseInfo 获取 App 基础信息 [1]

# 更新

名称 功能说明 是否支持
wx.updateWeChatApp 更新客户端版本 [4]
wx.getUpdateManager 获取全局唯一的版本更新管理器,用于管理小程序更新 [4]

# 生命周期

名称 功能说明 是否支持
wx.getLaunchOptionsSync 获取应用启动时的参数 [1]
wx.getEnterOptionsSync 获取本次应用启动时的参数 [1]

# 应用级事件

名称 功能说明 是否支持
wx.onUnhandledRejection 监听未处理的 Promise 拒绝事件
wx.onThemeChange 监听系统主题改变事件
wx.onPageNotFound 监听应用要打开的页面不存在事件
wx.onLazyLoadError 监听应用异步组件加载失败回调
wx.onError 监听应用错误事件
wx.onAudioInterruptionEnd 监听音频中断结束事件
wx.onAudioInterruptionBegin 监听音频因为受到系统占用而被中断开始事件
wx.onAppShow 应用切前台事件
wx.onAppHide 监听应用切后台事件
wx.offUnhandledRejection 取消监听未处理的 Promise 拒绝事件
wx.offThemeChange 取消监听系统主题改变事件
wx.offPageNotFound 取消监听应用要打开的页面不存在事件
wx.offLazyLoadError 取消监听应用异步组件加载失败回调
wx.offError 取消监听应用错误事件
wx.offAudioInterruptionEnd 取消监听音频中断结束事件
wx.offAudioInterruptionBegin 取消监听音频因为受到系统占用而被中断开始事件
wx.offAppShow 取消监听应用切前台事件
wx.offAppHide 取消监听应用切后台事件

# 调试

名称 功能说明 是否支持
wx.setEnableDebug 设置是否打开调试开关
wx.getRealtimeLogManager 获取实时日志管理器对象 [2],但日志只在本地生效,尚未有系统可以查询
wx.getLogManager 获取日志管理器对象 [2],但日志只在本地生效,尚未有系统可以查询

# 性能

名称 功能说明 是否支持
wx.reportPerformance 小程序测速上报 [2]
wx.preloadWebview 预加载下个页面的 WebView [2]
wx.preloadSkylineView 预加载下个页面所需要的 Skyline 运行环境 [2]
wx.preloadAssets 为视图层预加载媒体资源文件, 目前支持:font,image [2]
wx.getPerformance 获取当前应用性能相关的信息

# 加密

名称 功能说明 是否支持
wx.getUserCryptoManager 获取用户加密模块 [1],可使用安全网关替代

# 路由

名称 功能说明 是否支持
wx.switchTab 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
wx.reLaunch 关闭所有页面,打开到应用内的某个页面
wx.redirectTo 关闭当前页面,跳转到应用内的某个页面
wx.navigateTo 保留当前页面,跳转到应用内的某个页面
wx.navigateBack 关闭当前页面,返回上一页面或多级页面

# EventChannel

名称 功能说明 是否支持
EventChannel.emit 触发一个事件
EventChannel.off 取消监听一个事件
EventChannel.on 持续监听一个事件
EventChannel.once 监听一个事件一次,触发后失效

# 跳转

名称 功能说明 是否支持
wx.openEmbeddedMiniProgram 打开半屏小程序 [4]
wx.navigateToMiniProgram 打开另一个小程序 [4]
wx.navigateBackMiniProgram 返回到上一个小程序 [4]
wx.exitMiniProgram 退出当前小程序 [4]

# 转发

名称 功能说明 是否支持
wx.updateShareMenu 更新转发属性 [4]
wx.showShareMenu 显示当前页面的转发按钮 [4]
wx.showShareImageMenu 打开分享图片弹窗,可以将图片发送给朋友、收藏或下载 [4]
wx.shareVideoMessage 转发视频到聊天 [1]
wx.shareFileMessage 转发文件到聊天 [1]
wx.onCopyUrl 监听用户点击右上角菜单的「复制链接」按钮时触发的事件 [4]
wx.offCopyUrl 移除用户点击右上角菜单的「复制链接」按钮时触发的事件的监听函数 [4]
wx.hideShareMenu 隐藏当前页面的转发按钮 [4]
wx.getShareInfo 获取转发详细信息 [4]
wx.authPrivateMessage 验证私密消息 [4]

# 界面

# 交互

名称 功能说明 是否支持
wx.showToast 显示消息提示框
wx.showModal 显示模态对话框
wx.showLoading 显示 loading 提示框
wx.showActionSheet 显示操作菜单
wx.hideToast 隐藏消息提示框
wx.hideLoading 隐藏 loading 提示框
wx.enableAlertBeforeUnload 开启应用页面返回询问对话框
wx.disableAlertBeforeUnload 关闭应用页面返回询问对话框

# 导航栏

名称 功能说明 是否支持
wx.showNavigationBarLoading 在当前页面显示导航条加载动画
wx.setNavigationBarTitle 动态设置当前页面的标题
wx.setNavigationBarColor 设置页面导航条颜色
wx.hideNavigationBarLoading 在当前页面隐藏导航条加载动画
wx.hideHomeButton 隐藏返回首页按钮

# 背景

名称 功能说明 是否支持
wx.setBackgroundTextStyle 动态设置下拉背景字体、loading 图的样式
wx.setBackgroundColor 动态设置窗口的背景色

# Tab Bar

名称 功能说明 是否支持
wx.showTabBarRedDot 显示 tabBar 某一项的右上角的红点
wx.showTabBar 显示 tabBar
wx.setTabBarStyle 动态设置 tabBar 的整体样式
wx.setTabBarItem 动态设置 tabBar 某一项的内容,2.7.0 起图片支持临时文件和网络文件
wx.setTabBarBadge 为 tabBar 某一项的右上角添加文本
wx.removeTabBarBadge 移除 tabBar 某一项右上角的文本
wx.hideTabBarRedDot 隐藏 tabBar 某一项的右上角的红点
wx.hideTabBar 隐藏 tabBar

# 字体

名称 功能说明 是否支持
wx.loadFontFace 动态加载网络字体,文件地址需为下载类型

# 下拉刷新

名称 功能说明 是否支持
wx.stopPullDownRefresh 停止当前页面下拉刷新
wx.startPullDownRefresh 开始下拉刷新

# 滚动

名称 功能说明 是否支持
wx.pageScrollTo 将页面滚动到目标位置,支持选择器和滚动距离两种方式定位

# ScrollViewContext

名称 功能说明 是否支持
ScrollViewContext.scrollIntoView 滚动至指定位置
ScrollViewContext.scrollTo 滚动至指定位置

# 动画

名称 功能说明 是否支持
wx.createAnimation 创建一个动画实例 animation(Animation

# 置顶

名称 功能说明 是否支持
wx.setTopBarText 动态设置置顶栏文字内容 [5]

# 自定义组件

名称 功能说明 是否支持
wx.nextTick 延迟一部分操作到下一个时间片再执行

# 菜单

名称 功能说明 是否支持
wx.getMenuButtonBoundingClientRect 获取菜单按钮(右上角胶囊按钮)的布局位置信息 [2], App里不再呈现胶囊标识,该接口依旧返回相关坐标信息,便于开发者进行多端兼容

# 窗口

名称 功能说明 是否支持
wx.setWindowSize 设置窗口大小,该接口仅适用于 PC 平台 [6]
wx.onWindowResize 监听窗口尺寸变化事件 [6]
wx.offWindowResize 移除窗口尺寸变化事件的监听函数 [6]

# worklet 动画

名称 功能说明 是否支持
wx.worklet 获取 worklet 对象 [2]

# 网络

# 发起请求

名称 功能说明 是否支持
wx.request 发起 HTTPS 网络请求

# 下载

名称 功能说明 是否支持
wx.downloadFile 下载文件资源到本地 [2],下载允许的最大文件已调整为 2G

# 上传

名称 功能说明 是否支持
wx.uploadFile 将本地资源上传到服务器

# WebSocket

  • 下方 WebSocket 相关的 JSAPI 依赖扩展 SDK "Network SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:Android 和 iOS 的扩展 SDK 有所区别,详情查看 project.miniapp.json
名称 功能说明 是否支持
wx.sendSocketMessage 通过 WebSocket 连接发送数据
wx.onSocketOpen 监听 WebSocket 连接打开事件
wx.onSocketMessage 监听 WebSocket 接受到服务器的消息事件
wx.onSocketError 监听 WebSocket 错误事件
wx.onSocketClose 监听 WebSocket 连接关闭事件
wx.connectSocket 创建一个 WebSocket 连接
wx.closeSocket 关闭 WebSocket 连接

# mDNS

  • 下方 mDNS 相关的 JSAPI 依赖扩展 SDK "Network SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:Android 和 iOS 的扩展 SDK 有所区别,详情查看 project.miniapp.json
名称 功能说明 是否支持
wx.stopLocalServiceDiscovery 停止搜索 mDNS 服务
wx.startLocalServiceDiscovery 开始搜索局域网下的 mDNS 服务
wx.onLocalServiceResolveFail 监听 mDNS 服务解析失败的事件
wx.onLocalServiceLost 监听 mDNS 服务离开的事件
wx.onLocalServiceFound 监听 mDNS 服务发现的事件
wx.onLocalServiceDiscoveryStop 监听 mDNS 服务停止搜索的事件
wx.offLocalServiceResolveFail 取消监听 mDNS 服务解析失败的事件
wx.offLocalServiceLost 取消监听 mDNS 服务离开的事件
wx.offLocalServiceFound 取消监听 mDNS 服务发现的事件
wx.offLocalServiceDiscoveryStop 取消监听 mDNS 服务停止搜索的事件

# TCP 通信

  • 下方 TCP 通信相关的 JSAPI 依赖扩展 SDK "Network SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:Android 和 iOS 的扩展 SDK 有所区别,详情查看 project.miniapp.json
名称 功能说明 是否支持
wx.createTCPSocket 创建一个 TCP Socket 实例 支持

# UDP 通信

  • 下方 UDP 通信相关的 JSAPI 依赖扩展 SDK 「Network SDK」 ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:Android 和 iOS 的扩展 SDK 有所区别,详情查看 project.miniapp.json
名称 功能说明 是否支持
wx.createUDPSocket 创建一个 UDP Socket 实例 支持

# 支付

  • 需使用 wx.miniapp.requestPayment
  • iOS 的部分场景,需使用苹果内购 IAP(In-App Purchase),详情可查看wx.miniapp.IAP
  • 如果是 iOS ,则需要在项目中的 project.miniapp.json 配置勾选 「OpenFuns SDK(含支付)」这个扩展 SDK
名称 功能说明 是否支持
wx.requestPluginPayment 插件中发起支付 [1]
wx.requestPayment 发起微信支付 [1]

# 监听Scheme/UniversalLink进入多端App

名称 功能说明 是否支持
wx.miniapp.registOpenURL 监听通过Scheme/UniversalLink进入App的事件

# 数据缓存

  • 多端应用模式下,wx.setStorage 的限制有所提升,单个 key 允许存储的最大数据长度为 10MB,所有数据存储上限为 20MB
名称 功能说明 是否支持
wx.setStorageSync 将数据存储在本地缓存中指定的 key 中 支持
wx.setStorage 将数据存储在本地缓存中指定的 key 中 支持
wx.revokeBufferURL 根据 URL 销毁存在内存中的数据 支持
wx.removeStorageSync wx.removeStorage 的同步版本 支持
wx.removeStorage 从本地缓存中移除指定 key 支持
wx.getStorageSync 从本地缓存中同步获取指定 key 的内容 支持
wx.getStorageInfoSync wx.getStorageInfo 的同步版本 支持
wx.getStorageInfo 异步获取当前storage的相关信息 支持
wx.getStorage 从本地缓存中异步获取指定 key 的内容 支持
wx.createBufferURL 根据传入的 buffer 创建一个唯一的 URL 存在内存中 支持
wx.clearStorageSync wx.clearStorage 的同步版本 支持
wx.clearStorage 清理本地数据缓存 支持
wx.batchSetStorageSync 将数据批量存储在本地缓存中指定的 key 中 支持
wx.batchSetStorage 将数据批量存储在本地缓存中指定的 key 中 支持
wx.batchGetStorageSync 从本地缓存中同步批量获取指定 key 的内容 支持
wx.batchGetStorage 从本地缓存中异步批量获取指定 key 的内容 支持

# 周期性更新

名称 功能说明 是否支持
wx.setBackgroundFetchToken 设置自定义登录态,在周期性拉取数据时带上,便于第三方服务器验证请求合法性 [2]
wx.onBackgroundFetchData 监听收到 backgroundFetch 数据事件 [2]
wx.getBackgroundFetchToken 获取设置过的自定义登录态 [2]
wx.getBackgroundFetchData 拉取 backgroundFetch 客户端缓存数据 [2]

# 缓存管理器

名称 功能说明 是否支持
wx.createCacheManager 创建缓存管理器 [2]

# 数据分析

名称 功能说明 是否支持
wx.reportMonitor 自定义业务数据监控上报接口 [2]
wx.reportEvent 事件上报 [2]
wx.reportAnalytics 自定义分析数据上报接口 [2]
wx.getExptInfoSync 给定实验参数数组,获取对应的实验参数值 [2]

# 画布

名称 功能说明 是否支持
wx.createOffscreenCanvas 创建离屏 canvas 实例
wx.createCanvasContext 创建 canvas 的绘图上下文 CanvasContext(CanvasContext对象
wx.canvasToTempFilePath 把当前画布指定区域的内容导出生成指定大小的图片
wx.canvasPutImageData 将像素数据绘制到画布
wx.canvasGetImageData 获取 canvas 区域隐含的像素数据

# 媒体

# 地图

  • 如下支持的地图相关接口能力,需配置 LBS SDK ,且需前往腾讯位置服务平台注册开发者账号并创建应用 Key,详情可查看位置服务使用指南
名称 功能说明 是否支持
wx.createMapContext 创建 map上下文 MapContext对象 [2]

# MapContext

名称 功能说明 是否支持
MapContext.addArc 添加弧线,途经点与夹角必须设置一个
MapContext.addCustomLayer 添加个性化图层
MapContext.addGroundOverlay 创建自定义图片图层,图片会随着地图缩放而缩放
MapContext.addMarkers 添加 marker
MapContext.addVisualLayer 添加可视化图层
MapContext.fromScreenLocation 获取屏幕上的点对应的经纬度,坐标原点为地图左上角
MapContext.getCenterLocation 获取当前地图中心的经纬度
MapContext.getRegion 获取当前地图的视野范围
MapContext.getRotate 获取当前地图的旋转角
MapContext.getScale 获取当前地图的缩放级别
MapContext.getSkew 获取当前地图的倾斜角
MapContext.includePoints 缩放视野展示所有经纬度
MapContext.initMarkerCluster 初始化点聚合的配置,未调用时采用默认配置
MapContext.moveAlong 沿指定路径移动 marker,用于轨迹回放等场景
MapContext.moveToLocation 将地图中心移置当前定位点,此时需设置地图组件 show-location 为true
MapContext.on 监听地图事件
MapContext.openMapApp 拉起地图APP选择导航 [2]
MapContext.removeArc 删除弧线
MapContext.removeCustomLayer 移除个性化图层
MapContext.removeGroundOverlay 移除自定义图片图层
MapContext.removeMarkers 移除 marker
MapContext.removeVisualLayer 移除可视化图层
MapContext.setBoundary 限制地图的显示范围
MapContext.setCenterOffset 设置地图中心点偏移,向后向下为增长,屏幕比例范围(0.25~0.75),默认偏移为[0.5, 0.5]
MapContext.setLocMarkerIcon 设置定位点图标,支持网络路径、本地路径、代码包路径
MapContext.toScreenLocation 获取经纬度对应的屏幕坐标,坐标原点为地图左上角
MapContext.translateMarker 平移marker,带动画
MapContext.updateGroundOverlay 更新自定义图片图层

# 图片

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:在 iOS SDK >= 1.3.11 以及 开发者工具版本 >= 1.06.2405102,iOS Media SDK 已经被拆分为:Audio SDK、Video SDK、Image SDK、Camera SDK,开发者需按需勾选
名称 功能说明 是否支持
wx.saveImageToPhotosAlbum 保存图片到系统相册
wx.previewMedia 预览图片和视频 [2]
wx.previewImage 在新页面中全屏预览图片 [2],长按识别功能暂时还不支持
wx.getImageInfo 获取图片信息
wx.editImage 编辑图片接口 [2]
wx.cropImage 裁剪图片接口 [2]
wx.compressImage 压缩图片接口,可选压缩质量
wx.chooseMessageFile 从客户端会话选择文件 [4],可使用wx.miniapp.chooseFile代替
wx.chooseImage 从本地相册选择图片或使用相机拍照 是,已不维护;建议使用wx.chooseMedia

# 视频

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:在 iOS SDK >= 1.3.11 以及 开发者工具版本 >= 1.06.2405102,iOS Media SDK 已经被拆分为:Audio SDK、Video SDK、Image SDK、Camera SDK,开发者需按需勾选
  • 补充:iOS 应用中,如果使用wx.chooseMedia 则必须勾选 Video SDK
  • wx.compressVideo:Android SDK >= 1.4.13;iOS 尚未支持
名称 功能说明 是否支持
wx.saveVideoToPhotosAlbum 保存视频到系统相册
wx.getVideoInfo 获取视频详细信息
wx.createVideoContext 创建 video(video上下文 VideoContext(VideoContext对象
wx.compressVideo 压缩视频接口
wx.chooseVideo 拍摄视频或从手机相册中选视频
wx.chooseMedia 拍摄或从手机相册中选择图片或视频(需查看接口文档进行权限配置方可使用) [2]

# 音频

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:在 iOS SDK >= 1.3.11 以及 开发者工具版本 >= 1.06.2405102,iOS Media SDK 已经被拆分为:Audio SDK、Video SDK、Image SDK、Camera SDK,开发者需按需勾选
名称 功能说明 是否支持
wx.stopVoice 结束播放语音
wx.setInnerAudioOption 设置 InnerAudioContext 的播放选项
wx.playVoice 开始播放语音
wx.pauseVoice 暂停正在播放的语音
wx.getAvailableAudioSources 获取当前支持的音频输入源
wx.createWebAudioContext 创建 WebAudioContext
wx.createMediaAudioPlayer 创建媒体音频播放器对象 MediaAudioPlayer 对象,可用于播放视频解码器 VideoDecoder 输出的音频
wx.createInnerAudioContext 创建内部 audio 上下文 InnerAudioContext 对象
wx.createAudioContext 创建 audio 上下文 AudioContext 对象

# 背景音频

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:在 iOS SDK >= 1.3.11 以及 开发者工具版本 >= 1.06.2405102,iOS Media SDK 已经被拆分为:Audio SDK、Video SDK、Image SDK、Camera SDK,开发者需按需勾选
名称 功能说明 是否支持
wx.stopBackgroundAudio 停止播放音乐
wx.seekBackgroundAudio 控制音乐播放进度
wx.playBackgroundAudio 使用后台播放器播放音乐
wx.pauseBackgroundAudio 暂停播放音乐
wx.onBackgroundAudioStop 监听音乐停止事件
wx.onBackgroundAudioPlay 监听音乐播放事件
wx.onBackgroundAudioPause 监听音乐暂停事件
wx.getBackgroundAudioPlayerState 获取后台音乐播放状态
wx.getBackgroundAudioManager 获取全局唯一背景音频管理器

# 实时音视频

名称 功能说明 是否支持
wx.createLivePusherContext 创建 live-pusher 上下文 LivePusherContext 对象 [4]
wx.createLivePlayerContext 创建 live-player 上下文 LivePlayerContext 对象 [4]

# 录音

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 "Media SDK" 方可生效;
  • RecorderManager 相关接口还需要在 project.miniapp.json 配置下列权限方可生效
    • Android:「Android 权限描述配置」 -> 「允许应用程序录制音频」
    • iOS:「隐私信息访问许可描述」 -> 「麦克风」
名称 功能说明 是否支持
wx.stopRecord 停止录音
wx.startRecord 开始录音
wx.getRecorderManager 获取全局唯一的录音管理器 RecorderManager

# 相机

  • 图片、音视频、相机、相册、录音等多媒体相关 JSAPI 依赖扩展 SDK "Media SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
名称 功能说明 是否支持
wx.createCameraContext 创建 camera 上下文 CameraContext 对象

# 富文本

名称 功能说明 是否支持
EditorContext EditorContext 实例

# EditorContext

名称 功能说明 是否支持
EditorContext.blur 编辑器失焦,同时收起键盘
EditorContext.clear 清空编辑器内容
EditorContext.format 修改样式
EditorContext.getContents 获取编辑器内容
EditorContext.getSelectionText 获取编辑器已选区域内的纯文本内容
EditorContext.insertDivider 插入分割线
EditorContext.insertImage 插入图片
EditorContext.insertText 覆盖当前选区,设置一段文本
EditorContext.redo 恢复
EditorContext.removeFormat 清除当前选区的样式
EditorContext.scrollIntoView 使得编辑器光标处滚动到窗口可视区域内
EditorContext.setContents 初始化编辑器内容,html和delta同时存在时仅delta生效
EditorContext.undo 撤销

# 音视频合成

名称 功能说明 是否支持
wx.createMediaContainer 创建音视频处理容器,最终可将容器中的轨道合成一个视频 [2]

# 实时语音

名称 功能说明 是否支持
wx.updateVoIPChatMuteConfig 更新实时语音静音设置 [4]
wx.subscribeVoIPVideoMembers 订阅视频画面成员 [4]
wx.setEnable1v1Chat 开启双人通话 [4]
wx.onVoIPVideoMembersChanged 监听实时语音通话成员视频状态变化事件 [4]
wx.onVoIPChatStateChanged 监听房间状态变化事件 [4]
wx.onVoIPChatSpeakersChanged 监听实时语音通话成员通话状态变化事件 [4]
wx.onVoIPChatMembersChanged 监听实时语音通话成员在线状态变化事件 [4]
wx.onVoIPChatInterrupted 监听被动断开实时语音通话事件 [4]
wx.offVoIPVideoMembersChanged 移除实时语音通话成员视频状态变化事件的监听函数 [4]
wx.offVoIPChatStateChanged 移除房间状态变化事件的监听函数 [4]
wx.offVoIPChatSpeakersChanged 移除实时语音通话成员通话状态变化事件的监听函数 [4]
wx.offVoIPChatMembersChanged 移除实时语音通话成员在线状态变化事件的监听函数 [4]
wx.offVoIPChatInterrupted 移除被动断开实时语音通话事件的监听函数 [4]
wx.joinVoIPChat 加入 (创建) 实时语音通话 [4]
wx.join1v1Chat 加入(创建)双人通话 [4]
wx.exitVoIPChat 退出(销毁)实时语音通话 [4]

# 画面录制器

名称 功能说明 是否支持
wx.createMediaRecorder 创建 WebGL 画面录制器,可逐帧录制在 WebGL 上渲染的画面并导出视频文件 [2]

# 视频解码器

名称 功能说明 是否支持
wx.createVideoDecoder 创建视频解码器,可逐帧获取解码后的数据 [2]

# 位置

  • 如下支持的位置相关接口能力,需配置 LBS SDK ,且需前往腾讯位置服务平台注册开发者账号并创建应用 Key,详情可查看位置服务使用指南
  • wx.startLocationUpdateBackground 在 iOS 应用中使用前,需前往 project.miniapp.json 开启 「Location updates of Background Modes」,并且还需要填写对应的隐私信息许可描述,如下图
名称 功能说明 是否支持
wx.stopLocationUpdate 关闭监听实时位置变化,前后台都停止消息接收
wx.startLocationUpdateBackground 开启小程序进入前后台时均接收位置消息,需引导用户开启授权
wx.startLocationUpdate 开启小程序进入前台时接收位置消息
wx.openLocation 使用微信内置地图查看位置
wx.onLocationChangeError 监听持续定位接口返回失败时触发
wx.onLocationChange 监听实时地理位置变化事件,需结合 wx.startLocationUpdateBackground、wx.startLocationUpdate 使用
wx.offLocationChangeError 移除持续定位接口返回失败时触发
wx.offLocationChange 移除实时地理位置变化事件的监听函数
wx.getLocation 获取当前的地理位置、速度
wx.getFuzzyLocation 获取当前的模糊地理位置 [2]
wx.choosePoi 打开POI列表选择位置,支持模糊定位(精确到市)和精确定位混选 [2]
wx.chooseLocation 打开地图选择位置 [2]

# 文件

wx.openDocument 补充说明

  • 在 Android 端使用该接口实现在应用内部预览,需在 project.miniapp.json 中将 XWEB 扩展 SDK 勾上,并且 Android SDK 版本需大于或等于 1.4.10
  • 此外该接口在 Android 端使用时新增入参openInternal用于控制是否应用内打开文件(仅当开启xweb时生效);该值的枚举值为 truefalse
名称 功能说明 是否支持
wx.saveFileToDisk 保存文件系统的文件到用户磁盘,仅在 PC 端支持
wx.openDocument 新开页面打开文档
wx.getFileSystemManager 获取全局唯一的文件管理器
wx.saveFile 保存文件到本地。wx.saveFile 即将废弃,请使用 wx.getFileSystemManager().saveFile
wx.removeSavedFile 删除本地缓存文件。wx.removeSavedFile 即将废弃,请使用 wx.getFileSystemManager().removeSavedFile
wx.getSavedFileList 获取该小程序下已保存的本地缓存文件列表。wx.getSavedFileList 即将废弃,请使用 wx.getFileSystemManager().getSavedFileList
wx.getSavedFileInfo 获取本地文件的文件信息。wx.getSavedFileInfo 即将废弃,请使用 wx.getFileSystemManager().getFileInfo
wx.getFileInfo 获取文件信息。wx.getFileInfo 即将废弃,请使用 wx.getFileSystemManager().getFileInfo

# 蓝牙-通用

  • 蓝牙相关 JSAPI 依赖扩展 SDK "Bluetooth SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;

  • 系统要求,手机上需要开启地理位置权限后才可以搜索到蓝牙

名称 功能说明 是否支持
wx.stopBluetoothDevicesDiscovery 停止搜寻附近的蓝牙外围设备
wx.startBluetoothDevicesDiscovery 开始搜寻附近的蓝牙外围设备
wx.openBluetoothAdapter 初始化蓝牙模块
wx.onBluetoothDeviceFound 监听搜索到新设备的事件
wx.onBluetoothAdapterStateChange 监听蓝牙适配器状态变化事件
wx.offBluetoothDeviceFound 移除搜索到新设备的事件的监听函数
wx.offBluetoothAdapterStateChange 移除蓝牙适配器状态变化事件的监听函数
wx.makeBluetoothPair 蓝牙配对接口,仅安卓支持
wx.isBluetoothDevicePaired 查询蓝牙设备是否配对,仅安卓支持
wx.getConnectedBluetoothDevices 根据主服务 UUID 获取已连接的蓝牙设备
wx.getBluetoothDevices 获取在蓝牙模块生效期间所有搜索到的蓝牙设备
wx.getBluetoothAdapterState 获取本机蓝牙适配器状态
wx.closeBluetoothAdapter 关闭蓝牙模块

# 蓝牙-低功耗中心设备

名称 功能说明 是否支持
wx.writeBLECharacteristicValue 向蓝牙低功耗设备特征值中写入二进制数据
wx.setBLEMTU 协商设置蓝牙低功耗的最大传输单元 (Maximum Transmission Unit, MTU)
wx.readBLECharacteristicValue 读取蓝牙低功耗设备特征值的二进制数据
wx.onBLEMTUChange 监听蓝牙低功耗的最大传输单元变化事件(仅安卓触发)
wx.onBLEConnectionStateChange 监听蓝牙低功耗连接状态改变事件
wx.onBLECharacteristicValueChange 监听蓝牙低功耗设备的特征值变化事件
wx.offBLEMTUChange 移除蓝牙低功耗的最大传输单元变化事件的监听函数
wx.offBLEConnectionStateChange 移除蓝牙低功耗连接状态改变事件的监听函数
wx.offBLECharacteristicValueChange 移除蓝牙低功耗设备的特征值变化事件的监听函数
wx.notifyBLECharacteristicValueChange 启用蓝牙低功耗设备特征值变化时的 notify 功能,订阅特征
wx.getBLEMTU 获取蓝牙低功耗的最大传输单元
wx.getBLEDeviceServices 获取蓝牙低功耗设备所有服务 (service)
wx.getBLEDeviceRSSI 获取蓝牙低功耗设备的信号强度 (Received Signal Strength Indication, RSSI)
wx.getBLEDeviceCharacteristics 获取蓝牙低功耗设备某个服务中所有特征 (characteristic)
wx.createBLEConnection 连接蓝牙低功耗设备
wx.closeBLEConnection 断开与蓝牙低功耗设备的连接

# 蓝牙-低功耗外围设备

名称 功能说明 是否支持
wx.onBLEPeripheralConnectionStateChanged 监听当前外围设备被连接或断开连接事件
wx.offBLEPeripheralConnectionStateChanged 移除当前外围设备被连接或断开连接事件的监听函数
wx.createBLEPeripheralServer 建立本地作为蓝牙低功耗外围设备的服务端,可创建多个

# 蓝牙-信标(Beacon)

名称 功能说明 是否支持
wx.stopBeaconDiscovery 停止搜索附近的 Beacon 设备
wx.startBeaconDiscovery 开始搜索附近的 Beacon 设备
wx.onBeaconUpdate 监听 Beacon 设备更新事件,仅能注册一个监听
wx.onBeaconServiceChange 监听 Beacon 服务状态变化事件,仅能注册一个监听
wx.offBeaconUpdate 移除 Beacon 设备更新事件的监听函数
wx.offBeaconServiceChange 移除 Beacon 服务状态变化事件的监听函数
wx.getBeacons 获取所有已搜索到的 Beacon 设备
BeaconInfo Beacon 设备

# 近场通讯(NFC)

名称 功能说明 是否支持
wx.getNFCAdapter 获取 NFC 实例 [2]

# Wi-Fi

  • 下方 WIFI 相关的 JSAPI 依赖扩展 SDK "Network SDK" ,开发者需在项目中的 project.miniapp.json 配置勾选对应的 SDK 方可生效;
  • 注意:Android 和 iOS 的扩展 SDK 有所区别,详情查看 project.miniapp.json
  • 注意:iOS 13及以上系统,获取当前连接的Wi-Fi信息需要先获取系统定位权限,因此在iOS 13及以上系统使用此接口时,需要先调用wx.getLocation,触发定位权限申请的弹窗,待用户授权后才可以正常获取到 wifi 信息
名称 功能说明 是否支持
wx.stopWifi 关闭 Wi-Fi 模块
wx.startWifi 初始化 Wi-Fi 模块
wx.setWifiList 设置 wifiList 中 AP 的相关信息
wx.onWifiConnected 监听连接上 Wi-Fi 的事件
wx.offWifiConnected 移除连接上 Wi-Fi 的事件的监听函数
wx.onGetWifiList 监听获取到 Wi-Fi 列表数据事件
wx.offGetWifiList 移除获取到 Wi-Fi 列表数据事件的监听函数
wx.onWifiConnectedWithPartialInfo 监听连接上 Wi-Fi 的事件 [2]
wx.offWifiConnectedWithPartialInfo 移除连接上 Wi-Fi 的事件的监听函数 [2]
wx.getWifiList 请求获取 Wi-Fi 列表
wx.getConnectedWifi 获取已连接中的 Wi-Fi 信息
wx.connectWifi 连接 Wi-Fi
WifiInfo Wifi 信息

# 日历

名称 功能说明 是否支持
wx.addPhoneRepeatCalendar 向系统日历添加重复事件
wx.addPhoneCalendar 向系统日历添加事件

# 联系人

名称 功能说明 是否支持
wx.chooseContact 拉起手机通讯录,选择联系人
wx.addPhoneContact 添加手机通讯录联系人

# 无障碍

名称 功能说明 是否支持
wx.checkIsOpenAccessibility 检测是否开启视觉无障碍功能 [4]

# 电量

名称 功能说明 是否支持
wx.getBatteryInfoSync wx.getBatteryInfo 的同步版本
wx.getBatteryInfo 获取设备电量

# 剪贴板

名称 功能说明 是否支持
wx.setClipboardData 设置系统剪贴板的内容
wx.getClipboardData 获取系统剪贴板的内容

# NFC 主机卡模拟

名称 功能说明 是否支持
wx.stopHCE 关闭 NFC 模块 [2]
wx.startHCE 初始化 NFC 模块 [2]
wx.sendHCEMessage 发送 NFC 消息 [2]
wx.onHCEMessage 监听接收 NFC 设备消息事件 [2]
wx.offHCEMessage 移除接收 NFC 设备消息事件的监听函数 [2]
wx.getHCEState 判断当前设备是否支持 HCE 能力 [2]

# 网络

名称 功能说明 是否支持
wx.onNetworkWeakChange 监听弱网状态变化事件
wx.onNetworkStatusChange 监听网络状态变化事件
wx.offNetworkWeakChange 移除弱网状态变化事件的监听函数
wx.offNetworkStatusChange 移除网络状态变化事件的监听函数
wx.getNetworkType 获取网络类型
wx.getLocalIPAddress 获取局域网IP地址 [2]

# 加密

名称 功能说明 是否支持
wx.getRandomValues 获取密码学安全随机数

# 屏幕

名称 功能说明 是否支持
wx.setVisualEffectOnCapture 设置截屏/录屏时屏幕表现,仅支持在 Android 端调用 [2]
wx.setScreenBrightness 设置屏幕亮度
wx.setKeepScreenOn 设置是否保持常亮状态
wx.onUserCaptureScreen 监听用户主动截屏事件
wx.onScreenRecordingStateChanged 监听用户录屏事件
wx.offUserCaptureScreen 用户主动截屏事件
wx.offScreenRecordingStateChanged 移除用户录屏事件的监听函数
wx.getScreenRecordingState 查询用户是否在录屏
wx.getScreenBrightness 获取屏幕亮度

# 键盘

名称 功能说明 是否支持
wx.onKeyboardHeightChange 监听键盘高度变化事件
wx.offKeyboardHeightChange 移除键盘高度变化事件的监听函数
wx.hideKeyboard 在input、textarea等focus拉起键盘之后,手动调用此接口收起键盘
wx.getSelectedTextRange 在input、textarea等focus之后,获取输入框的光标位置

# 电话

注:此接口在 iOS 多端应用中使用需前往project.miniapp.json勾选「Others SDK」

名称 功能说明 是否支持
wx.makePhoneCall 拨打电话

# 加速计

名称 功能说明 是否支持
wx.stopAccelerometer 停止监听加速度数据
wx.startAccelerometer 开始监听加速度数据
wx.onAccelerometerChange 监听加速度数据事件
wx.offAccelerometerChange 移除加速度数据事件的监听函数

# 罗盘

名称 功能说明 是否支持
wx.stopCompass 停止监听罗盘数据
wx.startCompass 开始监听罗盘数据
wx.onCompassChange 监听罗盘数据变化事件
wx.offCompassChange 移除罗盘数据变化事件的监听函数

# 设备方向

名称 功能说明 是否支持
wx.stopDeviceMotionListening 停止监听设备方向的变化
wx.startDeviceMotionListening 开始监听设备方向的变化
wx.onDeviceMotionChange 监听设备方向变化事件
wx.offDeviceMotionChange 移除设备方向变化事件的监听函数

# 内存

名称 功能说明 是否支持
wx.onMemoryWarning 监听内存不足告警事件
wx.offMemoryWarning 移除内存不足告警事件的监听函数

# 陀螺仪

名称 功能说明 是否支持
wx.stopGyroscope 停止监听陀螺仪数据
wx.startGyroscope 开始监听陀螺仪数据
wx.onGyroscopeChange 监听陀螺仪数据变化事件

# 扫码

注:

  • 此接口在 iOS 多端应用中使用需前往project.miniapp.json勾选「Others SDK」
  • 如果是iOS,则需要在project.miniapp.json中配置“NSCameraUsageDescription”
名称 功能说明 是否支持
wx.scanCode 调起客户端扫码界面进行扫码

# 短信

  • 此接口在 iOS 多端应用中使用需前往project.miniapp.json勾选「Others SDK」
名称 功能说明 是否支持
wx.sendSms 拉起手机发送短信界面 支持

# 振动

注:此接口在 iOS 多端应用中使用需前往project.miniapp.json勾选「Others SDK」

名称 功能说明 是否支持
wx.vibrateShort 使手机发生较短时间的振动(15 ms)
wx.vibrateLong 使手机发生较长时间的振动(400 ms)

# AI

# 视觉算法

名称 功能说明 是否支持
wx.isVKSupport 判断支持版本 [4]
wx.createVKSession 创建 vision kit 会话对象 [4]

# 人脸检测

名称 功能说明 是否支持
wx.stopFaceDetect 停止人脸检测 [4]
wx.initFaceDetect 初始化人脸检测 [4]
wx.faceDetect 人脸检测,使用前需要通过 wx.initFaceDetect 进行一次初始化,推荐使用相机接口返回的帧数据 [4]

# Worker

名称 功能说明 是否支持
wx.createWorker 创建一个 Worker 线程

# WXML

wx.createSelectorQuery 在 Android端需使用需前往 project.miniapp.json 勾选「XWEB SDK」

名称 功能说明 是否支持
wx.createSelectorQuery 返回一个 SelectorQuery 对象实例
wx.createIntersectionObserver 创建并返回一个 IntersectionObserver 对象实例

# 第三方平台

名称 功能说明 是否支持
wx.getExtConfigSync wx.getExtConfig 的同步版本 [2]
wx.getExtConfig 获取 ext.json 自定义的数据字段 [2]

# 广告

# 开放接口

# 登录

名称 功能说明 是否支持 备注
wx.pluginLogin 该接口仅在小程序插件中可调用,调用接口获得插件用户标志凭证(code) [2]
wx.login 调用接口获取登录凭证(code) [2] 需替换新接口,点击查看接口详情
wx.checkSession 检查登录态是否过期 [1] 使用多端身份管理

# 账号信息

  • 与小程序模式下返回的信息有差异,详情看接口文档
名称 功能说明 是否支持
wx.getAccountInfoSync 获取当前账号信息

# 用户信息

  • 在 App 中开发者可以通过对接“微信登录”的接口获取用户微信的头像和昵称,详情可查看wx.miniapp.login
名称 功能说明 是否支持
wx.getUserProfile 获取用户信息 [2]
wx.getUserInfo 获取用户信息 [2]

# 授权

名称 功能说明 是否支持
wx.authorizeForMiniProgram 仅小程序插件中能调用该接口,用法同 wx.authorize [4]
wx.authorize 提前向用户发起授权请求 [4]

# 设置

名称 功能说明 是否支持
wx.openSetting 调起客户端小程序设置界面,返回用户设置的操作结果 [4]
wx.getSetting 获取用户的当前设置 [4]
AuthSetting 用户授权设置信息,详情参考权限 [4]
SubscriptionsSetting 订阅消息设置 [4]

# 收货地址

名称 功能说明 是否支持
wx.chooseAddress 获取用户收货地址 [4]

# 卡券

名称 功能说明 是否支持
wx.openCard 查看微信卡包中的卡券 [4]
wx.addCard 批量添加卡券 [4]

# 发票

名称 功能说明 是否支持
wx.chooseInvoiceTitle 选择用户的发票抬头 [4]
wx.chooseInvoice 选择用户已有的发票 [4]

# 生物认证

名称 功能说明 是否支持
wx.startSoterAuthentication 开始 SOTER 生物认证 [4]
wx.checkIsSupportSoterAuthentication 获取本机支持的 SOTER 生物认证方式 [4]
wx.checkIsSoterEnrolledInDevice 获取设备内是否录入如指纹等生物信息的接口 [4]

# 微信运动

名称 功能说明 是否支持
wx.shareToWeRun 分享数据到微信运动 [4]
wx.getWeRunData 获取用户过去三十天微信运动步数 [4]

# 订阅消息

名称 功能说明 是否支持
wx.requestSubscribeMessage 调起客户端小程序订阅消息界面,返回用户订阅消息的操作结果 [4]
wx.requestSubscribeDeviceMessage 订阅设备消息接口,调用后弹出授权框,用户同意后会允许开发者给用户发送订阅模版消息 [4]

# 微信红包

名称 功能说明 是否支持
wx.showRedPackage 拉取h5领取红包封面页 [4]

# 收藏

名称 功能说明 是否支持
wx.addVideoToFavorites 收藏视频 [4]
wx.addFileToFavorites 收藏文件 [4]

# 车牌

名称 功能说明 是否支持
wx.chooseLicensePlate 选择车牌号 [4]

# 视频号

名称 功能说明 是否支持
wx.reserveChannelsLive 预约视频号直播 [4]
wx.openChannelsUserProfile 打开视频号主页 [4]
wx.openChannelsLive 打开视频号直播 [4]
wx.openChannelsEvent 打开视频号活动页 [4]
wx.openChannelsActivity 打开视频号视频 [4]
wx.getChannelsShareKey 获取视频号直播卡片/视频卡片的分享来源,仅当卡片携带了分享信息、同时用户已授权该小程序获取视频号分享信息且启动场景值为 1177、1184、1195、1208 时可用 [4]
wx.getChannelsLiveNoticeInfo 获取视频号直播预告信息 [4]
wx.getChannelsLiveInfo 获取视频号直播信息 [4]

# 微信群

名称 功能说明 是否支持
wx.getGroupEnterInfo 获取微信群聊场景下的小程序启动信息 不支持

# 微信客服

名称 功能说明 是否支持
wx.openCustomerServiceChat 打开微信客服,页面产生点击事件(例如 button 上 bindtap 的回调中)后才可调用 不支持;可使用 wx.miniapp.openCustomerServiceChat 替代