过去几个月我一直在我的应用程序中成功使用 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/