问题描述
我们正在后台进行信标扫描。为此,我使用了 altBeacon 库进行后台扫描。后台扫描工作正常,但是当我杀死应用程序时出现以下错误:
堆栈跟踪:
FATAL EXCEPTION: main
Process: com.demobeacon.android,PID: 24256
java.lang.RuntimeException: Unable to create application com.demobeacon.DemoBeaconApplication: java.lang.IllegalStateException: Not allowed to start service Intent { cmp=com.demobeacon.android/org.altbeacon.beacon.service.BeaconService }: app is in background uid UidRecord{1b57628 u0a606 TRNB idle procs:1 seq(0,0)}
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5829)
at android.app.ActivityThread.-wrap1(UnkNown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1685)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:6651)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:824)
Caused by: java.lang.IllegalStateException: Not allowed to start service Intent { cmp=com.demobeacon.android/org.altbeacon.beacon.service.BeaconService }: app is in background uid UidRecord{1b57628 u0a606 TRNB idle procs:1 seq(0,0)}
at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1531)
at android.app.ContextImpl.startService(ContextImpl.java:1487)
at android.content.Contextwrapper.startService(Contextwrapper.java:660)
at org.altbeacon.beacon.startup.RegionBootstrap$InternalBeaconConsumer.bindService(RegionBootstrap.java:228)
at org.altbeacon.beacon.BeaconManager.bind(BeaconManager.java:477)
at org.altbeacon.beacon.startup.RegionBootstrap.<init>(RegionBootstrap.java:114)
at com.demobeacon.DemoBeaconApplication.onCreate(DemoBeaconApplication.kt:170)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1120)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5826)
有关信息,请查找以下代码片段:
beaconManager = BeaconManager.getInstanceForApplication(this)
beaconManager?.backgroundMode = true
beaconManager?.disableForegroundServiceScanning()
beaconManager?.setEnableScheduledScanJobs(false)
beaconManager?.backgroundBetweenScanPeriod = 0
beaconManager?.backgroundScanPeriod = 1100
beaconManager?.beaconParsers?.add( BeaconParser().setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"))
BluetoothMedic.getInstance().setNotificationsEnabled( true,org.altbeacon.beacon.R.drawable.notification_icon_background )
BluetoothMedic.getInstance().enablePowerCycleOnFailures(this)
BluetoothMedic.getInstance().enablePeriodicTests(this,BluetoothMedic.SCAN_TEST BluetoothMedic.TRANSMIT_TEST)
region = Region("wildcard-region",null,null)
regionBootstrap = RegionBootstrap(this,region)
BackgroundPowerSaver(this)
如何处理这个错误? 非常感谢您!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)