【发布时间】:2017-01-16 15:06:46
【问题描述】:
所以我在 eddystone 扫描上使用了 Evothings 示例,但由于某种原因,一段时间后应用程序将不再扫描。
每 500 毫秒调用一次函数 startScan:
function onDeviceReady() {
// Start tracking beacons!
setInterval(function(){ startScan() }, 500);
}
startScan 函数:
function startScan() {
// console.log("Startscan called"+new Date());
// Called continuously when ranging beacons.
evothings.eddystone.startScan(
function(beacon)
{
console.log("Startscan called evo"+new Date());
// Insert/update beacon table entry.
beacon.timeStamp = Date.now();
beacons[beacon.address] = beacon;
domodalandstuff(); // this function opens a bootstrap modal to show some data
},
function(error)
{
console.log('Eddystone Scan error: ' + JSON.stringify(error)+" "+new Date());
}
)};
大约 10 分钟后,我在控制台中看到了这个:
- 日志:Startscan 称为 evoMon 2017 年 1 月 16 日 15:47:45 GMT+0100 (CET)
- 日志:Eddystone 扫描错误:“扫描已在进行中!” 1月16日星期一 2017 年 15:47:45 GMT+0100 (CET)
- 日志:Eddystone 扫描错误:“扫描已在进行中!” 1月16日星期一 2017 年 15:47:45 GMT+0100 (CET)
应用程序只是停止调用 startScan(),所以我的应用程序当然不会再找到信标了。
【问题讨论】: