Google 地方出错 Api (.addConnectionCallbacks)

Error with Google Places Api (.addConnectionCallbacks)

public class Places_DATA extends ActionBarActivity
{
private GoogleApiClient mGoogleApiClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_places);


    mGoogleApiClient = new GoogleApiClient
            .Builder(this)
            .addApi(Places.GEO_DATA_API)
            .addApi(Places.PLACE_DETECTION_API)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this)
            .build();
}

问题是我一直在使用 .addConnectionCallbacks(this) 时出错。该错误表示无法将 .ConnectionCallbacks 添加到 class。我不确定自己做错了什么,因为我一直在关注 google 的文档,如下所示:https://developers.google.com/places/android/start

您不能使用 this,除非它是 ConnectionCallbacksOnConnectionFailedListener。您可以通过 activity 实现这些接口来实现。

public class Places_DATA extends ActionBarActivity
    implements ConnectionCallbacks, OnConnectionFailedListener {
private GoogleApiClient mGoogleApiClient;

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

        mGoogleApiClient = new GoogleApiClient
                .Builder(this)
                .addApi(Places.GEO_DATA_API)
                .addApi(Places.PLACE_DETECTION_API)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .build();
    }

    @Override
    public void onConnected(Bundle connectionHint) {
        // We are now connected!
    }

    @Override
    public void onConnectionSuspended(int cause) {
        // We are not connected anymore!
    }

    @Override
    public onConnectionFailed(ConnectionResult result) {
        // We tried to connect but failed!
    }
}