0
Я хочу, чтобы переменная lat, lon использовалась снова, но когда я установил ее в onConnected(), она не установлена в MainActivity. вот мой код,Невозможно сохранить широту и долготу в переменной
public class MainActivity extends AppCompatActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {
private static final int PERMISSION_ACCESS_FINE_LOCATION = 1;
private GoogleApiClient googleApiClient;
protected Context context;
double lat, lon;
TextView txtLat;
double latitude = 0, longitude = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
PERMISSION_ACCESS_FINE_LOCATION);
}
googleApiClient = new GoogleApiClient.Builder(this, this, this).addApi(LocationServices.API).build();
}
и вот другая часть, которая включает в себя получить Lat долго.
@Override
public void onConnected(Bundle bundle) {
Log.i(MainActivity.class.getSimpleName(), "Connected to Google Play Services!");
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
Location lastLocation = LocationServices.FusedLocationApi.getLastLocation(googleApiClient);
lat = lastLocation.getLatitude();
lon = lastLocation.getLongitude();
txtLat = (TextView) findViewById(R.id.textView1);
txtLat.setText(lat + " " + lon);
}
}
что 'double latitude = 0, longitude = 0;' this for это вы хотите снова использовать повторно? –
@ ntaloventi no. Lat, lon –