相关疑难解决方法(0)

每个构建变体有两个res目录,Gradle停止跟踪资源文件中的更改

我非常无辜地转而使用不同的应用程序图标来表示每种产品的味道:

sourceSets.production {
    res.srcDirs = ['res', 'res-production']
}

sourceSets.beta {
    res.srcDirs = ['res', 'res-beta']
}

sourceSets.internal {
    res.srcDirs = ['res', 'res-internal']
}
Run Code Online (Sandbox Code Playgroud)

事情是,在这之后,摇篮停止注意到任何布局文件的变化,比如res/layout/activity_faq.xml,和需要一个干净的构建每次,如果我想包括在APK我的XML的变化.

我首先想到这是一个Android Studio问题,但实际上我可以在命令行上使用纯Gradle重现它,只需查看下面显示的文件build/res/all/internal/debug/layout.

当我跑./gradlew assembleInternalDebug,它输出:

:compileInternalDebugNdk UP-TO-DATE
:preBuild UP-TO-DATE
:preInternalDebugBuild UP-TO-DATE
:prepareInternalDebugDependencies
:compileInternalDebugAidl UP-TO-DATE
:compileInternalDebugRenderscript UP-TO-DATE
:generateInternalDebugBuildConfig UP-TO-DATE
:mergeInternalDebugAssets UP-TO-DATE
:mergeInternalDebugResources
:processInternalDebugManifest UP-TO-DATE
:processInternalDebugResources UP-TO-DATE
:generateInternalDebugSources UP-TO-DATE
:compileInternalDebugJava UP-TO-DATE
:preDexInternalDebug UP-TO-DATE
:dexInternalDebug UP-TO-DATE
:processInternalDebugJavaRes UP-TO-DATE
:validateDebugSigning
:packageInternalDebug UP-TO-DATE
:assembleInternalDebug UP-TO-DATE

BUILD SUCCESSFUL
Run Code Online (Sandbox Code Playgroud)

在这里,processInternalDebugResources被证明是UP-TO-DATE …

android gradle android-gradle-plugin

6
推荐指数
1
解决办法
5884
查看次数

标签 统计

android ×1

android-gradle-plugin ×1

gradle ×1