羅盤
startCompass
TIP
該API使用方法為: wx.startCompass(Object object)
功能說明: 開始監聽羅盤數據
參數及說明: Object object。
内容 類型 預設值 必填 說明 success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
js
wx.startCompass()stopCompass
TIP
該API使用方法為: wx.stopCompass(Object object)
功能說明: 停止監聽羅盤數據
參數及說明: Object object。
内容 類型 預設值 必填 說明 success Function - 否 接口調用成功的回呼函數 fail Function - 否 接口調用失敗的回呼函數 complete Function - 否 接口調用結束的回呼函數(無論成功與否都執行) 示例代碼:
js
wx.stopCompass()onCompassChange
TIP
該API使用方法為: wx.onCompassChange(function callback)
功能說明: 監聽羅盤數據變化事件。 頻率:5次/秒,接口調用後會自動開始監聽,可使用 wx.stopCompass 停止監聽。
參數及說明: function callback, 羅盤數據變化事件的回呼函數。 參數Object res如下:
内容 類型 說明 direction number 面對的方向度數 accuracy number/string 精度 示例代碼:
js
wx.onCompassChange(function (res) {
console.log(res.direction)
})accuracy在iOS/Android的差异: 由於平臺差异,accuracy在iOS/Android的值不同
iOS: accuracy是一個number類型的值,表示相對於磁北極的偏差。 0表示設備指向磁北,90表示指向東,180表示指向南,依此類推
Android: accuracy是一個string類型的枚舉值
值 說明 high 高精度 medium 中等精度 low 低精度 no-contact 不可信,感測器失去連接 unreliable 不可信,原因未知 unknow ${ value}未知的精度枚舉值,即該Android系統此時返回的表示精度的value不是一個標準的精度枚舉值
offCompassChange
TIP
該API使用方法為: wx.offCompassChange(function listener)
功能說明: 移除羅盤數據變化事件的監聽函數
參數及說明: function listener,onCompassChange傳入的監聽函數。 不傳此參數則移除所有監聽函數
示例代碼:
js
const listener = function (res) { console.log(res) }
wx.onCompassChange(listener)
wx.offCompassChange(listener) // Pass the same function object used for listening.