相关疑难解决方法(0)

iBeacon在后台 - 用例

与iBeacon及其背景能力相关的SO问题数量正在增加,并且在这一点上存在一些混淆.我一直在测试AirLocate项目.

iBeacon有2个"能力":区域监控和测距.

区域监控仅限于20个区域,可以在后台(监听设备)运行,并有不同的代表通知该区域的进入/退出的听力应用程序(和用户) - 即使应用程序在后台或手机已锁定.

测距仅在前台工作,但会返回(到听音设备)所有iBeacons及其属性(UUID等等)的数组(无限制?)

此外,20个区域监控是设备限制.如果用户正在使用地理围栏提醒,则使用区域监控的其他应用程序; 这会降低这个数字.

  1. 那么我们是否说我不能部署一个商城范围内的(100商店+)应用程序,该应用程序使用商店iBeacons向用户发送"特定于商店"的通知,而应用程序在后台或手机被锁定?

  2. 我认为广告设备(信标)也必须在前台,以宣传听音设备可以"进入"的区域.我们也这样说,如果商店的所有者拥有iOS设备; 我不能通过要求他使用他的iPhone(至少在早期)作为广告设备(信标)来节省他的钱 - 因为应用程序很可能并不总是在前台?

  3. 因此,在iBeacon + MLB的情况下,单个UUID(或<20 UUID)用于应用程序可能确定入口门,然后将要求用户解锁手机/将应用程序带到前台用它(找座位等)?

然后我可以调用iBeacon:单个位置/事件(商店,公园等)功能需要用户最"前景"的注意力才能拥有"完整"的实际用例吗?

我试图阐明用户案例以使其实用化.请回复多于是或否.

core-bluetooth bluetooth-lowenergy ios7 ibeacon

33
推荐指数
1
解决办法
1万
查看次数

iBeacon:获得主要和次要 - 只寻找uuid

我正在使用air locate示例并仅通过uuid监视iBeacons.当我得到输入的区域事件时,如果我只是在寻找uuid,我似乎无法从触发事件的信标/区域获得主要和次要(如果我正在监视一个uuid,我可以指定的主要和次要) - 有没有人知道这样做的方法/我错过了什么?

我真的不想开始测距 - 看起来我不应该......

(用例是说许多商店都带有相同uuid的信标,然后发出操作系统通知,其中包含有关该商店的相关信息(通过查询主要和次要获得))

这基本上就是我做的事情:

CLBeaconRegion *region = [[CLBeaconRegion alloc] initWithProximityUUID:uuid
identifier:@"blah"];
region.notifyOnEntry = YES;
region.notifyOnExit = YES;
region.notifyEntryStateOnDisplay = YES;

[self.locationManager startMonitoringForRegion:region];
Run Code Online (Sandbox Code Playgroud)

然后在app委托中:

- (void) locationManager:(CLocationManager*)manager didDetermineState:(CLRegionState)state forRegion:(CLRegion*)region {

    // assume for now its the iBeacon
    CLBeaconRegion *beaconRegion = (CLBeaconRegion*) region;

    beaconRegion.major  // hasn't been set...

}
Run Code Online (Sandbox Code Playgroud)

非常感谢!

iphone ibeacon

7
推荐指数
1
解决办法
1万
查看次数