【问题标题】:Cannot resolve symbol 'support' (using Android Studio, following getting started guide)无法解析符号“支持”(使用 Android Studio,遵循入门指南)
【发布时间】:2013-11-03 08:51:55
【问题描述】:

我开始使用 Android 开发。 我遵循了这个Getting Started 指南并使用Android Studio(不是eclipse)。

我在我的设备上运行了 Hello World,到目前为止一切顺利。但是..

添加此导入时出现问题:(按照指南的说明)

import android.support.v4.app.NavUtils;  // cannot resolve symbol 'support'

这行似乎需要它(注释它并自动解析导入不起作用)

NavUtils.navigateUpFromSameTask(this);

支持导入是红色下划线,鼠标悬停告诉我Cannot resolve symbol 'support'

当然,构建也不会工作。我已经看到了类似问题的答案,例如; 建议清除缓存并重新启动(尝试过), 建议以管理员身份运行 SDK Manager 并更新(尝试过), 以及其他一些似乎是 Eclipse 特有的问题/解决方案。

我是 Android 开发和 IDE 的新手。如何在 Android Studio v0.2.9 中解决这个问题?

编辑:

我的 build.gradle 文件的内容

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

dependencies {

    // You must install or update the Support Repository through the SDK manager to use this dependency.
    // The Support Repository (separate from the corresponding library) can be found in the Extras category.
    // compile 'com.android.support:appcompat-v7:18.0.0'
}

【问题讨论】:

  • 首先我建议更新到最新版本(0.3.1)。让我知道情况如何。
  • 您是否安装了支持库?你能发布你的 build.gradle 文件吗?
  • 请发布您的 build.gradle 并检查您是否从 SDK 管理器安装了支持库。
  • @redGREENblue 我添加了 build.gradle 文件内容。
  • 似乎我无法编辑评论所以.. @fasteque 我添加了 build.gradle 文件内容,并且我在 SDK 管理器中安装了 Extras/Android Support Library。 (和更新)@Adam-Johns 早期访问计划是否足够稳定,可以用于生产开发?我不能在 IDE 错误或损坏的项目文件上浪费时间。我现在在 Milestone Releases (fka Dev Channel ?) 上。

标签: android import android-studio


【解决方案1】:

像下面这样修改你的 gradle 文件并尝试它是否有效。

......

    dependencies {
       compile 'com.android.support:support-v4:18.0.0'

        // You must install or update the Support Repository through the SDK manager to use this dependency.
        // The Support Repository (separate from the corresponding library) can be found in the Extras category.
        // compile 'com.android.support:appcompat-v7:18.0.0'
    }

【讨论】:

  • 谢谢!这解决了问题。只是取消注释 v7 行会导致 R. 出现问题。你能告诉我为什么这行得通而那行不通吗? v7是什么意思,是版本号吗?为什么gradle文件提到v7而不是v4?这是使用导入时更常出现的问题吗?或者甚至是设计使然?我以后如何自己解决这个问题?
  • 它们都是不同的支持库,具有不同的功能支持。 API 级别 4+ 的 V4 和 API 级别 7+ 的 V7。我建议您通过此链接了解更多详细信息developer.android.com/tools/support-library/features.html
  • 此后我收到了关于R.string.foobar 的IDE 警告,我在strings_foobar.xml 中正确定义了这些警告,但构建工作正常。在我升级到最新的 Android Studio(通过 Early Access Preview 0.3.1)后,缓存重建并重新启动修复了该问题。
  • 我也有同样的问题,但我似乎找不到这个build.gradle 文件,我使用的是 IntelliJ IDEA 13.1.1
  • 我将此与我的 buildToolsVersion 保持一致 - 似乎是个好主意。
【解决方案2】:

使用 GUI 在 Android Studio 中修复,无需直接编辑 Gradle 文件(已针对从 v1.0.1 到 v2.2.3 的 Android Studio 验证):

  1. 在项目树中右键单击您的模块。它是根节点中的一个,在大多数情况下是第一个。默认情况下,它被称为app

  2. 在菜单中选择打开模块设置

  3. 切换到依赖项选项卡。

  4. 单击对话框窗口底部的添加按钮 (+)。

  5. 选择库依赖

  6. 从列表中选择support-v4

  7. 单击确定并重建。

【讨论】:

    【解决方案3】:

    我没有编辑build.gradle,而是在你的根项目上用鼠标右键-> 打开模块设置-> 依赖项选项卡-> + -> Maven 依赖项-> 搜索“NavUtils”并选择@987654322 @。

    SDK 版本 19 和 Android Studio 0.4.2

    【讨论】:

    • 另外,在 SDK Manager 中,您需要安装这两个:“Android Support Repository”和“Android Support Library”(它们在“Extras”类别下)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    相关资源
    最近更新 更多