如何下载旧版Android支持库?

时间:2015-07-09 15:39:09

标签: android android-gradle android-support-library

我的目标是Android 19(因为那是我的手机正在运行的)。我想添加一个带按钮的通知;似乎正确的方法是使用appcompat-v7.app.NotificationCompat。

但是,当我从Android支持存储库修订版22.2(通过build.gradle依赖项)添加appcompat-v7时,它包含一个文件app / build / intermediates / explosion-aar / com.android.support / appcompat-v7 /22.2.0/res/values-v21/values-v21.xml无法编译,因为它假设目标是21 +。

我尝试删除该文件,但它会重新生成。

似乎没有办法从构建中排除文件。

所以,我需要获得一个旧版本的支持库或存储库,其中不包含21个东西。

我想我可以直接导入所有源代码(并省略v21的东西),而不是通过依赖项?我不清楚从哪里开始。 我可以使用SDK管理器来获取旧版本的SDK,但它只提供最新版本的支持库。

2 个答案:

答案 0 :(得分:2)

在gradle构建文件中,将依赖项更改为19版本(库的版本应与您正在编译的sdk匹配):

dependencies {
    compile 'com.android.support:appcompat-v7:19.1.+'
...
}

编辑:如果支持lib的v19没有NotificationCompat,那么除非您针对更高版本的SDK进行编译,否则不能使用它。您不能包含版本高于已编译SDK的支持库 - 这是您遇到的问题。

在这种情况下改变:

android {
    compileSdkVersion 22
    ...
}

并将依赖项设置为appcompat support lib的22版本

答案 1 :(得分:2)

直接回答你的问题,这就是gradle上的所有一行:

.video-thumbnail i, .video-thumbnail img{
   display: inline-block !important;
   vertical-align: middle;
}

最后一部分是你得到的版本。 compile 'com.android.support:appcompat-v7:22.2.0' 就上面的例子而言。

在此链接上,您可以查看修订号: https://developer.android.com/tools/support-library/index.html#revisions

但是你的问题从根本上是错误的。您不必为您拥有的设备定位API。您可以轻松安全地定位最新的API,使用最新的22.2.0功能和错误修复。

每当您尝试使用非AppCompat的功能时,Lint都会向您发出警告,无论minimumApi