Cómo obtener la posición de navegación satelital GPS y resolver el problema de que getLastKnownLocation devuelva nulo
Cree una nueva carpeta de archivos en el directorio raíz del código fuente y luego coloque todos los archivos que desee colocar en el firmware. Después de compilar el firmware, todo esto se copiará en el firmware. . (Por ejemplo, si desea colocar un archivo llamado a en el directorio /etc/, simplemente puede crear una carpeta de archivos, luego crear una nueva carpeta etc dentro de esa carpeta y colocar el archivo a, lo cual servirá. )
Está bien. El siguiente es el código de actividad.
Primero crea una clase que herede de MapActivity. Tenga en cuenta que debe heredar de MapActivity. Otras actividades no funcionarán.
El siguiente paso es crear instancias de varios atributos:
Primero, crear una instancia de LocationManager:
Detectar si la función GPS está activada
Obtenga el último Mejor filtro ^ ^ ^ ^ ^ ^ Yo lo llamo filtro.
Nota: La ubicación obtenida a través de getLastKnownLocation() aquí puede estar vacía, no te preocupes, simplemente déjala ir
Nota: El mapView.displayZoomControls(true) anterior; hay que añadir superior. De lo contrario, el mapa no se actualizará dinámicamente para mostrar cambios en latitud y longitud.
Después de registrar LocationListener, debemos reescribir onPause() y onResume de la actividad
El oyente gps anterior solo monitorea los cambios en el gps cuando el gps está encendido, es decir, el gps Está encendido, pero ¿es visible cuando el GPS está encendido? Todavía está en pausa cuando se enciende.
Registraremos un detector de GPS para que LocationManager escuche los cambios sobre si el GPS está encendido o apagado.
Tenga en cuenta que puede encapsularlo como una clase interna, o puede Escríbalo como una función onCreate. El código dentro de onCreate establecerá el modo de visualización del mapa y los botones para acercar/alejar.