跳过主要内容

iBeacon Capacitor 插件

Capacitor iBeacon 插件 - 位置检测和信标区域监控

安装

bun add @capgo/capacitor-ibeacon bunx cap sync
npm、pnpm 或 yarn
  • npm install @capgo/capacitor-ibeacon
  • pnpm add @capgo/capacitor-ibeacon
  • yarn add @capgo/capacitor-ibeacon

指南

如何在Capacitor中使用iBeacon

在设备上测试

下载Capgo应用,扫描QRcode。

iBeacon 插件预览二维码 code

使用 @capgo/capacitor-ibeacon

Capacitor iBeacon 插件 - 位置检测和信标区域监控

安装

bun add @capgo/capacitor-ibeacon
bunx cap sync

bunx cap sync 将插件的本机 code 复制到您的本机项目中。每次升级插件后都重新运行它。

导入

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

API 简介

方法 功能描述
startMonitoringForRegion 开始监控一个信标区域。触发进入/离开区域的事件。
stopMonitoringForRegion 停止监控一个信标区域。
startRangingBeaconsInRegion 开始在一个区域内寻找信标。提供连续的距离更新。
stopRangingBeaconsInRegion 停止在一个区域内寻找信标。
startAdvertising 开始将设备广播为一个信标 (仅限 iOS )。
stopAdvertising 停止将设备广播为一个信标 (仅限 iOS )。
requestWhenInUseAuthorization 请求 "使用中" 的位置授权 (用于寻找/监控 )。
requestAlwaysAuthorization 请求 "始终" 的位置授权 (用于后台监控 )。
getAuthorizationStatus 获取当前位置授权状态。
isBluetoothEnabled 检查设备上的蓝牙是否启用。
isRangingAvailable 检查设备是否支持寻找信标功能。
enableARMAFilter 启用距离计算(Android)中的ARMA滤波。
enableBackgroundMode 启用或禁用背景探测器扫描模式(Android)。此功能启用可靠的背景探测器检测的前台服务。必须在请求"始终"位置授权后调用。
setBackgroundScanPeriod 配置背景扫描周期(Android)。控制设备在后台扫描探测器的频率和持续时间。

示例

startMonitoringForRegion()

开始监视一个探测器区域。触发进入/退出该区域的事件。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.startMonitoringForRegion({
  identifier: 'MyBeaconRegion',
  uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
});

stopMonitoringForRegion()

停止监视一个探测器区域。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.stopMonitoringForRegion({
  identifier: 'MyBeaconRegion',
  uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
});

startRangingBeaconsInRegion()

开始在一个区域内连续测量探测器的距离。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.startRangingBeaconsInRegion({
  identifier: 'MyBeaconRegion',
  uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
});

stopRangingBeaconsInRegion()

停止在一个区域内连续测量探测器的距离。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.stopRangingBeaconsInRegion({
  identifier: 'MyBeaconRegion',
  uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
});

startAdvertising()

开始将设备广播为一个iBeacon(iOS)。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.startAdvertising({
  uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D',
  major: 1,
  minor: 2,
  identifier: 'MyBeacon'
});

stopAdvertising()

停止将设备广播为一个iBeacon(iOS)。

import { CapacitorIbeacon } from '@capgo/capacitor-ibeacon';

await CapacitorIbeacon.stopAdvertising();

上表列出了14个核心方法。监听器和版本帮助,以及每个方法的完整契约,均在__CAPGO_KEEP_0__仓库中文档化。 GitHub仓库.

监听事件

addListener 返回一个句柄。调用 handle.remove() 当屏幕卸载时,或者 CapacitorIbeacon.removeAllListeners() 清除所有监听器。

完整参考

继续使用 @capgo/capacitor-ibeacon

如果您正在使用 使用 @capgo/capacitor-ibeacon 来规划原生插件工作,连接它 @capgo/capacitor-ibeacon @capgo/capacitor-ibeacon 开始使用 开始使用 Capgo 插件目录 Capgo 插件目录 Capacitor Capgo 插件 了解 Capacitor Capgo 插件的使用方法 添加或更新插件 添加或更新插件

常见问题

iBeacon插件常见问题

如何在Capacitor应用中安装iBeacon插件?

运行"bun add @capgo/capacitor-ibeacon" (或 "npm install @capgo/capacitor-ibeacon"), 然后运行 "bunx cap sync" 以便 iOS 和 Android 项目捕获到本地 code。从 "@capgo/capacitor-ibeacon" 导入到您的应用 code。

是否@capgo/capacitor-ibeacon与React、Vue和Angular兼容?

是的。iBeacon是一个Capacitor包,因此它可以与任何运行在Capacitor内的Web框架一起工作,包括Ionic、React、Vue、Angular、Svelte和纯JavaScript。

哪个Capacitor版本支持@capgo/capacitor-ibeacon?

Capgo插件遵循Capacitor的主要版本:使用与Capacitor主要版本匹配的插件主要版本(例如插件v8与Capacitor 8)。在GitHub README中列出的维护版本的兼容性表格。

是否@capgo/capacitor-ibeacon免费和开源?

是的。源code在GitHub上公开,https://github.com/Cap-go/capacitor-ibeacon/,并且包是从npm免费安装的。bug报告和pull请求都欢迎。

是否可以在App Store review无需更新code使用iBeacon?

安装或升级插件会更改本机code,因此需要一个新的商店构建。然后,JavaScript、HTML和CSS更改,调用插件的,可以立即与Capgo实时更新一起发布。

不必等待应用程序审查即可将 iBeacon 变更推送

一旦插件在您的商店中构建,Capgo 即刻更新将推送您的 JavaScript、HTML 和 CSS 变更给用户

开始使用 Capgo