在Android Studio中集成Unity Ads的重复BuildConfig

时间:2015-05-27 14:55:31

标签: java android eclipse android-studio ide

我刚刚完成了我的应用程序,并且我试图将广告投放到Unity Ads中。 我去了#34; File"," Import Module"。 接下来我去了#34; File"," Structure Projects",我点击了我的主模块,然后转到右侧的依赖项选项卡,然后点击了+和3.Module依赖项,我选择了我的主要模块 模块取决于。现在代码很好。 但是,当我测试我的应用程序时,成绩构建向我显示: :unityads:compileReleaseJava :unityads:proguardRelease 注意:有1个重复的类定义。(http://proguard.sourceforge.net/manual/ troubleshooting.html#duplicateclass) :unityads:proguardRelease FAILED 错误:任务执行失败':unityads:proguardRelease'。

  

java.io.IOException:无法写[/ Users / Appli / AndroidStudioProjects / The33 / unityads / build /   中间体/捆绑/发布/ classes.jar](不能阅读[/ Users / Appli / AndroidStudioProjects / The33 /   unityads / libs / unity-ads.jar(;;;;;;!META-INF / MANIFEST.MF)](重复的zip条目[unity-ads.jar:com /   unity3d /广告/安卓/ BuildConfig.class]))   我的核心项目的Gradle构建脚本:

apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "studio.pomme.m.the33"
minSdkVersion 8
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(':unityads')
compile 'com.google.android.gms:play-services:6.5.87'
compile 'com.google.android.gms:play-services-wearable:6.5.87'
}

其中一个库项目的Gradle构建脚本:

apply plugin: 'com.android.library'
android {
    compileSdkVersion 21
    buildToolsVersion "19.1.0"
    defaultConfig {}
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
        }
    }
}
dependencies {
    compile files('libs/unity-ads.jar')
}

我不知道该怎么做。

1 个答案:

答案 0 :(得分:1)

问题的原因是Unity Ads JAR包含BuildConfig类,它也是在构建过程中生成的。解决方案是使用AAR而不是JAR导入模块。

  1. 删除现有的Unity Ads模块(“文件” - >“项目结构”)。
  2. 下载Unity Ads SDK。
  3. 从“unity-ads.aar”(“文件” - >“新” - >“新模块” - >“导入JAR / AAR包”)创建模块。