在应用程序启动时,应用程序启动应该执行某些网络任务的服务.在针对API级别26后,我的应用程序无法在后台启动Android 8.0上的服务.
引起:java.lang.IllegalStateException:不允许启动服务Intent {cmp = my.app.tt/com.my.service}:app在后台uid UidRecord {90372b1 u0a136 CEM空闲过程:1 seq(0,0) ,0)}
据我所知,它涉及: 后台执行限制
如果针对Android 8.0的应用程序在不允许创建后台服务的情况下尝试使用该方法,则startService()方法现在会抛出IllegalStateException.
" 在不允许的情况下 " - 它实际意味着什么?以及如何解决它.我不想把我的服务设置为"前景"
我正在创建我的第一个Android应用程序,我需要使用服务.用户界面将有一个复选框(CheckBoxPreference),用于打开/关闭服务,只有我的应用程序才能访问该服务(不需要共享它).
到目前为止,这个功能的UI已准备就绪,我知道如何响应事件,我不知道如何创建服务以及如何连接到它.
这个想法是服务继续监听事件并在后台响应它们,并且应用程序仅用于打开/关闭它或更改某些设置.
我在网上寻找过教程,但我似乎没有得到这个过程.