java - Android 4.4 SDK 更新后 android-support-v7-appcombat jar 不匹配和应用程序崩溃

标签 java android-support-library android-4.4-kitkat android-appcompat

过去几个月我一直在我的应用程序中成功使用 android-support-v7-appcompat 库来支持旧设备中的操作栏。最近我从 SDK Manager 下载了带有系统镜像和 SDK 平台的 Android 4.4(kitkat) 更新。我还在 list 文件中将 targetSdkVersion 添加到“19”。但是我的项目显示错误为“android-support-v7-appcompat jar 不匹配”。解决你的依赖关系。然后我使用构建路径菜单>添加外部jar将/extras/android/support/....中的jar作为外部jar添加到项目中。现在项目中没有错误,android-support-v7-appcompat.jar 和 android-support0v4.jar 文件在“Referenced Libraries”文件夹下显示两次,在“libs”文件夹下显示一次。该项目没有显示错误和运行,但在不同的 Activity 中崩溃。

之前我在工作场所导入了android-support-v7-appcombat库作为外部项目。我可以在该项目中看到错误。请建议我现在应该做什么。此外,android-support-v7-appcompat.jar umder Android 依赖项在 Java 构建路径中显示错误。

我看到的错误是:

Found 2 versions of android-support-v7-appcompat.jar in the dependency list,
but not all the versions are identical (check is based on SHA-1 only at this time).
All versions of the libraries must be the same at this time.

Versions found are:

Path: C:\<project hierarchy>\libs\android-support-v7-appcompat.jar

Path: C:\Users\....\sdk\extras\android\support\v7\appcompat\libs\android-support-v7-appcompat.jar

 Jar mismatch! Fix your dependencies

在从不同的论坛得到想法后,我从不同的地方删除了所有的 android-support-v7-appcompat 库,并在项目中重新导入了 android-v7 支持库。仍然显示错误。我还应该从 buildpath 和 libs/private librariry/referenced library 文件夹中删除 android-support-v4 库吗?

最佳答案

当在同一个项目或它使用的库中发现同一个库的多个不同实例时,会发生此错误。解决这个问题的一个非常简单的方法是在两个地方使用公共(public)库。为此:

只需复制您的 C:\Users....\AppData\Local\Android\android-studio\sdk\extras\android\support\v7\appcompat\libs\android-support-v7-appcompat。 jar 并将其粘贴到您的 libs 文件夹中,用这个替换旧的。清理项目,现在应该编译..

编辑 1: 基本上这个想法是,如果你使用相同的库,它应该是通用的 jar,或者相同的 jar。 在您的情况下,如果您将 appv7 用作外部项目,请转到项目的 libs 文件夹复制 android-support-v4.jar,然后粘贴到 android-support-v7-appcompat 项目的库中。

此外,请确保您是否使用了其他外部 jar 或支持库,它们应该是您正在使用的所有项目中的类似 jar。

希望对您有所帮助!

关于java - Android 4.4 SDK 更新后 android-support-v7-appcombat jar 不匹配和应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19989116/

相关文章:

android - 如何使用工具栏在底部显示操作项

android - 将 SDK 更新到 Kitkat 4.4.2 后无法创建文件夹 'res/transition'

android - 当 Android Kitkat 中的新 Activity "pops"时,使用 overridePendingTransition 会使调用 Activity 消失吗?

java - 错误 : stack depth limit exceeded - Java hibernate postgresql

java - 错误: validation failed for objects with date

java - Android:视频的色度键性能

android - 实现滚动感知 FloatingActionButton 的推荐方法

java - "Buffer Error", "转换结果时出错 java.lang.NullPointerException : lock == null

android - Google 的 BottomSheet 出现在屏幕顶部

android - 即使使用 777,权限也被拒绝