// Wake lock might not be needed for your application, up to you.
BleManager.get(this).pushWakeLock();
BleManager.get(this).setConfig(new BleManagerConfig()
{{
scanMode = BleScanMode.LOW_POWER;
}});
BleManager.get(this).startPeriodicScan(Interval.FIVE_SECS, Interval.FIVE_SECS, new ScanFilter()
{
@Override public Please onEvent(ScanEvent e)
{
return Please.acknowledgeIf(e.macAddress().equals("DE:CA:FF:C0:FF:EE"));
}
});
1 回答
为了给你一个强大的解决方案,消耗少量的能量,并适用于所有操作系统版本与其不同的扫描API将是数百行复杂的代码 . 我知道因为我已经完成了,所以请参阅https://github.com/iDevicesInc/SweetBlue/blob/master/src/com/idevicesinc/sweetblue/P_Task_Scan.java,了解您必须处理的内容 .
因此,如果您处于概念验证阶段并且只是想要快速的东西,请使用SweetBlue在Activity类中尝试以下内容:
这将使您扫描五秒钟,五秒钟关闭,重复直到您拨打
stopPeriodicScan()
.