2015-10-28 1 views
0

S'il vous plaît voir mon MainActivity.java et me dire pourquoi j'obtiens l'erreur suivanteerreur Android: addConnectionCallbacks non applicable pour les arguments

The method addConnectionCallbacks(GoogleApiClient.ConnectionCallbacks) in the type GoogleApiClient.Builder is not applicable for the arguments (MainActivity)

package com.example.myapp; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import com.google.android.gms.common.api.GoogleApiClient; 
import com.google.android.gms.common.ConnectionResult; 
import com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks; 
import com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener; 
import com.google.android.gms.location.LocationListener; 
import com.google.android.gms.location.LocationRequest; 
import com.google.android.gms.location.LocationServices; 

public class MainActivity extends Activity { 

    private GoogleApiClient mGoogleApiClient ; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     buildGoogleApiClient(); 

     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    protected synchronized void buildGoogleApiClient() { 
     mGoogleApiClient = new GoogleApiClient.Builder(this) 
     .addConnectionCallbacks(this) 
     .addOnConnectionFailedListener(this) 
     .addApi(LocationServices.API) 
     .build(); 
    } 
} 

S'il vous plaît me dire pourquoi il montre ainsi. Dois-je ajouter des importations? J'ai reçu ce code de developer.android.com

Répondre

6

Votre MainActivity doit implémenter les interfaces ConnectionCallbacks et OnConnectionFailedListener. Après cela, vous devez ajouter les méthodes onConnected, onConnectionSuspended et onConnectionFailed:

public class MainActivity extends Activity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener { 

    private GoogleApiClient mGoogleApiClient ; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     buildGoogleApiClient(); 

     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    protected synchronized void buildGoogleApiClient() { 
     mGoogleApiClient = new GoogleApiClient.Builder(this) 
     .addConnectionCallbacks(this) 
     .addOnConnectionFailedListener(this) 
     .addApi(LocationServices.API) 
     .build(); 
    } 

    @Override 
    public void onConnected(Bundle bundle) { 

    } 

    @Override 
    public void onConnectionSuspended(int i) { 

    } 

    @Override 
    public void onConnectionFailed(ConnectionResult connectionResult) { 

    } 
}