通过信标跟踪,您可以使用 iBeacon 和低功耗蓝牙测量并定位微位置。
在调用 trackBeacon
时,会将以下信标数据发送到 Analytics 和 Target:
a.beacon.uuid
- 信标的 ProximityUUIDa.beacon.major
- 信标的主编号(如存储编号)a.beacon.minor
- 信标的次编号(如存储内的唯一编号)a.beacon.prox
- 值 0 至 3 表示用户与信标的接近度。以下是这些值代表的含义:
此信标数据是在移动设备解决方案变量中捕获的。
将库添加到您的项目并实施生命周期。
有关更多信息,请参阅核心实施和生命周期中的“将 SDK 和配置文件添加到您的 IntelliJ IDEA 或 Eclipse 项目”**。
导入库:
import com.adobe.mobile.*;
收集信标位置。
可以使用多种第三方库来扫描蓝牙 LE 信标,具体取决于信标制造商。
获取信标信息后,使用以下调用来跟踪位置:
// assumed that the following variables will have been retrieved by the 3rd party beacon library
String beaconUUID;
String major;
String minor;
Analytics.BEACON_PROXIMITY proximity;
// BEACON_PROXIMITY is an enum available in the SDK. Number 0-3 representing how close the
// user is to the beacon. 0 unknown, 1 immediate, 2 near, 3 far.
Analytics.trackBeacon(beaconUUID, major, minor, proximity, null);
当用户远离信标时,清除当前信标:
Analytics.clearBeacon();
除了信标数据之外,您还可以通过每个 trackBeacon
调用发送其他上下文数据:
HashMap cdata = new HashMap<String, Object>();
cdata.put("myapp.ImageLiked", imageName);
Analytics.trackBeacon(beaconUUID, major, minor, proximity, cdata);
上下文数据值必须映射到 Adobe Mobile Services 中的自定义变量: