我按照https://developer.android.com/tools/building/multidex.html
处的多指南指南进行操作但我收到此错误未找到Gradle DSL方法:'multiDexEnabled()'。我更新了Android内置工具,Android支持存储库和库。这是我的gradle.build文件。我在这里做错了吗?
Could not find method multiDexEnabled() for arguments [true] on ProductFlavorDsl_Decorated{name=main, minSdkVersion=ApiVersionImpl{mApiLevel=10, mCodename='null'}, targetSdkVersion=ApiVersionImpl{mApiLevel=17, mCodename='null'}, renderscriptTargetApi=-1, renderscriptSupportMode=null, renderscriptNdkMode=null, versionCode=-1, versionName=null, applicationId=test.com.app, testApplicationId=null, testInstrumentationRunner=null, testHandleProfiling=null, testFunctionalTest=null, signingConfig=null, resConfig=null}.
的build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "21.1.1"
defaultConfig {
applicationId "test.com.app"
minSdkVersion 10
targetSdkVersion 17
// Enabling multidex support.
multiDexEnabled true
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile project(':addThisSDK')
compile project(':centeredContentButton')
compile project(':googleplayservices_lib')
compile files('libs/addthis0.0.8.jar')
compile files('libs/adxtag2.4.6.jar')
compile files('libs/android-support-v4.jar')
compile files('libs/aws-android-sdk-1.7.1.1-debug.jar')
compile files('libs/commons-lang-2.6.jar')
compile files('libs/crittercism_v4_4_0_sdkonly.jar')
compile files('libs/dd-plist.jar')
compile files('libs/FiksuAndroidSDK_4.1.1.jar')
compile files('libs/iqengines-sdk-barcode.jar')
compile files('libs/irEventTracker-1.2.jar')
compile files('libs/jolt-core-0.0.7.jar')
compile files('libs/json-utils-0.0.7.jar')
compile files('libs/jsoup-1.7.2.jar')
compile files('libs/kooaba-api-v4-java.jar')
compile files('libs/signpost-commonshttp4-1.2.1.1.jar')
compile files('libs/signpost-core-1.2.1.1.jar')
compile 'com.android.support:multidex:1.0.0'
}
答案 0 :(得分:5)
确保您应用的gradle文件中的依赖项具有以下行:
dependencies {
compile 'com.android.support:multidex:1.0.0'
compile 'com.android.support:appcompat-v7:21.0.0'
}
此外,在您的全局(项目)gradle文件中,请确保您拥有最新的gradle版本。
dependencies {
classpath 'com.android.tools.build:gradle:0.14.0'
}
在SDK管理器中,确保您拥有最新的支持库和repo。
在AndroidManifest.xml中。添加以下行:
android:name="android.support.multidex.MultiDexApplication"
您可以阅读整篇文档here。
答案 1 :(得分:4)
您必须运行Android Gradle插件的0.14.0或更高版本。有关每个版本中的内容的详细信息,请参阅http://tools.android.com/tech-docs/new-build-system上的发行说明。
答案 2 :(得分:4)
将multiDexEnabled true
命令放在错误的位置时,我也收到此错误。确保它在defaultConfig代码块中:
android {
...
defaultConfig {
...
// Enabling multidex support.
multiDexEnabled true
}
}
答案 3 :(得分:0)
设置
minSdkVersion 21
这对我有效。
答案 4 :(得分:0)
在app / build.gridle中的defaultConfig下添加:
defaultConfig {
...
multiDexEnabled true
...
}
然后,如果您还没有依赖项阻止,则在底部完全按照以下步骤添加此代码:
dependencies {
...
implementation "com.android.support:multidex:1.0.3"
...
}
最后,在pubspec.yaml
下的dependencies
中添加:
firebase_core: ^0.5.0+1
这些更改之后,您的应用应该可以正常运行。
答案 5 :(得分:-1)
确保应用元素中的Android清单文件中包含android:name="android.support.multidex.MultiDexApplication"
。