【发布时间】:2016-05-11 01:49:47
【问题描述】:
我正在将一些组件添加到库模块清单文件中。显然,即使我没有在库的 build.gradle 文件中声明它,也可以使用 ${applicationId} 占位符。唯一声明它的地方是主模块的 build.gradle。
所以我认为,如果我在主模块中添加一个自定义占位符,它也可以工作。
简而言之:这似乎有效:
库的 AndroidManifest.xml:
<activity android:name="${applicationId}.LibraryActivity" ...>
主模块的build.gradle:
defaultConfig {applicationId "package.name.here"...
但这不是:
库的 AndroidManifest.xml:
<activity android:label="${customPlaceholder} ...>
主模块的build.gradle:
defaultConfig {manifestPlaceholders = [customPlaceholder:"Foo"] ...}
是否有一个原因,一个有效,而另一个无效?
【问题讨论】:
-
您找到了实现此目的的方法吗?我的情况和你一样。
-
我有类似但不完全相同的东西。我的库模块有一个启动器活动,我想用主应用程序清单中的一个替换它。有没有办法管理它?我无法编辑主应用程序,因为它有不同的供应商。我只是一个模块,它用作依赖项。清单合并不起作用,因为 Lib 的优先级较低。
标签: android android-studio merge android-manifest placeholder