LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, this); Versucht zu wirken, als com.google.android.gms.Lage.LocationListener)

Habe ich eine ortsbezogene Karte auf Android aber wenn ich versuche und rufen: LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, this);

Android studio versucht, um mich zu wirken, als

LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, (com.google.android.gms.location.LocationListener) this);

Dies jedoch bewirkt, dass die app abstürzt, wenn es aufgerufen wird.

Habe ich folgende Location Codes für meine app:

import android.content.IntentSender;
import android.location.Location;
import android.location.LocationListener;
import android.support.v4.app.FragmentActivity;
import android.os.Bundle;
import android.util.Log;

import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.api.GoogleApiClient;
import com.google.android.gms.location.LocationRequest;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.gms.location.LocationServices;

import java.util.List;

import model.SiteModel;
import model.SqlHelper;

public class FindNearestLocationMap extends FragmentActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, LocationListener {

    private GoogleMap mMap; //Might be null if Google Play services APK is not available.

    private GoogleApiClient mGoogleApiClient;

    public static final String TAG = FindNearestLocationMap.class.getSimpleName();

    private final static int CONNECTION_FAILURE_RESOLUTION_REQUEST = 9000;

    private LocationRequest mLocationRequest;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_find_nearest_location_map);

        mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .addApi(LocationServices.API)
                .build();

        mLocationRequest = LocationRequest.create()
                .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY)
                .setInterval(10 * 1000)        //10 seconds, in milliseconds
                .setFastestInterval(1 * 1000); //1 second, in milliseconds

        setUpMapIfNeeded();
    }

    @Override
    protected void onResume() {
        super.onResume();
        setUpMapIfNeeded();
        mGoogleApiClient.connect();
    }

    @Override
    protected void onPause() { //////ERROR IS HERE////////
        super.onPause();
        if (mGoogleApiClient.isConnected()) {
            LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, (com.google.android.gms.location.LocationListener) this);
            mGoogleApiClient.disconnect();
        }
    }
....

Ich habe alle Methoden umgesetzt, dass die Klassen benötigen, und ich bin in der Lage, das Programm auszuführen. Es bricht nur wenn onPause wird aufgerufen, alle Ideen, was soll ich tun?

Danke.

InformationsquelleAutor Dfranc3373 | 2015-02-13
Schreibe einen Kommentar