使用视频API可以对用户手机设备中的视频进行一些操作。如果希望播放视频内容,需要使用小程序中的video组件。
使用wx.saveVideoToPhotosAlbum接口可将视频保存到手机相册,支持MP4视频格式。该接口用前需用户授权scope.writePhotosAlbum。示例代码如下:
wx.saveVideoToPhotosAlbum({
filePath: 'xxx.mp4', // 视频文件路径,可以是临时文件路径或永久文件路径
success (res) {
console.log(res.errMsg)
}
})
使用wx.chooseVideo可从手机相册选择视频,或使用摄像头拍摄一段视频并获取该文件。示例代码如下:
wx.chooseVideo({
sourceType: ['album','camera'], // 选择视频的来源(相册、相机)
compressed: true, // 是否压缩视频文件。默认为true
maxDuration: 60, // 拍摄视频最长拍摄时间,单位为秒。默认为60
camera: 'back', // 默认拉起的是前置或者后置摄像头,支持back和front
success(res) {
console.log(res.tempFilePath) // 视频的路径(临时文件)
console.log(res.duration) // 视频的时间长度
console.log(res.size) // 视频的数据量大小
console.log(res.width) // 视频的宽度
console.log(res.height) // 视频的高度
}
})
获取到视频连接后,可使用video组件播放该视频,video组件在页面显示为一个视频播放器。video组件在后面组件章节进行介绍
使用位置API可以获取用户的位置信息,或在用户手机中以地图的形式显示某个位置。
(微信小程序申请的是跑步达人,终于碰到和它有点关系的API接口了,期待。)
使用wx.getLocation可获取用户当前的地理位置坐标和移动速度。用前需用户授权scope.userLocation权限。
scope.userLocation不同于其他权限,开发者使用该权限相关接口时需在app.json文件,配置地理位置用途的说明,否则无法使用相关接口。配置如下:
// app.json
{
"pages": ["pages/index/index"],
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于xx"
}
}
}
地理位置用途的说明会显示在向用户请求权限的提示窗口。
wx.getLocation传入Object参数,参支持属性如下:
type:不是必填,wgs84返回GPS坐标,gcj02返回可用于wx.openLocation的坐标
altitude:不是必填,传入true会返回高度信息,获取高度需要较高精确值,会减慢接口返回速度
success
fail
complete
在接口的success回调函数中,可获取用户的地理位置信息。示例代码如下:
wx.getLocation({
type: 'wgs84', // 返回GPS坐标
altitude: true, // 返回高度信息
success(res) {
const latitude = res.latitude // 纬度,范围为-90~90,负数表示南纬
const longitude = res.longitude // 经度,范围为-180~180,负数表示西经
const speed = res.speed // 速度,单位为m/s
const accuracy = res.accuracy // 位置的精确度
const altitude = res.altitude // 高度,高度为m
const verticalAccuracy = res.verticalAccuracy // 垂直精度,单位为m(仅IOS支持)
const horizontalAccuracy = res.horizontalAccuracy // 水平精度,单位为m
}
})