Robolectric 3支持Gradle分裂

时间:2015-08-03 08:37:09

标签: android gradle robolectric

我有build.gradle Android拆分:

    splits {
    abi {
        enable true
        reset()
        include 'x86', 'mips', 'armeabi-v7a', 'armeabi'
        universalApk false
    }
}


android.applicationVariants.all { variant ->
    // assign different version code for each output
    variant.outputs.each { output ->
        output.versionCodeOverride =
                versionCodes.get(output.getFilter(OutputFile.ABI), 0) * 1000000 + android.defaultConfig.versionCode
    }
}

Robolectric更新为3.0后,我成了路径错误:

build/intermediates/manifests/full/debug/AndroidManifest.xml not found or not a file; it should point to your project's AndroidManifest.xml

因为我在build / intermediates / manifests / full /有4个splits文件夹

      armeabi/     armeabi-v7a/ mips/        x86/   

我如何设置Robolectric配置或gradle配置,我有分裂?

谢谢

更新: 在我的所有课程中,我都有以下配置:

@RunWith(RobolectricGradleTestRunner.class)
@Config(sdk = 21, manifest = "../application/AndroidManifest.xml", constants = BuildConfig.class)

1 个答案:

答案 0 :(得分:2)

我认为最简单的方法就是将其指向x86/AndroidManifest.xml

您可以使用manifest中的@Config键指定此项,例如

@Config(manifest="path-here")

由于每次测试都需要这个,因此您也可以考虑创建属性文件。有关此问题的详细信息,文档为here