Android studio Android Studio 4.0 Android:targetSdkVersion 28时未找到foregroundServiceType

Android studio Android Studio 4.0 Android:targetSdkVersion 28时未找到foregroundServiceType,android-studio,android-10.0,foreground-service,Android Studio,Android 10.0,Foreground Service,我正在尝试为Android构建我的应用程序,目标是Android API 28。 但由于我更新了库依赖项,我的应用程序生成失败,出现以下错误: AAPT: error: attribute android:foregroundServiceType not found. 我已经了解到,对于Android Q(API 29)上的某些服务(例如定位服务),用户必须指定前台服务的类型,才能使权限正常工作,但我的目标是API 28,我的AndroidManifest.xml不包含该代码 我正在使用的库

我正在尝试为Android构建我的应用程序,目标是Android API 28。
但由于我更新了库依赖项,我的应用程序生成失败,出现以下错误:

AAPT: error: attribute android:foregroundServiceType not found.
我已经了解到,对于Android Q(API 29)上的某些服务(例如定位服务),用户必须指定前台服务的类型,才能使权限正常工作,但我的目标是API 28,我的AndroidManifest.xml不包含该代码

我正在使用的库是Shake():

我使用了旧版本(12.0.3)的库,没有这个问题


如果您有任何帮助,我们将不胜感激。

看起来您缺少了一些代码,以便让事情正常运行!根据Shake documentation(),它们的屏幕录制功能要求库在AndroidManifest.xml中的服务节点上指定一个属性。这允许Android 10+支持。 您必须在自己的清单中覆盖服务,错误将得到解决。只需将以下行添加到应用程序节点内的
AndroidManifest.xml

<service android:name="com.shakebugs.shake.internal.service.ScreenRecordingService" 
            tools:node="replace"/>

“但由于我更新了库依赖项,我的应用程序生成失败,出现以下错误”--将
compileSdkVersion
设置为30,并删除模块
build.gradle
文件中的
buildToolsVersion
项。错误:工具是未声明的前缀
<service android:name="com.shakebugs.shake.internal.service.ScreenRecordingService" 
            tools:node="replace"/>
<service android:name=".ServiceName"
            android:foregroundServiceType="THE_TYPE_OF_FOREGROUND_SERVICE_TYPE"
            tools:node="replace"/>