我是新的安德里奥德和信标,我试图实现发射器(发布者使用三星s7安卓手机作为信标)和接收器(侦听器)使用安德里奥德另一个三星S7的phone。为此,我尝试使用Altbeacon库2-10。
首先,我的问题是,是否有可能在没有真正的信标的情况下进行传输。我不想模拟。我想用一部手机做信标,用另一部手机做接收器。
如果是这样,我尝试实现发射器的代码,在应用程序的生命周期中,我只能看到一次AdvertiseCallback调用和一次进入onStartSuccess。这是正确的行为吗?或者,我是否需要编写和调度以保持回调?
请给我一些建议。下面的代码片段
callback = new AdvertiseCallback() {
@Override
public void onStartSuccess(AdvertiseSettings settingsInEffect) {
super.onStartSuccess(settingsInEffect);
Log.d(LOG_TAG, "Advertisement start succeeded .");
}
@Override
public void onStartFailure(int errorCode) {
super.onStartFailure(errorCode);
Log.d(LOG_TAG, "Advertisement Failed ERROR "+Integer.toString(errorCode));
}
};
beaconTransmitter.startAdvertising(beacon, callback);发布于 2017-05-29 19:36:00
BeaconTransmitter将在兼容设备上发出与专用硬件发射器的输出无法区分的真实BluetoothLE通告。它创造了一个真正的灯塔。
对于每个更改发送器状态的回调实例,都应该发出一次回调。换句话说,如果您使用相同的回调调用start两次,则可能得不到第二个回调。您需要显示在上下文中调用startAdvertisement的位置。如果您想保证回调,请尝试停止传输,然后再调用第二次启动。
无论如何,测试它是否工作的最好方法是使用第二个设备扫描广告,并验证检测到的信标。有关更多信息,请查看此处:http://altbeacon.github.io/android-beacon-library/beacon-transmitter.html
https://stackoverflow.com/questions/44238108
复制相似问题