如果有人以某种方式提出这个问题,我很抱歉。我已经开始使用信标,并在 Xcode (Swift) 中使用 CoreLocation。不过,我确实需要在设备和信标之间进行更准确的确定。到目前为止,我一直在使用标准的邻近区域值(Far、Near 和 Immediate),但这根本没有削减它。对于我正在寻找的解决方案来说,它似乎太不稳定了——这充其量只是一个简单的解决方案。
我的场景;
当用户距离信标大约 4 米时,我需要向用户设备显示通知、广告、图像等。这听起来很简单,但是当我发现信标的唯一真正解决方案是上述邻近区域时,我开始担心,因为我只需要向 3-5 米外的设备显示,不再需要。
我知道 CLBeacon 类的准确度属性,但是 Apple 声明它不应该用于准确定位信标,我相信这是我想要实现的。
这个问题有方法解决吗?任何帮助表示赞赏!
谢谢,奥利
我将在我的应用程序中使用 iBeacon。打开应用程序时是否可以在其上写入值。如果是,我该如何实现这一目标。通过使用 coreBluetooth 我可以做到这一点。
NSData *bytes = [@"0xDE" dataUsingEncoding:NSUTF8StringEncoding];
[peripheral writeValue:bytes forCharacteristic:characteristic
type:CBCharacteristicWriteWithResponse];
Run Code Online (Sandbox Code Playgroud) 我目前正在从事一个项目,该项目有一个与信标相关的部分,因为我看到并阅读了不同的文章和网站,因此不建议在 ios 中使用非 ibeacon 以便在背景检测的时间和可访问性方面进行检测。我读了这篇文章:“我们可以在 iOS 上检测非 iBeacon 信标吗?” 所以基本上我们可以使用ibeacon协议唤醒我们的手机然后使用我们的数据包,所以我的问题是唤醒我们的手机后我们如何使用我们自制的协议连接到我们的相关应用程序?我们是否必须使用CoreBluetooth 用于我们自己的数据包?如果是的话,它对 ios 检测到的速度或什至权限有副作用吗?另一个问题是,在我们唤醒手机后,我们可以向 iOS 发送多少字节?它仍然是一定数量?或者我们可以扩展它?基本上,我们可以在我们的第一个 ibeacon 数据包后发送一个 100KB 的文件吗?
谢谢...
过去几天我一直在玩Estimote Beacons.我开始怀疑iBeacons的有效性,因为它们在确定Beacons位置时具有很高的延迟.
当你移动2-3米时,它需要几秒钟,直到它的位置正确.一个用例场景,如捕捉一个人走过灯塔的人可能很难确定.
是否可以操作CLLocationManager或CLBeaconRegion的更新/刷新率?例如,每0.1秒
有一个关于iBeacons的快速提问.用户是否可以捕获他们在特定范围内收到的信息到信标?让我们说一个iBeacon应用程序正在零售商店中使用,用户走近一个特定的灯塔并收到消息提示并喜欢它,但当他走开时它会消失并出现另一条消息.有没有办法让用户捕获他们喜欢的消息并在以后查看它,即使他们不在信标范围内的商店中?
非常感谢你
初学者Estimote问题:添加多个Estimote信标及其各自的主要/未成年人的正确方法是什么,以便可以使用startRangingBeaconsInRegion单独检测所有信标?
此代码适用于单个信标:
// Single Beacon Region
ESTBeaconRegion* beaconRegion = [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID
major:11111 minor:11111
identifier: @"EstimoteSampleRegion"];
// Start ranging beacons
[self.beaconManager startRangingBeaconsInRegion:beaconRegion];
Run Code Online (Sandbox Code Playgroud)
但是,此代码不适用于多个信标:
// Beacon 1 Region
ESTBeaconRegion* beacon1Region = [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID
major:11111 minor:11111
identifier: @"EstimoteSampleRegion"];
// Beacon 2 Region
ESTBeaconRegion* beacon2Region = [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID
major:22222 minor:22222
identifier: @"EstimoteSampleRegion"];
// Beacon 3 Region
ESTBeaconRegion* beacon3Region = [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID
major:33333 minor:33333
identifier: @"EstimoteSampleRegion"];
// Start ranging beacons
[self.beaconManager startRangingBeaconsInRegion:beacon1Region];
[self.beaconManager startRangingBeaconsInRegion:beacon2Region];
[self.beaconManager startRangingBeaconsInRegion:beacon3Region];
Run Code Online (Sandbox Code Playgroud)
使用此代码,仅检测到最后一个信标.(因此在这种情况下,只检测到beacon3Region).
-
如果您知道如何使用ESTBeaconRegion和startRangingBeaconsInRegion添加和检测多个信标,我将非常感谢一个代码示例,它解释了如何执行此操作.
我使用了万向节信标和Estimote信标.我需要知道两者之间是否存在技术差异?
Estimote每个灯塔售价33美元,而万向节只需5美元!
比赛是什么?
我正在尝试开发一个应用程序,使用许多信标,如在任何多层购物中心说.在这种情况下,我该如何控制它们
假设有人克隆了一个信标并开始使用相同的UUID,主要和次要广告信号,如何防止这种情况以及可以采取的其他安全措施是什么?
如何避免多个通知,假设两个信标冲突的地方任何区域对于多个信标是共同的,如何在应用程序中控制它?
我在Github repo上使用了Altbeacon(Radio Network)提供的基本示例应用程序.
一切似乎都适用于我的iBeacon,Monitoring直到Ranging前景
我已经完成了以下步骤,以使其在Foreground中运行.
public class BeaconReferenceApplication extends Application implements BootstrapNotifier, RangeNotifier
{
private static final String TAG = "BeaconReferenceApplication";
private BeaconManager mBeaconManager;
private Region mAllBeaconsRegion;
private BackgroundPowerSaver mBackgroundPowerSaver;
private RegionBootstrap mRegionBootstrap;
private BackgroundPowerSaver backgroundPowerSaver;
@Override
public void onCreate()
{
mAllBeaconsRegion = new Region(getPackageName(), null, null, null);
mBeaconManager = BeaconManager.getInstanceForApplication(this);
mBackgroundPowerSaver = new BackgroundPowerSaver(this);
mRegionBootstrap = new RegionBootstrap(this, mAllBeaconsRegion);
mBeaconManager.getBeaconParsers().add(new BeaconParser().setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
backgroundPowerSaver = new BackgroundPowerSaver(this);
}
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> arg0, …Run Code Online (Sandbox Code Playgroud) 我正在研究一种在门关闭时保持计数的设备.我想要做的是当我走进门时,我的iPhone会自动同步设备上的数据并将该计数发送到服务器(通过iPhone),而无需打开应用程序或将其置于后台.这有可能,如果是这样的话怎么样?
这是我正在思考的图表:
门关闭 - > BLE通知iPhone - > BLE向iPhone发送计数 - > iPhone将该值发送给服务器
所有没有用户(我)触摸我的设备或打开已安装的iOS应用程序.