我使用自定义构建目录进行gradle。 它按以下方式设置:
gradlew_runner.bat --gradle-user-home="$(GradleUserHome)" -PbuildDir="$(BuildDir)"
(这些参数传递给gradlew.bat
)
Crashlytics插件引发com.crashlytics.tools.android.project.ManifestData$ManifestIOException
例外,
因为它试图在我的源目录myproject\build\manifests\debug\AndroidManifest.xml
但我的清单位于$(BuildDir)\myproject\build\manifests\debug\AndroidManifest.xml
。
Crashlytics显示以下消息:
用法:com.crashlytics.tools.android.DeveloperTools
-androidManifest AndroidManifest.xml的路径)
但这些参数无法直接传递给gradlew.bat
。
有没有办法在build.gradle
中设置清单路径?
答案 0 :(得分:6)
引用Crashlytics的Michael Bonnel:
只需在build.gradle风格中添加:
crashlytics {
manifestPath = 'path/to/manifest/AndroidManifest.xml'
}
这将覆盖我们正在寻找的位置!
在我的情况下,我将构建目录作为命令行参数-PbuildDir="somepath"
传递,
所以最终解决方案是:
if (buildDir) {
buildTypes {
debug {
crashlytics {
manifestPath = "$buildDir/manifests/debug/AndroidManifest.xml"
}
}
}
}