在 AndroidGradlePlugin 3.5.0 及更高版本上为动态功能模块使用片段测试库时无法构建

Failed to build when using fragment testing library on AndroidGradlePlugin 3.5.0 and above for Dynamic Feature module

因此,我尝试在动态功能模块中使用片段测试库 androidx.fragment:fragment-testing:1.2.4。当我使用 Android Gradle 插件 (AGP) 版本 3.6.3 时,构建失败并出现错误

AAPT: error: resource style/FragmentScenarioEmptyFragmentActivityTheme (aka com.example.reminder.test:style/FragmentScenarioEmptyFragmentActivityTheme) not found.

所以我很好奇并检查了 codelab github 并尝试将该项目上的 AGP 升级到 3.6.3 并且它可以成功构建。但是代码实验室没有使用动态特性。

所以我尝试 运行 仅在我的 app 模块中进行片段测试(不包括动态功能模块),是的,它也可以成功构建。 但是我仍然需要在动态功能模块中测试我的片段,所以我尝试一个一个地玩版本然后当我将 AGP 版本降级到 3.4.1 它可以成功构建。

而且我发现自 AGP 版本 3.5.0 及更高版本以来,它只是无法构建并出现与上述相同的错误。

所以,

AGP 3.5.0 and above:
- Building test on app module only -> works
- Building test on dynamic features -> failed to build

AGP 3.4.2 and below:
- Building test on app module only -> works
- Building test with dynamic features -> works

但我仍然想使用 AGP 3.6.0 因为我想利用 viewBinding。

那么有谁知道如何解决上述使用动态功能模块进行片段测试的错误吗?

将 AGP 升级到 4.0.0 及更高版本应该可以解决问题。