build - Gradle:如何为需要相同 Activity 但具有不同意图过滤器的不同 buil

所以我正在尝试使用 gradle 创建一个单独的 buildType,但是该 buildType 需要为同一个 Activity 使用不同的特性。在这种情况下,我的启动事件需要一个不同的意图过滤器,具体取决于 buildType。这可能吗?

我在 gradle 中收到以下错误:

:Tinder:processUtestManifest
[AndroidManifest.xml:67, AndroidManifest.xml:38] Trying to merge incompatible /manifest/application/activity[@name=com.<company_name>.activities.ActivitySplash] element:
  <activity
      @android:name="com.<company_name>.activities.ActivitySplash"
      <intent-filter>
          <action
--            @android:name="android.intent.action.MAIN">
  <activity
      @android:name="com.<company_name>.activities.ActivitySplash"
      <intent-filter>
          <action
++            @android:name="com.apphance.android.LAUNCH">

最佳答案

目前无法单独合并意图过滤器,因此我建议复制整个 <activity>节点进入

src/buildtype1/AndroidManifest.xml

src/buildtype2/AndroidManifest.xml

它会自动合并到最终 list 中(当然您也希望将其从主 list 中删除)。

关于build - Gradle:如何为需要相同 Activity 但具有不同意图过滤器的不同 buildType 合并 Android list 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18708076/

相关文章:

ios - 无法运行 faSTLane 叹息。 "Couldn' t下载证书"

python - 使用 bitbake 在项目中加快构建时间的方法?

maven - 在maven中构建模块时如何构建依赖项目

javascript - Bower 和 NPM 如何结合在一起?

xcode - 如何在 Xcode 4 的运行脚本构建阶段中使用 sudo?

c++ - 在 CMake 中添加自定义构建步骤

c++ - 尝试构建 boost 时更新 58 个目标失败,发生了什么?

.net - 无法解析主要引用,因为它是针对比当前目标框架更高版本的 .NET 框架构建的

build - 告诉 cmake 保持安静

maven - 在 Jenkins 中设置 Maven 参数