android beacon开发
- ios对beacon有了很好的支持,android有个第三方库,支持的还好,稳定性可以,当然没有ios支持的好了
- 引用库compile ‘org.altbeacon:android-beacon-library:2.9’
看看核心代码
@Override
public void onCreate() {
super.onCreate();
beaconManager = BeaconManager.getInstanceForApplication(this);
initBeacon();
beaconManager.getBeaconParsers().add(new BeaconParser().setBeaconLayout(IBEACON_FORMAT));
beaconManager.bind(this);
}
private void initBeacon() {
beaconManager.setBackgroundScanPeriod(DEFAULT_BACKGROUND_SCAN_PERIOD);
beaconManager.setBackgroundBetweenScanPeriod(DEFAULT_BACKGROUND_BETWEEN_SCAN_PERIOD);
}
//服务连接
@Override
public void onBeaconServiceConnect() {
beaconManager.addRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> collections, Region region) {
//回调的方法 每隔固定的时间(这里设置一秒)
}
});
try {
beaconManager.startRangingBeaconsInRegion(new Region(FILTER_UUID, null, null, null));
} catch (RemoteException e) {
e.printStackTrace();
}
}
collections包含了所有的数据,扫描的工作建议写在服务里。