Я пытаюсь создать простое приложение, в котором будут храниться координаты GPS, и просто отображать его на экране следующего действия.
До сих пор мне удалось получить координаты для отображения в тостеЯ знаю, что код работает.У меня проблемы с логикой.Я пытаюсь начать новое действие (которое будет отображать координаты), когда найдены долгота и широта.
Может ли кто-нибудь предложить какие-либо предложения относительно того, как я могу сделать что-то подобное?
public class GPSActivity extends Activity{
float longitude = 0;
float latitude = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/* Use the LocationManager class to obtain GPS locations */
LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
Intent intent = new Intent(this, Display.class);
Bundle extras = new Bundle();
do{
extras.putFloat("long", longitude);
extras.putFloat("lat", latitude);
}while(longitude == 0);
// if longitude is no longer zero - meaning it is found
// add extras and call activity.
if(longitude != 0){
intent.putExtras(extras);
startActivity(intent);
}} // end activity
/* Class My Location Listener */
public class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
longitude = (float) loc.getLatitude();
latitude = (float) loc.getLongitude();
String text = "My current location is: " + "Latitud = " + loc.getLatitude() + "Longitud = " + loc.getLongitude();
Toast.makeText( getApplicationContext(), text, Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider){
Toast.makeText( getApplicationContext(), "Gps Disabled", Toast.LENGTH_SHORT ).show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText( getApplicationContext(), "Gps Enabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras){
}
}} // End GPS activity