问题描述
我开发了一个基于 Android Beacon 库的应用,它可以正常运行 1-2 天。然后它就不再启动了,我需要重新安装或清除其应用程序数据。它作为前台服务运行。 我发现“android-beacon-library-scan-state”文件越来越大(几个小时内有 10 个信标,大约 10Mbytes)我首先想我应该使用 setRegionStatePersistenceEnabled(false) 但它停止了“org.altbeacon .beacon.service.monitoring_status_state”将被创建而不是“android-beacon-library-scan-state”。
I am ranging. This file is created after 1 hour used 12 beacons. <a href="https://wetransfer.com/downloads/464b91135dab99ebcc400a6c9008f60d20210116121500/f6c244">file</a>
解决方法
如果使用前台服务,请确保您已设置 beaconManager.setEnableScheduledScanJobs(false)
。这将防止系统保留传输 Eddystone-TLM 的所有设备的 MAC 地址,以期将它们与后续检测对齐。这种持久性是导致您的文件增长到不合理大小的原因。