首页
学习
活动
专区
工具
TVP
发布

Video API,Storage API,location API接口应用

Video API

电脑端不能测试拍摄功能只能测试选择视频功能,好像只支持 mp4 格式,值得注意的是成功之后返回的临时文件路径是个列表 tempFilePaths 而不是 tempFilePath 文档写的有点问题。

主要属性:

wx.chooseVideo(object)

成功之后返回参数

wxml

打开视频

js

Page({

data:{

// text:"这是一个页面"

videoSource: '',

videoHidden: true

},

listenerBtnOpenVideo: function() {

var that = this;

wx.chooseVideo({

//相机和相册

sourceType: ['album', 'camera'],

//录制视频最大时长

maxDuration: 60,

//摄像头

camera: ['front', 'back'],

//这里返回的是 tempFilePaths 并不是 tempFilePath

success: function(res){

console.log(res.tempFilePaths[0])

that.setData({

videoSource: res.tempFilePaths[0],

videoHidden: false

})

},

fail: function(e) {

console.log(e)

}

})

},

onLoad:function(options){

页面初始化 options 为页面跳转所带来的参数

},

onReady:function(){

页面渲染完成

},

onShow:function(){

页面显示

},

onHide:function(){

页面隐藏

},

onUnload:function(){

页面关闭

}

})

Storage API

其实这个存储在新建 Demo 的时候就已经用到了就是存储就是那个 logs 日志,数据存储主要分为同步和异步

异步存储方法:

存数据

wx.setStorage(object) 相同 key 会覆盖,可写回调方法

获取方法:

wx.getStorage(object)

清除方法:

wx.clearStorage()里面可以写回调函数 成功,失败,完成

同步存储方法:

存数据 相同 key 会覆盖

wx.setStorageSync(key,data)

读数据

wx.getStorageSync(key) 存储是指定的 key

清除数据

wx.clearStorageSync() 不可写回调方法

wxml

{}

storage 存储信息会在 text 上显示

获取 storage 存储的信息

清楚异步存储数据

{}

storageSync 存储信息会在 text 上显示

获取 storageSync 存储信息

清除同步存储数据

js

Page({

data:{

// text:"这是一个页面"

storageContent: '',

storageSyncContent: ''

},

onLoad:function(options){

页面初始化 options 为页面跳转所带来的参数

},

/**

异步存储

*/

listenerStorageSave: function() {

//以键值对的形式存储 传进去的是个对象

wx.setStorage({

key: 'key',

data: '我是 storeage 异步存储的信息',

success: function(res) {

console.log(res)

}

})

},

/**

异步取信息

*/

listenerStorageGet: function() {

var that = this;

wx.getStorage({

//获取数据的 key

key: 'key',

success: function(res) {

console.log(res)

that.setData({

//

storageContent: res.data

})

},

/**

失败会调用

*/

fail: function(res) {

console.log(res)

}

})

},

/**

清除数据

*/

listenerStorageClear: function() {

var that = this;

wx.clearStorage({

success: function(res) {

that.setData({

storageContent: ''

})

}

})

},

/**

数据同步存储

*/

listenerStorageSyncSave: function() {

wx.setStorageSync('key', '我是同步存储的数据')

},

/**

数据同步获取

*/

listenerStorageSyncGet: function() {

// var that = this;

var value = wx.getStorageSync('key')

this.setData({

storageSyncContent: value

})

},

/**

清除同步存储数据

*/

listenerStorageSyncClear: function() {

wx.clearStorageSync()

},

onReady:function(){

页面渲染完成

},

onShow:function(){

页面显示

},

onHide:function(){

页面隐藏

},

onUnload:function(){

页面关闭

}

})

location API

location API 也就分这里分两种 wx.getLocation(object)获取当前位置和 wx.openLocation(object)通过经纬度打开内置地图。其中定位获取位置信息返回参数是有问题的 speed,accuracy 这两个是没有的。还有一个就是打开内置地图之后再返回会报一个错误(Page route 错误 —WAService.js:2 navigateBack 一个不存在的 webviewId0)如果有知道的可告知,我找到解决方式也会补充下!

主要属性:

wx.getLocation(object)获取当前位置

成功之后返回参数

这个错估计也带等小程序修复吧!!

wxml

定位当前位置并打开内置地图

utton>

js

Page({

data:{

text:"Page location"

},

onLoad:function(options){

页面初始化 options 为页面跳转所带来的参数

},

/**

监听定位到当前位置

*/

listenerBtnGetLocation: function() {

wx.getLocation({

//定位类型 wgs84, gcj02

type: 'gcj02',

success: function(res) {

console.log(res)

wx.openLocation({

//当前经纬度

latitude: res.latutude,

longitude: res.longitude,

//缩放级别默认 28

scale: 28,

//位置名

name: '测试地址',

//详细地址

address: '火星路 24 号',

//成功打印信息

success: function(res) {

console.log(res)

},

//失败打印信息

fail: function(err) {

console.log(err)

},

//完成打印信息

complete: function(info){

console.log(info)

},

})

},

fail: function(err) {

console.log(err)

},

complete: function(info) {

console.log(info)

},

})

},

onReady:function(){

页面渲染完成

},

onShow:function(){

页面显示

},

onHide:function(){

页面隐藏

},

onUnload:function(){

页面关闭

}

})

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200918A0HQ4Z00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券