【问题标题】:cannot resolve method ' requestLocationUpdate' when i call LocationManger当我调用位置管理器时无法解析方法“requestLocationUpdates”
【发布时间】:2016-08-29 07:43:36
【问题描述】:

我正在尝试使用locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this); 但我得到一个错误说:

我认为它可能来自错误的 LocationListerner 库,但这是我导入的所有库

import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationManager;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.FragmentActivity;
import android.os.Bundle;
import android.widget.Toast;

import com.example.ahmed.mob_review.MainActivity;
import com.example.ahmed.mob_review.R;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.api.GoogleApiClient;
import com.google.android.gms.location.LocationListener;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;

已编辑

我认为它来自最后一个参数this

【问题讨论】:

    标签: java android google-maps android-studio import


    【解决方案1】:

    试试这个...

    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0,0, (LocationListener) this);
    

    【讨论】:

    • cannot be cast to android.location.LocationListener
    • 确保您的活动实现 com.google.android.gms.location.LocationListener 而不是 android.location.LocationListener..
    【解决方案2】:

    已解决

    • 活动应从LocationListener 实施
    • 我要将 this 活动转换为 LocationListener
    • onLocationChanged 在我请求 NETWORK_PROVIDERGPS_PROVIDER 之前不会被调用

    作为:

        locationManager.requestLocationUpdates(locationManager.GPS_PROVIDER, 0, 0, (LocationListener) this);
        locationManager.requestLocationUpdates(locationManager.NETWORK_PROVIDER, 0, 0, (LocationListener) this);
    

    现在它工作了:)

    【讨论】:

      猜你喜欢
      • 2015-05-11
      • 1970-01-01
      • 2016-12-17
      • 2016-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-16
      • 1970-01-01
      相关资源
      最近更新 更多