logo
Bienvenido visitante. Para activar todas las funcionalidades, por favor Iniciar sesión o Registrarse.

Aviso

Icon
Error

Opciones
Ir a la última publicación
kmiz  
#1 Publicado : miércoles, 2 de octubre de 2013 22:55:26(UTC)
kmiz

Posición: Newbie

Grupos: Registered
Registrado: 02/10/2013(UTC)
Mensajes: 2
Ubicación: españa

Leyendo el tutorial de Android, he encontrado el foro.
Me parece excelente, tanto el foro como el tutorial.
El caso es que, experimentando con location, he bajado el ejemplo y funciona perfectamente, pero, despues, estudiando el codigo, hay alguna cosa que no termino de entender.

Código:
// GPS
	public static String lat, lon, loc;
	static Location location_A;
	static Location location_B;
	int nsat, msat, alt, error;
	double vel;

Aqui se declara nsat y msat. Numero de satelites y numero total de satelites.

Código:
// escribimos Datos del GPS
			String tsat = (String) (getResources().getString(R.string.sat)
					+ " " + nsat + " / " + msat + "\n" + loc + "\n"
					+ getResources().getString(R.string.alt) + " " + alt + " m"
					+ "\n" + getResources().getString(R.string.prec) + " "
					+ error + " m" + "\n"
					+ getResources().getString(R.string.vel) + " " + vel + " Km/h");

			nsatelites.setText(tsat);

Aqui, actualizamos el textview con, entre otras variables, nsat y msat.
Pero no encuentro la parte del codigo donde actualizamos esas variables con sus valores respectivos.
La cuestion es que funciona perfectamente, pero no entiendo como.
Como se conocen los satelites conectados y el total de satelites disponibles?
admin  
#2 Publicado : lunes, 7 de octubre de 2013 21:23:23(UTC)
admin

Posición: Administration

Grupos: Administrators
Registrado: 07/10/2010(UTC)
Mensajes: 436
Hombre
Ubicación: España

Agradecimientos: 38 veces
Fue agradecido: 49 vez/veces in 48 publicación(es).
Hola!!

Te a faltado un poco de codigo.... exactamente lo saca de aqui:

se necesita un listener "especial" para el estado del GPS

Código:

lisener_gpsstatus = new MyGPS_Status();


Luego mediante el objeto "GpsStatus" adquieres los datos de los satelites, se guadan en un array que hay que recorrer para extraer los datos en el while que ves mas abajo, por un lado se sacan los satelites maximos y luego los satelites que hay conectados.

Código:

public class MyGPS_Status implements GpsStatus.Listener {

		public void onGpsStatusChanged(int event) {

			nsat = 0;
			msat = 0;

			GpsStatus status = lm.getGpsStatus(null);

			Iterable<GpsSatellite> sats = status.getSatellites();
			Iterator<GpsSatellite> it = sats.iterator();

			while (it.hasNext()) {

				GpsSatellite info = it.next();

				// String t = info.getPrn() + "," + info.usedInFix() + "," +
				// info.getSnr() + "," + info.getAzimuth() + "," +
				// info.getElevation();
				// Toast.makeText(getApplicationContext(),t,
				// Toast.LENGTH_SHORT).show();
				if (info.usedInFix()) {
					nsat++;
				}
				// it.next();
				msat++;
			}

			if (nsat < 3) {
				vel = 0.0;
			}

			// Datos GPS
			String tsat = (String) (getResources().getString(R.string.sat)
					+ " " + nsat + " / " + msat + "\n" + loc + "\n"
					+ getResources().getString(R.string.alt) + " " + alt + " m"
					+ "\n" + getResources().getString(R.string.prec) + " "
					+ error + " m" + "\n"
					+ getResources().getString(R.string.vel) + " " + vel + " Km/h");

			nsatelites.setText(tsat);
		}
	}


espero haberte ayudado!!

Un saludo!!
Un saludo,

Curso Completo GRATIS paso a paso de como programar Android
http://www.aprendeandroid.com
kmiz  
#3 Publicado : martes, 8 de octubre de 2013 8:38:35(UTC)
kmiz

Posición: Newbie

Grupos: Registered
Registrado: 02/10/2013(UTC)
Mensajes: 2
Ubicación: españa

Muchas gracias me ayudaste muchisimo.
Usuarios navegando este tema
Guest (3)
Salto de foro  
No puedes iniciar nuevos temas en este foro.
No puedes responder a temas en este foro.
No puedes eliminar sus temas en este foro.
No puedes editar sus temas en este foro.
No puedes crear encuestas en este foro.
No puedes votar las encuestas en este foro.