【发布时间】:2018-12-10 16:22:06
【问题描述】:
我使用 Alt-Beacon 参考应用程序作为如何实现引导区域的起点。如果被终止,应用程序会重新启动,但信标格式始终设置为 Alt-Beacon 而不是 iBeacon。
启动时的Logcat:
D/BeaconParser:解析信标布局:m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25
引导代码:
beaconManager = org.altbeacon.beacon.BeaconManager.getInstanceForApplication(this);
beaconManager.getBeaconParsers().clear();
beaconManager
.getBeaconParsers()
.add(new BeaconParser()
.setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));
beaconManager.setBackgroundBetweenScanPeriod(5000l);
beaconManager.setBackgroundScanPeriod(1000l);
beaconManager.setRegionStatePersistenceEnabled(false);
Region region = new Region("backgroundRegion",null, null, null);
regionBootstrap = new RegionBootstrap(this, region);
BackgroundPowerSaver backgroundPowerSaver = new BackgroundPowerSaver(this);
我希望当应用程序重新启动时我应该看到:
m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24
我在 Android Studio 3.1.3 中使用 2.15.2 的 AltBeacon 以及运行 Android 6.0.1 的三星 S5 Mini 测试设备
更多信息:当手机重新启动并连接 USB 时,我希望看到应用程序启动并侦听 iBeacon 数据包。它似乎重新启动,但被操作系统杀死。
Logcat:
12-07 17:32:08.132 8359-8359/net.simplesdktest I/InstantRun: 启动即时运行服务器: 是主进程
12-07 17:32:08.212 8359-8359/net.simplesdktest I/BeaconManager:BeaconManager 在名为“net.simplesdktest”的 pid 8359 上启动,用于应用程序包“net.simplesdktest”。 isMainProcess=true
12-07 17:32:08.357 4889-4889/?我/任务管理器:包信息: getRunningAppProcesses() - proc:net.simplesdktest, pkg:net.simplesdktest, uid:10346, pid:8359
12-07 17:32:12.822 2390-3458/? I/ActivityManager: Killing 8359:net.simplesdktest/u0a346 (adj 15): DHA:empty #21
【问题讨论】:
标签: altbeacon