JS API命名与小程序相同。各端受自身限制,可能某些API无法使用,具体见每个API的兼容性说明。
各端特色API规范参考各端的开发文档。其中App端的JS API参考;uni-app也支持通过扩展原生插件来丰富App端的开发能力,具体参考插件开发文档
- uni.on 开头的 API 是监听某个事件发生的 API 接口,接受一个 CALLBACK 函数作为参数。当该事件触发时,会调用 CALLBACK 函数。
- 如未特殊约定,其他 API 接口都接受一个 OBJECT 作为参数。
- OBJECT 中可以指定 success,fail,complete 来接收接口调用结果。
- 平台差异说明若无特殊说明,则表示所有平台均支持。
Promise 封装
详细策略如下:
- 异步的方法,如果不传入 success、fail、complete 等 callback 参数,将以 Promise 返回数据。例如:uni.getImageInfo()
- 异步的方法且有返回对象,如果希望获取返回对象,必须至少传入一项 success、fail、complete 等 callback 参数。例如:uni.connectSocket()
- 同步的方法(即以 sync 结束),不封装 Promise。例如:uni.getSystemInfoSync()
- 以 create 开头的方法,不封装 Promise。例如:uni.createMapContext()
- 以 manager 结束的方法,不封装 Promise。例如:uni.getBackgroundAudioManager()使用示例:
网络
发起请求
上传、下载
API | 说明 |
---|---|
上传文件 | |
uni.downloadFile | 下载文件 |
WebSocket
API | 说明 |
---|---|
创建 WebSocket 连接 | |
uni.onSocketOpen | 监听 WebSocket 打开 |
监听 WebSocket 错误 | |
uni.sendSocketMessage | 发送 WebSocket 消息 |
接受 WebSocket 消息 | |
uni.closeSocket | 关闭 WebSocket 连接 |
监听 WebSocket 关闭 |
SocketTask
API | 说明 |
---|---|
SocketTask.send | 通过 WebSocket 连接发送数据 |
关闭 WebSocket 连接 | |
SocketTask.onOpen | 监听 WebSocket 连接打开事件 |
监听 WebSocket 连接关闭事件 | |
SocketTask.onError | 监听 WebSocket 错误事件 |
监听 WebSocket 接受到服务器的消息事件 |
媒体
图片
API | 说明 |
---|---|
uni.chooseImage | 从相册选择图片,或者拍照 |
预览图片 | |
uni.getImageInfo | 获取图片信息 |
保存图片到系统相册 |
录音管理
API | 说明 |
---|---|
uni.getRecorderManager | 录音管理 |
背景音频播放管理
API | 说明 |
---|---|
背景音频播放管理 |
音频组件管理
API | 说明 |
---|---|
uni.createInnerAudioContext | 音频组件管理 |
视频
API | 说明 |
---|---|
从相册选择视频,或者拍摄 | |
uni.saveVideoToPhotosAlbum | 保存视频到系统相册 |
视频组件管理 |
相机组件管理
API | 说明 |
---|---|
uni.createCameraContext | 相机组件管理 |
直播组件管理
API | 说明 |
---|---|
直播组件管理 |
文件
API | 说明 |
---|---|
uni.saveFile | 保存文件 |
获取已保存的文件列表 | |
uni.getSavedFileInfo | 获取已保存的文件信息 |
删除已保存的文件信息 | |
uni.getFileInfo | 获取文件信息 |
打开文件 |
数据缓存
API | 说明 |
---|---|
uni.getStorage | 获取本地数据缓存 |
获取本地数据缓存 | |
uni.setStorage | 设置本地数据缓存 |
设置本地数据缓存 | |
uni.getStorageInfo | 获取本地缓存的相关信息 |
获取本地缓存的相关信息 | |
uni.removeStorage | 删除本地缓存内容 |
删除本地缓存内容 | |
uni.clearStorage | 清理本地数据缓存 |
清理本地数据缓存 |
位置
获取位置
API | 说明 |
---|---|
uni.getLocation | 获取当前位置 |
打开地图选择位置 |
查看位置
API | 说明 |
---|---|
uni.openLocation | 打开内置地图 |
地图组件控制
API | 说明 |
---|---|
地图组件控制 |
设备
系统信息
API | 说明 |
---|---|
uni.getSystemInfo | 获取系统信息 |
获取系统信息 | |
uni.canIUse | 判断应用的 API,回调,参数,组件等是否在当前版本可用 |
内存
API | 说明 |
---|---|
监听内存不足告警事件 |
网络状态
加速度计
API | 说明 |
---|---|
uni.onAccelerometerChange | 监听加速度数据 |
开始监听加速度数据 | |
uni.stopAccelerometer | 停止监听加速度数据 |
罗盘
API | 说明 |
---|---|
监听罗盘数据 | |
uni.startCompass | 开始监听罗盘数据 |
停止监听罗盘数据 |
陀螺仪
API | 说明 |
---|---|
uni.onGyroscopeChange | 监听陀螺仪数据 |
开始监听陀螺仪数据 | |
uni.stopGyroscope | 停止监听陀螺仪数据 |
拨打电话
API | 说明 |
---|---|
拨打电话 |
扫码
API | 说明 |
---|---|
uni.scanCode | 扫码 |
剪切板
API | 说明 |
---|---|
设置剪贴板内容 | |
uni.getClipboardData | 获取剪贴板内容 |
屏幕亮度
API | 说明 |
---|---|
设置屏幕亮度 | |
uni.getScreenBrightness | 获取屏幕亮度 |
设置是否保持常亮状态 |
用户截屏事件
API | 说明 |
---|---|
uni.onUserCaptureScreen | 监听用户截屏事件 |
振动
API | 说明 |
---|---|
使手机发生振动 | |
uni.vibrateLong | 使手机发生较长时间的振动 |
使手机发生较短时间的振动 |
手机联系人
API | 说明 |
---|---|
uni.addPhoneContact | 添加手机通讯录 |
蓝牙
API | 说明 |
---|---|
初始化蓝牙模块 | |
uni.startBluetoothDevicesDiscovery | 搜寻附近的蓝牙外围设备 |
监听寻找到新设备的事件 | |
uni.stopBluetoothDevicesDiscovery | 停止搜寻 |
监听蓝牙适配器状态变化事件 | |
uni.getConnectedBluetoothDevices | 根据 uuid 获取处于已连接状态的设备 |
获取已发现的蓝牙设备 | |
uni.getBluetoothAdapterState | 获取本机蓝牙适配器状态 |
关闭蓝牙模块 |
低耗蓝牙
API | 说明 |
---|---|
uni.writeBLECharacteristicValue | 向低功耗蓝牙设备特征值中写入二进制数据 |
读取低功耗蓝牙设备的特征值的二进制数据值 | |
uni.onBLEConnectionStateChange | 监听低功耗蓝牙连接状态的改变事件 |
监听低功耗蓝牙设备的特征值变化事件 | |
uni.notifyBLECharacteristicValueChange | 监听低功耗蓝牙设备的特征值变化事件 |
获取蓝牙设备所有服务(service) | |
uni.getBLEDeviceCharacteristics | 获取蓝牙设备某个服务中所有特征值(characteristic) |
连接低功耗蓝牙设备 | |
uni.closeBLEConnection | 断开与低功耗蓝牙设备的连接 |
iBeacon
API | 说明 |
---|---|
监听 iBeacon 服务状态变化事件 | |
uni.onBeaconUpdate | 监听 iBeacon 设备更新事件 |
获取所有已搜索到的 iBeacon 设备 | |
uni.startBeaconDiscovery | 停止搜索附近的 iBeacon 设备 |
开始搜索附近的 iBeacon 设备 |
界面
交互反馈
API | 说明 |
---|---|
uni.showToast | 显示提示框 |
显示加载提示框 | |
uni.hideToast | 隐藏提示框 |
隐藏提示框 | |
uni.showModal | 显示模态弹窗 |
显示菜单列表 |
设置导航条
API | 说明 |
---|---|
uni.setNavigationBarTitle | 设置当前页面标题 |
设置页面导航条颜色 | |
uni.showNavigationBarLoading | 显示导航条加载动画 |
隐藏导航条加载动画 |
设置TabBar
API | 说明 |
---|---|
uni.setTabBarItem | 动态设置 tabBar 某一项的内容 |
动态设置 tabBar 的整体样式 | |
uni.hideTabBar | 隐藏 tabBar |
显示 tabBar | |
uni.setTabBarBadge | 为 tabBar 某一项的右上角添加文本 |
移除 tabBar 某一项右上角的文本 | |
uni.showTabBarRedDot | 显示 tabBar 某一项的右上角的红点 |
隐藏 tabBar 某一项的右上角的红点 |
背景
API | 说明 |
---|---|
uni.setBackgroundColor | 动态设置窗口的背景色。 |
动态设置下拉背景字体、loading 图的样式。 |
动画
滚动
API | 说明 |
---|---|
uni.pageScrollTo | 将页面滚动到目标位置。 |
绘画
API | 说明 |
---|---|
创建绘图上下文 | |
uni.canvasToTempFilePath | 将画布内容保存成文件 |
获取画布图像数据 | |
uni.canvasPutImageData | 设置画布图像数据 |
下拉刷新
API | 说明 |
---|---|
监听该页面用户下拉刷新事件 | |
uni.startPullDownRefresh | 开始下拉刷新 |
停止当前页面下拉刷新 |
节点信息
API | 说明 |
---|---|
uni.createSelectorQuery | 创建查询请求 |
根据选择器选择单个节点 | |
selectorQuery.selectAll | 根据选择器选择全部节点 |
选择显示区域 | |
selectorQuery.exec | 执行查询请求 |
获取布局位置和尺寸 | |
nodesRef.scrollOffset | 获取滚动位置 |
获取任意字段 |
节点布局相交状态
API | 说明 |
---|---|
uni.createIntersectionObserver | 创建 IntersectionObserver 对象 |
指定参照节点 | |
intersectionObserver.relativeToViewport | 指定页面显示区域作为参照区域 |
指定目标节点并开始监听 | |
intersectionObserver.disconnect | 停止监听 |
路由
API | 说明 |
---|---|
保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面 | |
uni.redirectTo | 关闭当前页面,跳转到应用内的某个页面 |
关闭所有页面,打开到应用内的某个页面 | |
uni.switchTab | 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 |
关闭当前页面,返回上一页面或多级页面 |
第三方服务
API | 说明 |
---|---|
uni.getProvider | 获取服务供应商 |
登录 | |
uni.getUserInfo | 获取用户信息 |
分享 | |
uni.requestPayment | 支付 |
开启推送 | |
uni.unsubscribePush | 关闭推送 |
监听透传数据 | |
uni.offPush | 移除监听透传数据 |
平台扩展
API | 说明 |
---|---|
引入 App 原生插件 |
其他
授权
API | 说明 |
---|---|
uni.authorize | 提前向用户发起授权请求 |
设置
API | 说明 |
---|---|
调起客户端小程序设置界面,返回用户设置的操作结果。 | |
uni.getSetting | 获取用户的当前设置。 |
收货地址
API | 说明 |
---|---|
获取用户收货地址 |
获取发票抬头
API | 说明 |
---|---|
uni.chooseInvoiceTitle | 选择用户的发票抬头,需要用户授权 scope.invoiceTitle。 |
小程序跳转
API | 说明 |
---|---|
打开另一个小程序。 | |
uni.navigateBackMiniProgram | 跳转回上一个小程序,只有当另一个小程序跳转到当前小程序时才会能调用成功。 |
模板消息
API | 说明 |
---|---|
组合模板并添加至帐号下的个人模板库。 | |
deleteTemplate | 删除帐号下的某个模板。 |
获取模板库某个模板标题下关键词库。 | |
getTemplateLibraryList | 获取APP模板库标题列表 |
获取帐号下已存在的模板列表。 | |
sendTemplateMessage | 发送模板消息 |
支付宝小程序通过 openapi 给用户触达消息,主要为支付后的触达(通过消费id)和用户提交表单后的触达(通过formId)。 |
小程序更新
API | 说明 |
---|---|
uni.getUpdateManager | 返回全局唯一的版本更新管理器对象: updateManager,用于管理小程序更新。 |
调试
API | 说明 |
---|---|
设置是否打开调试开关。此开关对正式版也能生效。 |
获取第三方平台数据
API | 说明 |
---|---|
uni.getExtConfig | 获取第三方平台自定义的数据字段。 |
uni.getExtConfig 的同步版本。 |