Android Studio、NavDrawer 和支持库问题
Posted
技术标签:
【中文标题】Android Studio、NavDrawer 和支持库问题【英文标题】:Android Studio, NavDrawer and support library issues 【发布时间】:2013-08-01 16:45:51 【问题描述】:我在使用 gradle 的 android Studio 项目中使用 android 支持库时遇到问题。 如果我将支持库添加为依赖项,我将收到“错误:Gradle:任务':AppName:dexDebug'的执行失败。 我做了一些研究,发现使用支持库和其他使用支持库的依赖项(greendao 1.3.0)存在问题。 我想在我的应用程序中使用 NavDrawer,所以我必须使用这些支持库。 如果我删除支持库,我当然会收到“android.support.v4.widget.DrawerLayout”的膨胀错误。
这里有人有想法吗?
我使用了两种依赖导入 编译文件('libs/android-support-v13.jar') 和 编译'com.android.support:support-v4:13.0.0' 在论坛中找到帖子的原因。但这也行不通。
感谢您的支持。
问候, 海洋
【问题讨论】:
【参考方案1】:如果您的其他依赖项也依赖于支持库,您需要确保它们没有使用本地依赖项(即嵌入 jar 文件)。您应该始终仅使用
dependencies
compile 'com.android.support:support-v4:x.y.z'
而不是本地依赖项。确保你的所有依赖项都相同,Gradle 会自动检测所有内容都依赖于同一个库,并且只将它添加到 dex 中一次。
【讨论】:
谢谢。我已经测试过这种依赖包括,但我不确定我是否在 lib 文件夹中也有本地副本。我稍后会尝试。【参考方案2】:我试过了,但我也收到了 dex 错误。 附上你可以看到我当前的 gradle 构建文件。
buildscript
repositories
mavenCentral()
dependencies
classpath 'com.android.tools.build:gradle:0.5.+'
apply plugin: 'android'
repositories
mavenCentral()
dependencies
compile 'com.android.support:support-v4:13.0.0'
compile 'com.google.android.gms:play-services:3.1.36'
compile 'de.greenrobot:greendao:1.3.0'
android
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig
minSdkVersion 15
targetSdkVersion 18
sourceSets
main
java.srcDirs = ['src/main/java', 'src-gen/main/java']
src-gen 文件夹用于我的 greendao 生成的类。 如果您需要更多信息,请告诉我。
编辑: 我使用最新的greendao版本解决了它。补充:编译
de.greenrobot:greendao:1.3.1
而不是编译
de.greenrobot:greendao:1.3.0
现在可以了。
问候, Marine_of_Hell
【讨论】:
以上是关于Android Studio、NavDrawer 和支持库问题的主要内容,如果未能解决你的问题,请参考以下文章
使用 invalidateOptionsMenu() 打开/关闭 NavDrawer 会导致对 SearchView 和 onQueryTextChange 的 onRestore 调用也被调用