• JS API 列表
  • 基础
  • TTML
  • 网络
  • 媒体
  • 地图
  • 文件
  • 数据缓存
  • 地理位置
  • 设备
  • 网络状态
  • 系统信息
  • Wi-Fi
  • 加速度计
  • 罗盘
  • tt.startCompass
  • tt.stopCompass
  • tt.onCompassChange
  • tt.offCompassChange
  • 拨打电话
  • 扫码
  • 剪贴板
  • 屏幕
  • 陀螺仪
  • 加密
  • 短信
  • 日历
  • 振动
  • 性能
  • 画布
  • 界面
  • 页面导航
  • 开放接口
  • 行业开放
  • 第三方平台
  • 其它
  • tt.onCompassChange
    收藏
    我的收藏

    基础库 1.2.0 开始支持本方法,这是一个同步方法。

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

    前提条件
    业务背景
    使用限制
    注意事项
    • 如果在调用该方法之前没有调用 tt.startCompass,该方法会默认调用一次tt.startCompass方法;
    • 该方法默认的调用频率是 5 次/秒
    支持沙盒
    相关教程

    语法

    tt.onCompassChange(callback)

    参数说明

    callback

    类型默认值必填说明最低支持版本
    function

    罗盘数据变化的回调函数

    1.2.0

    callback 是一个回调函数,接收 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) => { console.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); }, }); }, });