开发
API

tt.onCompassChange

基础库 1.2.0 开始支持本方法,低版本需做兼容处理

监听罗盘数据变化。罗盘数据会在用户手机发生“朝向变化/加速前进&后退/摇一摇”等手势时触发变化。

语法

tt.onCompassChange(callback)

参数说明

参数为回调函数:

参数参数类型说明最低支持版本
callbackfunction罗盘数据变化的回调函数1.2.0

回调函数的参数为 Object 类型,属性如下:

参数参数类型说明最低支持版本
directionnumber面对的方向度数(从朝南方向开始,顺时针转的角度)1.2.0

效果示例

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

<button type="default" size="default" bindtap="tapStartCompass">开始监听罗盘</button>
<button type="default" size="default" bindtap="tapCompassChange">查看罗盘数据变化</button>
<button type="default" size="default" bindtap="tapStopCompass">停止监听罗盘</button>
Page({
  tapCompassChange() {
    tt.onCompassChange((res) => {
      conssole.log(res);
      console.log(`罗盘方向: ${res.direction}`);
    });
  },
  tapStartCompass() {
    tt.startCompass({
      success(res) {
        //调用开始监听罗盘成功 startCompass:ok
        console.log("调用开始监听罗盘成功", res.errMsg);
      },
      fail(res) {
        // 调用开始监听罗盘失败 startCompass:fail
        console.log("调用开始监听罗盘失败", res.errMsg);
      },
    });
  },
  tapStopCompass() {
    tt.stopCompass({
      success(res) {
        //调用停止监听罗盘成功 stopCompass:ok
        console.log("调用停止监听罗盘成功", res.errMsg);
      },
      fail(res) {
        // 调用停止监听罗盘失败 stopCompass:fail
        console.log("调用停止监听罗盘失败", res.errMsg);
      },
    });
  },
});

Bug & Tip

  • Tip:如果在调用该方法之前没有调用 tt.startCompass,该方法会默认调用一次tt.startCompass方法。
  • Tip:该方法默认的调用频率是 5 次/秒
点击纠错
评价此篇文档