我可以在当前的Android版本中使用Android L Preview支持库中的Widgets吗?

Aun*_*yae 3 android gradle android-studio android-5.0-lollipop

我想在现有的Android版本中使用RecyclerView和CardView.他们说它在支持库中.所以,我应该可以使用put"compileSdkVersion"到"Android-L".对 ?

我试图使用那些没有Android L预览设备或模拟器的小部件.我已经检查过这个问题的其他问题.但是,似乎他们都在试用Android-L和Android-L版本.

这是我的依赖.

编译'com.android.support:support-v4:13.0.+'
编译'com.android.support:recyclerview-v7:+'

这是我的目标配置

minSdkVersion 15
targetSdkVersion 20

提前感谢任何想法.

Aun*_*yae 15

我刚刚找到了解决方案.
targetSdkVersionminSdkVersion不是"Android-L"时,我无法使用RecyclerView和CardView构建应用程序的原因是因为内部Google设计的处理操作系统的预览版本与原始版本不同.

当我编译包含Android-L组件的App时,构建工具将minSdkVersiontargetSdkVersion锁定到同一级别.新的支持库(RecyclerView,CardView,Palette等)也被锁定在L API级别.

此行为仅发生在此Android-L预览版本上.

它的修复是将以下内容放在AndroidManifest.xml中.
我不需要改变我的gradle脚本上的任何内容.

<uses-sdk
  tools:node="replace" />
Run Code Online (Sandbox Code Playgroud)

从Android Gradle Plugin版本0.11开始,默认情况下它启用了一个新的Manifest Merger.它允许我们做一些niffy东西.此特定配置告诉清单处理器使用此属性替换较低优先级清单(例如本例中的库清单)中的uses-sdk节点的任何属性.

由于Gradle还将build.gradle中的minSdkVersion和targetSdkVersion插入到这个uses-sdk节点中,这就是我们真正需要添加的内容.

在此处查看有关此问题的更多信息.
点击此处查看与Manifest Merger相关的信息.