gradle脚本来绕过这个限制 public.xml

public.xml用来告诉aapt保持固定的资源ID

res/values/pulibc.xml

   

android gradle plugin 从1.3.0开始忽略了public.xml ,不过可以通过gradle脚本来绕过这个限制。

afterEvaluate {

for(variantinandroid.applicationVariants) {

defscope = variant.getVariantData().getScope()

String mergeTaskName = scope.getMergeResourcesTask().name

defmergeTask =tasks.getByName(mergeTaskName)

mergeTask.doLast {

copy {

inti=0

from(android.sourceSets.main.res.srcDirs) {

include'values/public.xml'

rename'public.xml', (i++ ==0?"public.xml":"public_${i}.xml")

}

into(mergeTask.outputDir)

}

}

}

##END

你可能感兴趣的:(gradle脚本来绕过这个限制 public.xml)