首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Kontakt.io API从Kontakt.io信标中获取电池电平

如何使用Kontakt.io API从Kontakt.io信标中获取电池电平
EN

Stack Overflow用户
提问于 2017-03-01 21:36:35
回答 2查看 696关注 0票数 1

我需要从kontakt.io信标中获得电池电平。我已将布局设置如下,在RangingBeaconsInRegion.中读取信标时,DataFields为空。

我希望我能从Kontakt.io文档中描述的最后一点中读取电池级别。

这是我目前的代码:

代码语言:javascript
复制
private BeaconManager InitializeBeaconManager()
{
    BeaconManager bm = BeaconManager.GetInstanceForApplication(Xamarin.Forms.Forms.Context);

    var iBeaconParser = new BeaconParser();
    iBeaconParser.SetBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25");
    bm.BeaconParsers.Add(iBeaconParser);

    _rangeNotifier.DidRangeBeaconsInRegionComplete += RangingBeaconsInRegion;

    bm.Bind((IBeaconConsumer)Xamarin.Forms.Forms.Context);

    return bm;
}

void RangingBeaconsInRegion(object sender, RangeEventArgs e)
{
    if (e.Beacons.Count > 0)
    {
        var beacon = e.Beacons.FirstOrDefault();

        var data = beacon.DataFields.FirstOrDefault();
        // here DataFields is empty!

    }
}

我使用的是Xamarin表单,这是Android版本的代码。

这个是可能的吗?还是我需要使用Kontakt.io API?

更新

在应用新布局之前,我已经删除了所有解析器,并且能够读取dataFields。但是,我得到的值是8,我不知道这个值是什么意思。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-01 23:39:59

我不肯定Xamarin的语法,但是在添加自定义解析器之前尝试删除所有现有的信标解析器。我怀疑内置的iBeacon解析器仍然处于活动状态,并且它首先是匹配的。

票数 2
EN

Stack Overflow用户

发布于 2017-03-22 09:19:18

Kontakt.io信标中的电池级别是其"扫描响应包“的一部分,而不是iBeacon结构的一部分,您必须使用CoreBluetooth来读取特征1,服务5

在此描述也是这方面工作原理的一个快速分解,最近推出的茜素组分使用相同的CoreBluetooth方法

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42542528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档