android.support.v7.app.AppCompatActivity vs android.support.v4.app.ActivityCompat

时间:2016-08-23 14:56:48

标签: android eclipse android-support-library android-appcompat appcompat-v7-r23

这似乎是一个非常普遍的问题。我尝试在最新的 Eclipse (霓虹灯)中导入并运行Android应用,但我得到The import android.support.v7.app.AppCompatActivity cannot be resolved的常见错误。我从某个地方下载了库项目android-support-v7-appcompat,并将其链接到项目属性。但错误仍然存​​在。我看到v4 ActivityCompat没有抛出任何错误,但v7 AppCompatActivity 显示错误,这看起来很奇怪。我该如何解决?我使用的是 Android API 23

我已经安装了SDK的支持库。但是当我添加.jar库(只有两个,一个用于源,一个用于javadoc)时,仍然没有发生任何事情。

import android.support.v4.app.ActivityCompat; --> This is ok
import android.support.v7.app.AppCompatActivity; --> This shows error!

enter image description here

1 个答案:

答案 0 :(得分:3)

  

我看到v4 ActivityCompat没有抛出任何错误,但v7 AppCompatActivity显示错误,这看起来很奇怪。

不是特别的。你从一些随机地方抓取的随机文件显然没有这个类。在AppCompatActivity作为库发布后的某个时间添加了appcompat-v7,作为前ActionBarActivity的长期替代品。据推测,您从某个随机位置抓取的随机文件会在此更改之前进行。

  

我该如何解决?

切换到支持AAR的构建系统和支持它的IDE。然后,依赖于appcompat-v7 AAR,这是目前appcompat-v7分发的唯一方式。

或者,不要使用appcompat-v7(或Android支持库中的其他任何内容,因为大多数(如果不是全部)软件包都是作为AAR而不是JAR分发的。)