java - Android: list 中无法识别 targetApi

标签 java android android-studio android-manifest lint

我的 list 中有以下行:

<intent-filter  android:autoVerify="true">

但我收到一个 lint 警告:

Attribute autoVerify is only used in API 23 and higher (current min is 16)

所以我将其更改为如下所示(根据 android studio 给我的建议):

<intent-filter  android:autoVerify="true" tools:targetApi="M">

然后我在构建 apk 时收到此错误:

Error:java.lang.RuntimeException: [path_to_manifest]/AndroidManifest.xml:58:13-67:29: Error: Invalid instruction 'targetApi', valid instructions are : REMOVE,REPLACE,STRICT

Caused by: java.lang.IllegalArgumentException: No enum constant com.android.manifmerger.AttributeOperationType.TARGETAPI

如何在消除 lint 警告的同时消除此错误?

编辑: 我尝试了“清理项目”和“使缓存无效并重新启动”——都无法解决错误。

在问题跟踪器上打开的问题:

https://code.google.com/p/android/issues/detail?id=211805

最佳答案

我找到了答案 here给出了此问题的解决方法。

通过使用行:

<intent-filter  android:autoVerify="true"
            tools:ignore="UnusedAttribute">

lint错误已解决,可以构建apk了。不过,我不会将此标记为已接受的答案 - 我更希望有人可以解释如何使用 targetApi(如果可以使用)?

关于java - Android: list 中无法识别 targetApi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37553946/

相关文章:

java - 无法弄清楚如何实例化从具有 <S, T extends S> 等条件的函数返回的泛型类

java - 在你的应用程序中有多个 main() 好吗?

java - Firestore关系数据模型

android - 如何将一个按钮置于另外两个按钮之间?

java - 从其他客户端解密 RSA 时发生 BadPaddingException

gradle - Android Studio向项目添加外部JAR

android - 如何在 Gradle 中获取当前构建类型

java - 在鼠标悬停在 JavaFX 上时突出显示网格 Pane 单元格

java - 当从 Collection 生成源时,Flink 不进行检查点,BucketingSink 会将文件置于挂起状态

Java套接字连接问题