Rob*_*son 11 svg android gradle android-gradle-plugin
我刚刚更新了Android Studio 1.2.1.1,现在gradle在我的资源文件夹中遇到svg问题.我总是使用SVG没有问题,我希望它们将来会被"允许".
:app:mergeDebugResources
:app:mergeDebugResources FAILED
/home/petergriffin/folder1/another-app/MyAwesome-App/app/src/main/res/drawable-hdpi/logo.svg
Error:Error: The file name must end with .xml or .png
Error:Execution failed for task ':app:mergeDebugResources'.
> /home/petergriffin/folder1/another-app/MyAwesome-App/app/src/main/res/drawable-hdpi/logo.svg: Error: The file name must end with .xml or .png
Information:BUILD FAILED
Run Code Online (Sandbox Code Playgroud)
任何想法如何解决?
TWi*_*Rob 19
Android不支持SVG文件作为drawables.即使你把它们放在那里,系统也无法像你期望的那样解码它们.而是尝试将它们放入src/main/res/raw
或src/main/assets
文件夹并适当加载它们(通过外部库).大多数人混淆SVG和Vector-drawables,它们不是一回事.Vector-drawables使用与SVG兼容的路径迷你语言,但就是这样.
当前接受的解决方案是恢复到Gradle插件的古老版本,这在大多数情况下会适得其反.工具团队正在投入大量精力来使构建更好(这是非常值得注意的).
你应该继续前进1.5.0
(现在已稳定一段时间)并添加
android.disableResourceValidation=true
到你的gradle.properties
文件中(通常位于根项目旁边settings.gradle
)以启用1.2.2之前的行为,而不是恢复.
有关详细信息,请参阅http://b.android.com/192493
可绘制资源目录中的webp文件也存在同样的问题.
最新的gradle插件(v1.2.3)无法识别以前曾经使用过的某些图像格式.当我切换回v1.2.2时,我没有这个问题
更新:鉴于此功能已得到修复,您应该升级到最新的gradle插件版本而不是恢复.
您可以通过设置更改build.gradle中的版本:
buildscript {
repositories {
jcenter()
mavenCentral()
// mavenLocal() // Only if you want to use your local maven repo
}
dependencies {
// classpath 'com.android.tools.build:gradle:+'
classpath 'com.android.tools.build:gradle:1.2.2'
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20911 次 |
最近记录: |