java DidRangeBeanConsinRegion并不总是在altBeacon库中工作
我在我的项目中使用alt beacon库,但我在获取信标时遇到了一个大问题。第一次,该方法检测1或2个信标,之后不检测任何信标。信标启动良好(我已与定位应用程序进行了检查,一切正常)。我还关闭了wifi。我在stackoverflow中读到了一些解决方案,但任何东西都不利于解决我的问题
获取信标的代码是:
@Override
public void onBeaconServiceConnect() {
try {
beaconManager.startRangingBeaconsInRegion(new Region("myRangingUniqueId", null, null, null));
} catch (RemoteException e) {
e.printStackTrace();
}
beaconManager.addRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> collection, Region region) {
for (Beacon oneBeacon : collection) {
toProcessBeacon(oneBeacon);
}
}
});
}
第一次(1或2个信标)拘留是好的,但之后就不好了
下面是日志:
01-03 16:44:53.531 D/BluetoothLeScanner: onScanResult() - ScanResult{mDevice=73:64:DC:CC:28:89, mScanRecord=ScanRecord [mAdvertiseFlags=-1, mServiceUuids=null, mManufacturerSpecificData={280=[-66, -84, -8, -49, -59, 97, 8, -28, 120, 120, 120, 120, 120, 127, 127, 127, 127, 127, 0, 1, 0, 0, -56, 0]}, mServiceData={}, mTxPowerLevel=-2147483648, mDeviceName=null], mRssi=-35, mTimestampNanos=2335797686443}
01-03 16:44:54.546 D/ScanRecord: parseFromBytes
01-03 16:44:54.551 D/ScanRecord: first manudata for manu ID**strong text**
pd:我的手机是三星GALAXY ALPHA和LG MOTO E,都是5.0.2安卓版本
非常感谢
# 1 楼答案
接下来的问题是:
@davidyong告诉我问题可能出在Android的生命周期上。他说得对。程序中有一个无限循环
谢谢你@davidyong