1

我一直在尝试使用Kontakt.io的示例Android应用程序(可在this地址处)实现一个简单的应用程序,该应用程序将连接到Kontakt信标并更改详细信息,如主要,次要,txPower等。我能够检测到信标并阅读上述所有正确的细节,但我无法更改它们。纵观示例应用程序,步骤应该是简单的,这是我做了什么使用Android SDK更改Kontakt.io灯塔特征

  1. onBeaconsDiscovered具有BeaconDevice对象作为参数,所以我选择那些BeaconDevice对象之一,其存储在名为beacon变量列表。然后我说beacon.setPassword("password".getBytes())。使用的实际密码是Kontakt.io Web面板中特定信标的密码。
  2. BeaconConnection beaconConnection = BeaconConnection.newInstance (MyActivity.this, beacon, connListener);
  3. beaconConnection.connect()

这应该根据示例应用程序是它,但它似乎并没有实际工作。我连接到信标(意思是onConnected()回叫被称为),但然后我得到一个错误,说明由于密码错误,验证失败。

我已经尝试了这两个不同的信标,从Kontakt新,使用从Web面板的密码,它不工作,所以,虽然可能性,我不认为我只是有一个错误的信标。

在他们的文档中有一些关于这些信标的主密码的评论 - 不确定从哪里得到该信息,或者如果那是必需的。

我有点怀疑Kontakt在这里有这个示例应用程序的事实,但他们还没有在Google Play商店发布它(即他们的代码实际上是否工作?)。

无论哪种方式,我会很感激我失踪的任何想法。

我想用这个作为一个大型应用程序的一部分,将做一堆事情与信标,因此需要编写我自己的应用程序。

请注意,这是特别关于Kontakt.io信标,特别是他们的Android SDK。

回答

0
beacon.setPassword("password".getBytes()) 

Kontakt.io的信标有4字节长的密码,这就是为什么你不能访问你的信标参数。

The sample app允许您授权您的信标并操纵其参数。

也请注意,一旦你尝试授权错误的密码信标将拒绝连接,并改变其状态,以不可连接。

引入非连接状态,以防止未知用户多个连接请求。

NON-CONNECTABLE状态持续时间不超过20分钟,在此期间不能建立到您的信标的连接。

欲了解更多信息,请访问kontakt.io's knowledge basekontakt.io - Beacon datasheet

+0

我没有在代码片段把实际的密码以上。正如原文所述,我使用Kontakt.io Web面板中的相关信标的密码,正如您所提到的那样,它是一个4字符的密码。 – 2015-02-12 21:59:40

+0

关于不可连接性,首先,如果我使用web面板的正确密码,为什么拒绝它并说密码不正确?其次,每次它说密码不正确时,我都会手动取出电池并将其重置 - 根据kontakt.io文档,应该立即再次连接。感谢您的回应,但我不认为它真的解决了这个问题。 – 2015-02-12 22:01:52