首页 文章

我是否可以将最新版本的appcompat库与针对sdk 21的项目一起使用

提问于
浏览
0

我不太了解这个appcompat库,所以如果这不是最聪明的问题,请道歉 .

我有一个项目,我遇到了问题 . 事实证明我将targetSdkVersion设置为23并且因为我想使用21而导致我出现问题所以我将其更改为21 .

在我的build.gradle中,我编译了com.android.support:appcompat-v7:23.1.1 .

当我尝试构建时,这会导致以下问题:

C:\ Users \ Conor \ Documents \ Programming \ AndroidStudioProjects \ AndroidStudioProjects \ RouteTracker \ app \ build \ intermediates \ explosion-aar \ com.android.support \ appcompat-v7 \ 23.1.1 \ res \ values-v23 \ values- v23.xml错误:(2)检索项目的父项时出错:找不到与给定名称“android:TextAppearance.Material.Widget.Button.Inverse”匹配的资源 . 错误:(2)检索项目的父项时出错:找不到与给定名称“android:Widget.Material.Button.Colored”匹配的资源 . 错误:任务':app:processDebugResources'的执行失败 . com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:处理'命令'C:\ Users \ Conor \ AppData \ Local \ Android \ sdk \ build-tools \ 21.0.0 \ aapt .exe''以非零退出结束

所以我尝试使用com.android.support:appcompat-v7:21.1.0的appcompat(因为它是我唯一可以明确找到的那个),但它也没有用 . 说它无法找到并告诉我使用最新版本,即23.1.1 .

我应该使用23.1.1吗?如果是这样,任何想法这些错误是什么?

3 回答

  • 0

    您已经获得了解决方案但问题的答案“我可以使用最新版本的appcompat库以及针对sdk 21的项目”,如下所示 . 项目lib应该与'compileSdkVersion'兼容,而不一定与targetSdkVersion兼容 . 理想情况下,您的compileSdkVersion和targetSdkVersion将是相同的,但如果您的要求是针对较低的targetSdkVersion,那么您可以将它保持低于compileSdkVersion .

  • 3

    错误:(2)检索项目的父项时出错:找不到与给定名称“android:TextAppearance.Material.Widget.Button.Inverse”匹配的资源 .

    发生这种情况是因为您正在使用需要编译的支持库 v23 with API 23.

    更改 build.gradle 此行:

    compileSdkVersion 23
    

    您可以使用其他版本的支持库,但是:

    • 注意有另一个使用最新版本的依赖项

    • the 21.1.0 doesn't exist

    • 使用正确的api进行编译

    这里是完整列表:

    //it requires compileSdkVersion 23
      compile 'com.android.support:appcompat-v7:23.1.1'
      compile 'com.android.support:appcompat-v7:23.1.0'
      compile 'com.android.support:appcompat-v7:23.0.1'
      compile 'com.android.support:appcompat-v7:23.0.0'
    
      //it requires compileSdkVersion 22
      compile 'com.android.support:appcompat-v7:22.2.1'
      compile 'com.android.support:appcompat-v7:22.2.0'
      compile 'com.android.support:appcompat-v7:22.1.1'
      compile 'com.android.support:appcompat-v7:22.1.0'
      compile 'com.android.support:appcompat-v7:22.0.0'
    
      //it requires compileSdkVersion 21
      compile 'com.android.support:appcompat-v7:21.0.3'
      compile 'com.android.support:appcompat-v7:21.0.2'
      compile 'com.android.support:appcompat-v7:21.0.0'
    
  • 0

    不.AppCompat最新更新删除了一些旧的依赖项 . 这仅适用于v23 . 因此,您必须使用targetSdkVersion 23更新您的代码 . (marshmallow) .

相关问题