我在 android 中使用一些 Sticknfind 信标(sticknfind android SDK)。如何从源代码中的信标获取主要值和次要值?我已经使用了应用程序:StickNFind Beacon Maker,并且我已经指定了值。
Major: 0001 Minor: 0002
为了获取uuid:dev.getBtDevice().getAddress()
有没有dev.getBtDevice().getMinor() 或getMajor()?
android bluetooth-lowenergy android-bluetooth ibeacon ibeacon-android
我想使用 Apple 和 Google 的新 API 来支持此API 文档中所描述的Covid 联系人跟踪。但是当我尝试在 XCode 中使用这些 API 时,找不到这些类:
let request = CTSelfTracingInfoRequest()
Run Code Online (Sandbox Code Playgroud)
如何启用这些 API?
我正在使用iBeacon,并使用三角测量和三边测量(或类似方法),希望能够找到iBeacon与用户设备之间的精确(或相当准确)距离(以英尺/米/等为单位)。最好的方法是什么,我将如何做?
我忘了提:我知道可以找到接近度(即,接近,立即,远等),但是如前所述,理想情况下,我希望找到准确的距离(可能是通过组合RSSI,准确性和接近度值) )。
我的问题基本上是 - 如何修改iBeacon的默认设置,如major,minor和RSSI?
我正在尝试检测多个iBeacons.我已经在他们附近放了三个iBeacons.
问题是逐一检测.不在数组中.它应该返回3个iBeacons.
self.beaconManager = [[ESTBeaconManager alloc] init];
self.beaconManager.delegate = self;
self.region1 = [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID major:21668 minor:53482 identifier:@"EstimoteSampleRegion"];
self.region2= [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_MACBEACON_PROXIMITY_UUID major:3894 minor:57726 identifier:@"EstimoteSampleRegion2"];
self.region3= [[ESTBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_IOSBEACON_PROXIMITY_UUID major:13067 minor:31901 identifier:@"EstimoteSampleRegion3"];
[self.beaconManager startRangingBeaconsInRegion:_region1];
[self.beaconManager startRangingBeaconsInRegion:_region3];
[self.beaconManager startRangingBeaconsInRegion:_region2];
Run Code Online (Sandbox Code Playgroud)
//委托方法
-(void)beaconManager:(ESTBeaconManager *)manager didRangeBeacons:(NSArray *)beacons inRegion:(ESTBeaconRegion *)region {
//checks bRegion, so you could have it searching for other beacons if you wanted after one is notified
NSLog(@"Start");
for (ESTBeacon *iBeacon in beacons) {
NSLog(@"%@",iBeacon.minor);
}
NSLog(@"Finish");
}
Run Code Online (Sandbox Code Playgroud)
控制台O/p
Start
57726
Finish
Start …Run Code Online (Sandbox Code Playgroud) 我知道这有很多种,但我还没有看到完整的答案.我刚收到很多相互矛盾的信息.
我正在尝试将iBeacon用于家庭自动化用例.例如,如果我走进一个带有iBeacon的房间,我打开那个房间里的灯.你可以想象,我需要这个非常迅速(在房间里走几秒钟).当我将我的应用程序放在前台时,这很有效 - 进入和退出该区域的时间很快.但是,如果应用程序在后台,则更不可靠.如果我调用[self.locationManager startUpdatingLocation]并且永远不会停止更新位置,则iBeacon检测的工作方式与应用程序位于前台的情况相同.但是,我认为这不是预期的用例,因为这可能会在一段时间后耗尽电池.我的问题是:
除了预定义的UUID,major,minor和mpower值之外,是否可以从我们这边添加额外的数据到estimote信标?
我想将经验计算的RSSI常数添加到信标广告包中的距离公式中,以便公式在给定环境中更可靠,并且我的用户手机中的应用程序可以将此数据用于计算距离而不是默认一个.
和以前一样,我使用Android Beacon Library,
它已经工作了,我可以通过BLE找到信标 - 蓝牙低功耗,
但是现在,在更新到最新版本的库之后,现在方法onBeaconServiceConnect()不再运行了.
请告诉我我需要做些什么来使其工作,
谢谢,
p/s:代码:
的Manifest.xml
<uses-feature
android:name="android.hardware.bluetooth_le"
android:required="true" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.INTERNET" />
<service
android:name="org.altbeacon.beacon.service.BeaconService"
android:enabled="true"
android:isolatedProcess="false"
android:label="beacon" />
<service
android:name="org.altbeacon.beacon.BeaconIntentProcessor"
android:enabled="true" />
Run Code Online (Sandbox Code Playgroud)
Java的
public class FoundBeaconFragment extends Fragment
implements BeaconConsumer {
@Override
public boolean bindService(Intent intent, ServiceConnection serviceConnection, int i) {
return false;
}
@Override
public Context getApplicationContext() {
return getActivity();
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, …Run Code Online (Sandbox Code Playgroud) 我正在使用tricekit,在他们的示例sdk中,我看到了这些后台模式.
我只需要ibeacon来触发我的设备通知以及我应该允许哪个权限?
上一次,我允许"Acts as Bluetooth Le accessory"和app store拒绝我的申请.我应该允许的最低许可是多少?
我是快速编程的新手,我正在尝试开发app检测信标,但我仍然无法检测到任何信标.
let region = CLBeaconRegion(proximityUUID: NSUUID(UUIDString: "11111111-1111-1111-1111-111111111111")!,major: 1, minor: 1, identifier: "MyBeacon")
locationManager.startMonitoringForRegion(region)
locationManager.startRangingBeaconsInRegion(region)
Run Code Online (Sandbox Code Playgroud)