Gradle 3.5.0的Android导航组件(导航图)问题

时间:2019-09-09 09:29:33

标签: android android-studio jenkins android-gradle-plugin

我将Android Studio版本更新为3.5,并将gradle更新为3.5.0,而未将gradle包装器从5.1.1更新为5.4.1-引发的问题是产生了Android Manifest标签(<nav-graph>)元素在这里是不允许的。

这是我的清单结构:

<application>
<activity
    android:name=".AuthenticationActivity"
    android:theme="@style/AppTheme.Auth"
    android:windowSoftInputMode="stateHidden|adjustPan">
    <intent-filter>
        <action android:name="com.company.product.module.AuthenticationActivity" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
    <nav-graph android:value="@navigation/navigation_activity_authentication" />
</activity>

我正在使用基于模块的项目,以帮助解决问题。

这是错误:

AAPT: error: unexpected element <nav-graph> found in <manifest><application><activity>.

3 个答案:

答案 0 :(得分:0)

我也在使用nav-graph,而清单文件中没有提到它。而且我还没有在文档的清单文件中看到它。 您刚刚通过以下方式添加到片段中:     app:navGraph="@navigation/navigation_courses"

我希望这会有所帮助!

答案 1 :(得分:0)

“此修复程序将在3.7 Canary 2和3.6 Beta 2中进行” https://issuetracker.google.com/issues/140856013

答案 2 :(得分:0)

我在Android Studio 3.5.3上也遇到了这个问题。问题是:我有多模块项目,而我的应用程序模块和包含nav主机的主要活动的模块不相同。使用nav-graph标签将主要活动移动到应用程序模块(运行器模块)解决了我的问题。例如:

模块A(电话和桌子模块)->主模块

模块B(Android库)->包含带有nav-graph的主要活动 我将活动移至模块A并完成。