Android Studio中Assets目录JPEG文件引发Gradle错误的解决咨询
解决Android Studio中Assets目录JPG文件的Gradle报错问题
别慌,我之前也碰到过一模一样的情况,大概率是你的Gradle配置里对Assets目录的文件过滤规则出了问题,导致只允许XML文件通过。下面给你几个靠谱的解决思路:
方法1:检查并修正app模块的build.gradle配置
打开你的app/build.gradle(如果用Kotlin DSL就是build.gradle.kts),找一下sourceSets相关的配置,看看是不是不小心加了只允许XML文件的过滤规则:
android { sourceSets { main { assets.srcDirs = ['src/main/assets'] // 排查有没有这种错误的规则 assets.include '**/*.xml' } } }
如果发现了上面这行assets.include '**/*.xml',要么直接删掉它(让Gradle默认允许所有Assets文件),要么把你需要的文件类型都加进去,比如:
assets.include '**/*.xml', '**/*.jpg', '**/*.png', '**/*.html'
方法2:用packagingOptions强制允许目标文件
有些第三方插件或者隐式的打包规则可能会偷偷排除非XML文件,你可以在build.gradle里添加这段配置,告诉Gradle优先保留这些文件:
android { packagingOptions { pickFirst '**/*.jpg' pickFirst '**/*.png' pickFirst '**/*.html' // 其他需要的文件类型也可以加在这里 } }
方法3:确认Assets目录结构与引用路径
先检查你的JPG文件是不是真的放在src/main/assets目录下,别不小心丢到res/xml这类专用目录里了——那肯定会触发格式报错。另外,WebView的HTML里引用图片的路径要写对,比如图片在assets/images/photo.jpg,HTML里的路径应该是file:///android_asset/images/photo.jpg。
最后试个万能小技巧
如果改完配置还是报错,试试点击Android Studio顶部菜单栏的Clean Project,然后再Rebuild Project——有时候Gradle的缓存会让新配置不生效,清一下就好了。
内容的提问来源于stack exchange,提问作者Reco
相关产品推荐
相关产品推荐

