我目前正在尝试按照本教程获取Android设备的最后位置 - https://developer.android.com/training/location/retrieve-current.html#play-services - 但我无法超越最后一部分。
我的代码:
package com.example.prouser.driveapp;
public class MainActivity extends AppCompatActivity implements ConnectionCallbacks {
/**
* ATTENTION: This was auto-generated to implement the App Indexing API.
* See https://g.co/AppIndexing/AndroidStudio for more information.
*/
private GoogleApiClient client;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
super.onStart();
protected void onStart() {
mGoogleApiClient.connect();
super.onStart();
}
protected void onStop() {
mGoogleApiClient.disconnect();
super.onStop();
}
public void onConnected(Bundle connectionHint) {
if (mLastLocation != null) {
mLatitudeText.setText(String.valueOf(mLastLocation.getLatitude()));
mLongitudeText.setText(String.valueOf(mLastLocation.getLongitude()));
}
}
// Create an instance of GoogleAPIClient.
GoogleApiClient mGoogleApiClient = new GoogleApiClient() {
@Override
public boolean hasConnectedApi(@NonNull Api<?> api) {
return false;
}
@NonNull
@Override
public ConnectionResult getConnectionResult(@NonNull Api<?> api) {
return null;
}
@Override
public void connect() {
}
@Override
public ConnectionResult blockingConnect() {
return null;
}
@Override
public ConnectionResult blockingConnect(long l, @NonNull TimeUnit timeUnit) {
return null;
}
@Override
public void disconnect() {
}
@Override
public void reconnect() {
}
@Override
public PendingResult<Status> clearDefaultAccountAndReconnect() {
return null;
}
@Override
public void stopAutoManage(@NonNull FragmentActivity fragmentActivity) {
}
@Override
public boolean isConnected() {
return false;
}
@Override
public boolean isConnecting() {
return false;
}
@Override
public void registerConnectionCallbacks(@NonNull ConnectionCallbacks connectionCallbacks) {
}
@Override
public boolean isConnectionCallbacksRegistered(@NonNull ConnectionCallbacks connectionCallbacks) {
return false;
}
@Override
public void unregisterConnectionCallbacks(@NonNull ConnectionCallbacks connectionCallbacks) {
}
@Override
public void registerConnectionFailedListener(@NonNull OnConnectionFailedListener onConnectionFailedListener) {
}
@Override
public boolean isConnectionFailedListenerRegistered(@NonNull OnConnectionFailedListener onConnectionFailedListener) {
return false;
}
@Override
public void unregisterConnectionFailedListener(@NonNull OnConnectionFailedListener onConnectionFailedListener) {
}
@Override
public void dump(String s, FileDescriptor fileDescriptor, PrintWriter printWriter, String[] strings) {
}
};
if(mGoogleApiClient==null)
{
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener((OnConnectionFailedListener) this)
.addApi(LocationServices.API)
.build();
}
}
@Override
public void onConnected(@Nullable Bundle bundle) {
}
@Override
public void onConnectionSuspended(int i) {
}