当前位置: 首页 > 知识库问答 >
问题:

Jetpack导航-添加导航图时如何处理相关性警告。xml?

艾焱
2023-03-14

我想使用android jetpack的新导航库。当我想将导航XML添加到我的项目中时,我遇到了一个错误,错误是:

此操作需要android库。拱导航:导航片段:,android。拱导航:导航用户界面:。

问题:发现现有项目依赖项中存在不一致。之间的版本不兼容:-android。拱坚持不懈房间:运行时:1.1.1和:-com.Android支持:appcompat-v7:27.1.1

使用依赖项:-com.Android支持:支持注释:26.1.0与:-com.Android支持:支持注释:27.1.1

添加这些库后,项目可能无法编译。你想添加它们吗?

我点击“取消”,因为我不知道我的小项目会有什么后果。为什么会这样?房间是否与导航库不兼容?我是否冒着在添加这些后我的项目将无法编译的风险?我是否应该保存gradle文件,然后再试一次?

如能澄清,我将不胜感激。谢谢你:)

我的gradle文件:

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "de.test"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.android.support:recyclerview-v7:27.1.1'

    // Room components
    implementation "android.arch.persistence.room:runtime:$rootProject.roomVersion"
    annotationProcessor "android.arch.persistence.room:compiler:$rootProject.roomVersion"
    androidTestImplementation "android.arch.persistence.room:testing:$rootProject.roomVersion"

    // Lifecycle components
    implementation "android.arch.lifecycle:extensions:$rootProject.archLifecycleVersion"
    annotationProcessor "android.arch.lifecycle:compiler:$rootProject.archLifecycleVersion"
}

共有1个答案

巫马炫明
2023-03-14

这有两部分:

1) 对话框不正确。当前的Android Studio关注POM文件中包含的测试依赖项,但不会影响您的应用程序(测试依赖项仅在内部用于测试库本身的测试)。这在Android Studio 3.5 Beta 1中已部分修复。

2) 添加导航依赖项时,应用程序将无法编译,因为您使用的是compilesdkkversion 27android。拱导航依赖项取决于支持库的版本28.0.0,该版本要求您使用API 28进行编译

如果您将应用程序修复为使用compileSdkVersion 28,那么您可以安全地忽略对话框的警告,并将导航添加到您的项目中。当然,您可以在添加导航之前将您的支持库升级到28.0.0,这将确保从27.1.1升级到28.0.0所导致的导航行为更改不会引起其他无关的更改。

 类似资料:
  • 我有一个关于底部导航栏的奇怪问题,虽然我花了大量时间在它上面,但我无法解决。当我以“推荐”的方式(从许多教程中)使用它时,它就是无法导航。 那么,我所说的“推荐”方式是什么意思呢:我有一个单独的acticity,其中有一个名为“MainActivity”的navHostFragment。这个主要活动有一个XML布局文件,我将底部导航栏放在其中。BottomNavigationBar还有一个XML布

  • 问题内容: 在以下活动中,我上面有一个片段和一个图像。片段只是一个较暗的操作栏,上面有图片。我正在尝试将左侧幻灯片菜单作为一个片段,以便可以在每次活动中使用它。 主要活动; 主要活动XML; 每个活动上应包含的标题栏片段; 标题栏片段XML; 如何在标题栏中实现导航抽屉? 问题答案: 尝试这样的操作,对于布局文件,您只需要 实现可以像这样简单。

  • 7.3 导航相关消息 在导航功能包集中包含了诸多节点,毋庸置疑的,不同节点之间的通信使用到了消息中间件(数据载体),在上一节的实现中,这些消息已经在rviz中做了可视化处理,比如:地图、雷达、摄像头、里程计、路径规划...的相关消息在rviz中提供了相关组件,本节主要介绍这些消息的具体格式。

  • 我遇到了一个问题,当深度链接到第二级片段时,导航UI没有选择正确的底部导航视图项。 我的意思是: 选择fragment_reading_lists:选择正确的底部导航项 从fragment_reading_lists导航- 当我深入链接到fragment\u discover\u landing时会发生什么?选择默认的底部导航项目。 是否有方法通知底部导航适配器在此实例中应选择哪个项目? 这是我的

  • 这是我的导航主机 我从主屏幕到“开始”屏幕很幼稚,但没有从“开始”导航到“计时器”屏幕,我已经传递了与从主屏幕获得的相同的ID。 这个主要可组合的 开始屏幕 当我点击按钮时,应用程序崩溃,错误如下