Я использую приложение, которое использует функцию gps (используя AVD на Eclipse). Это приложение отлично работает, когда я помещаю координаты в DDMS, но если я вставляю точку, которая очень близка к предыдущей точке (20-30 м), событие onLocationChanged(Location loc)
не вызывается (но приложение не падает. Если я вставьте новую точку, которая не так близка, четна правильно называется). Это проблема эмулятора? Или это проблема, вызванная методом requestLocationUpdates(...)
? Мой код таков:GPS не работает на короткие расстояния
public class myActivity extends Activity
{
private TextView mytext;
private LocationManager locmgr = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GPSListener gpsListener=newGPSListener();
mytext = (TextView) findViewById(R.id.mytext);
//grab the location manager service
locmgr = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locmgr.requestLocationUpdates(locmgr.GPS_PROVIDER, 10, 10, gpsListener);
mytext.setText("waiting for location");
}
//Start a location listener
private class GPSListener implements LocationListener
{
public void onLocationChanged(Location loc)
{
//sets and displays the lat/long when a location is provided
String latlong = "Lat: " + loc.getLatitude() + " Long: " + loc.getLongitude();
mytext.setText(latlong);
}
public void onProviderDisabled(String provider)
{
}
public void onProviderEnabled(String provider)
{
}
public void onStatusChanged(String provider, int status,
Bundle extras)
{
}
}
}
Я уже пробовал это, но есть такая же проблема (может быть, потому, что я использую эмулятор) –
Да, может быть. У меня нет другого мнения. – eluleci
Считаете ли вы, что если я попробую приложение на реальном телефоне, оно может работать? Проблема в том, что мой телефон сломан, и сейчас я использую старый телефон. –