收藏
评论

小程序开发新能力解读 - 2022.07官方

快速知悉


1.获取当前的模糊地理位置 wx.getFuzzyLocation 

自 2022 年 7 月 14 日后发布的小程序,若使用该接口,需要在 app.json 中进行声明,否则将无法正常使用该接口,2022年7月14日前发布的小程序不受影响。具体规则见公告

暂只针对具备与地理位置强相关的使用场景的小程序开放,在小程序管理后台,「开发」-「开发管理」-「接口设置」中自助开通该接口权限。 从2022年7月14日开始在代码审核环节将检测该接口是否已完成开通,如未开通,将在代码提审环节进行拦截。

示例:

wx.getFuzzyLocation({
 type: 'wgs84',//wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
 success (res) {
   const latitude = res.latitude//纬度,范围为 -90~90,负数表示南纬
   const longitude = res.longitude//经度,范围为 -180~180,负数表示西经
 }
})



2.拉起手机发送短信界面 wx.sendSms 

使用介绍:

拉起手机发送短信界面

示例:

wx.sendSms({
  phoneNumber: "186xxxx6666",//string,预填到发送短信面板的手机号
  content: "你好",//string,预填到发送短信面板的内容
  success (res) {
    console.log(res)
  }
})



3.批量获取/设置 storage 缓存 wx.batchSetStorage 

将数据批量存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB

示例:

wx.setStorage({
  key:"key",
  data:"value"
})


// 开启加密存储
wx.batchSetStorage({
  kvList: {
    key: 'key',
    value: 'value',
  }
})


4.live-pusher 支持小窗推流

使用介绍:    

示例:


5.live-player 和 live-pusher 截图功能支持截取渲染画面

具体接口文档:

LivePlayerContext.snapshot

LivePusherContext.snapshot

示例:

onReady(res) {
    this.ctx = wx.createLivePusherContext('pusher')
  },


bindSnapshot() {
	this.ctx.snapshot({
		quality: "raw",//图片的质量,默认原图。有效值为 raw、compressed
		sourceType: "view",//截取的源类型,有效值为 stream(截取视频源)、view(截取渲染后的画面)
		success: res =>{
			console.log("snapshot success")
		},
		fail: res => {
			console.log('snapshot fail')
		}
	})
  },



6.支持iOS小程序在 ExperimentalWorker 内获取摄像头帧数据

获取摄像头当前帧图像,返回 ArrayBuffer 数据。仅限在 worker 线程中使用。

注意事项:

  • 接口仅在 iOS 上可用
  • 接口仅在 worker 线程中可用
  • 接口仅在 useExperimentalWorker 为 true 时可用
  • 使用前需要先在主线程调用 Camera.listenFrameChange(worker)
  • 该接口的目的是借助 iOS ExperimentalWorker 的 JS 高运行性能,配合摄像头帧数据实现 AR 等游戏场景
  • 由于安卓主线程本身已经支持JIT,因此安卓上可以直接在主线程使用 Camera.onCameraFrame 接口实现 AR 等场景

示例代码:

// game.js
const worker = wx.createWorker('workers/index.js', {
  useExperimentalWorker: true
})


const camera = wx.createCamera({
  success() {
    camera.listenFrameChange(worker)
  }
})


// workers/index.js
const data = worker.getCameraFrameData()
console.log(data)


最后一次编辑于  2022-08-05
赞 0
收藏
登录 后发表内容

小程序开发新能力解读

课程标签