【问题标题】:Cannot override onStatusChanged (LocationListener) in Android application无法在 Android 应用程序中覆盖 onStatusChanged (LocationListener)
【发布时间】:2023-03-25 22:27:01
【问题描述】:

由于某种原因,虽然我在我的 Android 应用程序中实现了 LocationListener,但 onStatusChanged 给了我一个“方法没有覆盖其超类中的方法”的编译错误。

文档here 指定LocationListener 确实包含此方法。

此外,我还在我的应用程序中覆盖了onLocationChanged,但奇怪的是这个覆盖并没有产生编译错误。

我的代码如下(省略了不相关的部分):

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, LocationListener, ErrorDialog.NoticeDialogListener, GoogleApiClient.OnConnectionFailedListener {

    (...)

    // No error here
    @Override
    public void onLocationChanged(Location location) {
        userLocation = location;
    }

    // Error occurs on this function, however
    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {

    }
    (...)
}

编辑:

我查看了this SO 问题,虽然我们的问题似乎相同,但我正在运行 JDK 1.8(在我的项目结构中指定,并且大于 JDK 1.6),所以我没有相信这是一个解决方案,但是我运行的是 Android Studio 而不是 Eclipse。 Android Studio 中是否存在可能导致此问题的编译器合规性设置?

【问题讨论】:

标签: java android android-studio location


【解决方案1】:

您可能正在导入

com.google.android.gms.location.LocationListener

而不是

导入 android.location.LocationListener

【讨论】:

  • 就是这样。不敢相信我错过了。谢谢!
猜你喜欢
  • 1970-01-01
  • 2023-03-16
  • 2012-08-29
  • 2019-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多