包 android.support.v4.app 不存在;在安卓工作室 0.8

Posted

技术标签:

【中文标题】包 android.support.v4.app 不存在;在安卓工作室 0.8【英文标题】:package android.support.v4.app does not exist ; in Android studio 0.8 【发布时间】:2014-08-24 02:20:45 【问题描述】:

我最近将 android studio IDE 更新到 0.8 以使用新的 android L SDK。首先,我导入了一个完成的 android 项目,该项目在旧版本的 android studio 中没有收到任何错误。在 0.8 版 i 行如

import android.support.v4.app.Fragment; 获取:无法解决支持,导致其余代码出现错误。 logcat 返回 101 个

实例
Error:(8, 30) error: package android.support.v4.app does not exist

每次我在导入语句中调用支持库时为 1。

我试过了

重新安装 IDE 正在删除idea文件夹的内容 正在安装所有 SDK - 包括支持库 同步 gradle 手动将支持库复制到 libs 文件夹中 重建项目 以及创建一个新项目来测试库

不完全确定还需要做什么。

【问题讨论】:

gradle同步是否成功?支持库在你的依赖列表中吗? gradle 失败,我将支持添加到依赖列表中 您是否从 SDK 管理器安装了存储库? 【参考方案1】:

好的,所以我遇到了同样的问题,并在 udacity 论坛中找到了解决方案:

在 Android Studio 中:

    右击你的项目“app”文件夹并点击->模块设置 点击“依赖”标签 点击+号添加一个新的依赖并选择“Library Dependency” 查找您需要的库并添加它

【讨论】:

也许对我没有用,从 Eclipse 导入后没有app 文件夹。我看到了一些关于支持包版本冲突的消息。之前只是将新的复制到旧的,但我认为有些东西已经更新了。 它对我有用..简单但如果我们发现问题会让我们感到沮丧 也为我工作。必须包含 android.support 依赖项,现在所有与未找到的 android.support.v4.app 包相关的构建错误都消失了。 在Android Studio 3.6中,右键“app”文件夹时没有“Module Settings”选项,但是在顶层右键出现“Open Module Settings”项目。快捷键是 F4。然而,它的“依赖项”选项卡没有列出任何引用 support-v4 库的内容。【参考方案2】:

@boernard 的答案从 Android Studio IDE 解决了这个问题,但如果您想了解幕后发生的事情,这是一个简单的 gradle 构建文件更新:

您可以在 IDE 中编辑 build.gradle 文件(左窗格:Gradle Scripts -> build.gradle (Module: app))或使用原始路径(<proj_dir>/app/build.gradle) 并添加/更新以下依赖部分:

dependencies 
    //
    // IDE setting pulls in the specific version of v4 support you have installed:
    //
    //compile 'com.android.support:support-v4:21.0.3'

    //
    // generic directive pulls in any available version of v4 support:
    //
    compile 'com.android.support:support-v4:+'

使用上面的 generic 编译指令,您可以将代码发送给任何人,只要他们安装了一定程度的Android Support Libraries v4

【讨论】:

太棒了,我也做了同样的事情......并且为我工作......我添加到 gradle compile 'com.android.support:support-v4:+'【参考方案3】:

以上解决方案都不适合我。最终奏效的是:

代替

import android.support.v4.content.FileProvider;

使用这个

import androidx.core.content.FileProvider;

此路径从 AndroidX(重新打包的 Android 支持库)开始更新。

【讨论】:

谢谢!这导致我也导入了 ContextCompat!【参考方案4】:

[由于某些原因,此答案与 Eclipse 相关,而不是 Android Studio!]

您是否尝试过将支持库设置为您的类路径? Android 开发者网站上的This link 提供了一些有关如何执行此操作的信息。

尝试从网站上执行以下步骤:

根据支持库代码创建库项目:

确保您已使用 SDK 管理器下载了 Android 支持库。

创建一个库项目并确保所需的 JAR 文件包含在项目的构建路径中:

选择文件>导入。 选择 Eexisting Android Code Into Workspace 并点击下一步。 浏览至 SDK 安装目录,然后浏览至 Support Library 文件夹。例如,如果您要添加 appcompat 项目,请浏览到 /extras/android/support/v7/appcompat/。 单击完成以导入项目。对于 v7 appcompat 项目,您现在应该会看到一个名为 android-support-v7-appcompat 的新项目。 在新的库项目中,展开 libs/ 文件夹,右键单击每个 .jar 文件并选择 Build Path > Add to Build Path。例如,在创建 v7 appcompat 项目时,将 android-support-v4.jar 和 android-support-v7-appcompat.jar 文件都添加到构建路径中。 右键单击库项目文件夹并选择构建路径>配置构建路径。 在 Order and Export 选项卡中,检查您刚刚添加到构建路径的 .jar 文件,以便它们可用于依赖此库项目的项目。例如,appcompat 项目要求您同时导出 android-support-v4.jar 和 android-support-v7-appcompat.jar 文件。 取消选中 Android 依赖项。 单击“确定”完成更改。

您现在拥有一个用于所选支持库的库项目,您可以将其与一个或多个应用程序项目一起使用。

将库添加到您的应用程序项目中: 在 Project Explorer 中,右键单击您的项目并选择 Properties。 在对话框左侧的类别面板中,选择Android。 在窗格中,单击添加按钮。 选择库项目并单击确定。例如,appcompat 项目应列为 android-support-v7-appcompat。 在属性窗口中,单击“确定”。

【讨论】:

当我尝试知道得到错误:在 org.gradle.api.internal 上找不到参数 [com.android.support:support-v4:18.0.+] 的方法 complie()。 artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@ad93a93。请从 Android SDK Manager 安装 Android Support Repository。 打开 Android SDK 管理器【参考方案5】:

删除

/.idea/libraries

然后同步 gradle 来构建项目。

【讨论】:

这是对我的修复。该依赖项之前已在 gradle 中正确设置,但 Kotlin 插件版本更新破坏了一切,修复方法是在 Android Studio 中删除 .idea/libraries,然后删除 Invalidate Caches/Restart 这对我不起作用,但帮助我找到了解决方案,因为我期望成为文件夹的所有文件都没有重新创建。【参考方案6】:

// 运行此命令 - 它修复了所有问题

ionic cordova 插件添加 cordova-plugin-androidx-adapter

【讨论】:

【参考方案7】:

tl;dr 从您的settings.gradle 中删除所有依赖于支持库的未使用模块。

加长版:

在我们的例子中,我们在每个模块导入的common.gradle 文件中将支持库声明为所有模块(一个应用程序模块和多个库模块)的依赖项。但是,有一个库模块未声明为任何其他模块的依赖项,因此未构建。在每几次同步中,Android Studio 都会选择那个确切的模块作为寻找支持库的地方(这就是为什么它对我们来说似乎是随机发生的)。由于该模块从未使用过,因此它从未构建,这反过来又导致 jar 文件不在模块的中间文件夹中。

settings.gradle 中删除这个库模块并再次同步为我们解决了这个问题。

【讨论】:

【参考方案8】:

在我的情况下,错误出在我项目的一个模块上。我已经通过添加解决了这个问题

dependencies 
    implementation 'com.android.support:support-v4:20.0.+'

对应模块的gradle中的这个依赖

【讨论】:

【参考方案9】:

在 ECLIPSE LUNA 中 我已经通过在我的项目中使用 contet 菜单解决了这个问题:ANdroid Tools > Add support Library ...

【讨论】:

【参考方案10】:

在我的情况下,通过将字符串 cordova.system.library.2=com.android.support:support-v4:+ 附加到 platforms/android/project.properties 文件解决了问题

【讨论】:

【参考方案11】:

对我来说,问题是由 Gradle 脚本列表中的 gradle.properties 文件引起的。它显示为 gradle.properties(全局)并引用 C:\users\.gradle\gradle.properties 中的文件。我右键单击它并从菜单中选择删除以将其删除。它从硬盘上删除了文件,我的项目现在构建并运行。我猜是全局文件覆盖了一些用来定位 android.support 包的东西

【讨论】:

【参考方案12】:

我的解决方案是使用Use legacy support library 选项checked 创建一个项目。项目创建成功完成后,只需在应用程序目录中的deletesrc 文件夹和主项目中的copysrc 文件夹。最后,Sync 带有 Gradle 文件的项目。

【讨论】:

【参考方案13】:

将此添加到 build.gradle:

allprojects 
    repositories 
        google()
    

dependencies 
    implementation "com.android.support:support-core-utils:28.0.0"

*必须具有 minSdkVersion 14(或更高版本)

【讨论】:

以上是关于包 android.support.v4.app 不存在;在安卓工作室 0.8的主要内容,如果未能解决你的问题,请参考以下文章

包 android.support.v4.app 不存在;在安卓工作室 0.8

android.support.v4.app.NotificationCompat引用包

android.support.v4.app.FragmentManager 还是 android.app.FragmentManager?

android.support.v4.app.FragmentPagerAdapter 不能应用于 android.app.FragmentManager

无法从 android.app.FragmentManager 转换为 android.support.v4.app.FragmentManager

Fragment用app包还是v4包解析