指南
compass 指南
使用 @capgo/capacitor-compass
Capacitor Compass 插件,用于读取设备compass方向.
安装
bun add @capgo/capacitor-compass
bunx cap sync
此插件暴露的内容
getCurrentHeading- 获取当前的compass方向(角度)。在iOS中,方向会在后台更新,返回最新的值。在Android中,方向会在方法被调用时使用加速计和磁力计传感器计算。未在Web中实现。startListening- 开始监听compass方向的变化事件。这会启动compass传感器并发送'headingChange'事件。stopListening- 停止监听compass方向的变化事件。这会停止compass传感器并停止发送事件。checkPermissions- 检查当前访问compass数据的权限状态。在iOS中,这会检查位置权限状态。在Android中,这始终返回'granted',因为没有权限要求。
示例使用
getCurrentHeading
获取当前的compass方向(角度)。在iOS中,方向会在后台更新,返回最新的值。在Android中,方向会在方法被调用时使用加速计和磁力计传感器计算。未在Web中实现。
import { CapgoCompass } from '@capgo/capacitor-compass';
const { value } = await CapgoCompass.getCurrentHeading();
console.log('Compass heading:', value, 'degrees');
startListening
开始监听compass方向的变化事件。这会启动compass传感器并发送'headingChange'事件。
import { CapgoCompass } from '@capgo/capacitor-compass';
// With default throttling (100ms interval, 2° minimum change)
await CapgoCompass.startListening();
// With custom throttling for high-frequency updates
await CapgoCompass.startListening({
minInterval: 50, // 50ms between events
minHeadingChange: 1.0 // 1° minimum change
});
CapgoCompass.addListener('headingChange', (event) => {
console.log('Heading:', event.value);
});
stopListening
停止监听compass方向的变化事件。这会停止compass传感器并停止发送事件。
import { CapgoCompass } from '@capgo/capacitor-compass';
await CapgoCompass.stopListening();
checkPermissions
检查当前访问compass数据的权限状态。在iOS中,这会检查位置权限状态。在Android中,这始终返回'granted',因为没有权限要求。
import { CapgoCompass } from '@capgo/capacitor-compass';
const status = await CapgoCompass.checkPermissions();
console.log('Compass permission:', status.compass);
全局参考
- GitHub: https://github.com/Cap-go/capacitor-compass/
- 文档: /docs/plugins/compass/
继续使用 @capgo/capacitor-compass
如果您正在使用 使用 @capgo/capacitor-compass 规划仪表板和API操作时,连接它到 @capgo/capacitor-compass 在 @capgo/capacitor-compass 中了解实现细节 Getting Started 在 Getting Started 中了解实现细节 API Overview for the implementation detail in API Overview, 简介 了解简介中的实现细节 API 键 了解API Keys中的实现细节