由android.app.ForegroundServiceStartNotAllowedException引起的sta



我已经将Android SDK项目30升级到31。此外,我正在使用安卓信标库扫描iBeacon。

安卓12我得到了以下100%后台应用程序崩溃的后果。

由android.app.ForegroundServiceStartNotAllowedException引起:由于mAllowStartForeground false而不允许startForegroundService((:service com.beacon.android/org.altbeacon.beacon.service.BeaconService在android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:54(在android.app.ForegroundServiceStartNotAllowedException$1.createFromParcel(ForegroundServiceStartNotAllowedException.java:50(在android.os.Parcel.readParcelable(Parcel.java:3345(在android.os.Parcel.createExceptionOrNull(Parcel.java:2432(在android.os.Parcel.createException(Parcel.java:2421(在android.os.Parcel.readException(Parcel.java:2404(在android.os.Parcel.readException(Parcel.java:2346(在android.app.IActivityManager$Stub$Proxy.startService(IActivityManager.java:6897(在android.app.ContextImpl.startServiceCommon(ContextImpl.java:1926(在android.app.ContextImpl.startForegroundService(ContextImpl.java:1892(在android.content.ContextWrapper.startForegroundService(ContextWrapper.java:796(网址:org.altbeacons.beacon.BeaconsManager.bindInternal(BeaconsManager.java:438(网址:org.altbeacons.beacon.BeaconsManager.autoBind(BeaconsManager.java:1810(网址:org.altbeacons.beacon.BeaconsManager.startMonitoring(BeaconsManager.java:1136(网址:com.beacons.BeaconApplication.onCreate(BeaconsApplication.kt:170(在android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1211(在android.app.ActivityThread.handleBindApplication(ActivityThreads.java:7429(在android.app.ActivityThread.access$1700(ActivityThreads.java:309(在android.app.ActivityThread$H.handleMessage(ActivityThreads.java:2268(在android.os.Handler.dispatchMessage(Handler.java:106(在android.os.Looper.roopOnce(Looper.java:226(在android.os.Looper.loop(Looper.java:313(在android.app.ActivityThread.main(ActivityThreads.java:8582(位于java.lang.reflect.Method.ioke(Method.java(网址:com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:563(网址:com.android.internal.os.ZygoteInit.main(ZygoteNit.java:1133(

当前使用低于版本的Altbeacon库

implementation 'org.altbeacon:android-beacon-library:2.19.3'

此外,在Android SDK版本30以下,它的工作绝对正常。

提前感谢

这是由安卓12的安全更改引起的。对于针对SDK 31的应用程序,安卓12现在会阻止启动前台服务,除非在非常特殊的情况下通常,您的应用程序必须在屏幕上可见才能启动前台服务。

安卓信标库中特定问题的解决方案已在后续库版本中发布。请参阅此处讨论的解决方案。

有关使用前景服务的更大问题的讨论,请参阅此处

相关内容

  • 没有找到相关文章

最新更新