Acceso al GPS y almacenamiento de coordenadas en iOS
Clase 40 de 52 • Curso de Desarrollo de Apps para iOS
Contenido del curso
- 4

Creación de la primera app iOS con Xcode: Login de Facebook
09:02 - 5

Navegación entre pantallas en iOS con UI Navigation Controller
05:49 - 6

Creación y conexión de múltiples storyboards en iOS
06:14 - 7

Conexiones IBOutlets y IBActions en iOS con Storyboards
11:00 - 8

Comparativa: Auto Layout vs SwiftUI en Desarrollo iOS
02:48 - 9

Auto Layout en iOS: Diseño Responsivo con Constraints y StackViews
11:10 - 10

Creación y configuración de tablas en iOS con Swift
12:49 - 11

Creación de celdas personalizadas en TableView de iOS
14:00 - 12

Persistencia de Datos en iOS con UserDefaults
11:09
- 19

Desarrollo de "Platzi Tweets": Red Social iOS Realista
02:24 - 20

Configuración Inicial de Proyecto iOS con CocoaPods
06:18 - 21

Diseño de Pantallas de Bienvenida, Inicio de Sesión y Registro en iOS
13:06 - 22

Controladores y validaciones en pantallas de registro y login
12:22 - 23

Validación y Conexiones en Login y Registro iOS
10:01 - 24
Modelado de Endpoints y JSON para API de PlatziTweets
01:44 - 25

Integración de Autenticación con API de Platzi Tweets
09:37 - 26

Desarrollo de Registro y Autenticación en Aplicaciones iOS
06:47 - 27

Diseño de Interfaces para Aplicaciones iOS: Creación de Celdas Personalizadas
12:37 - 28

Consumo de API para mostrar tweets en iOS
12:43 - 29

Diseño de Pantalla para Crear y Publicar Tweets en iOS
11:06 - 30

Conexión de Pantalla de Publicación con Servicios de Platzi Tweets
09:11 - 31

Borrado de Tweets Propios en iOS usando Swipe en UITableView
12:21 - 32

Uso de la Cámara del iPhone para Adjuntar Fotos en Posts
10:40 - 33
Conexión de Aplicaciones iOS con Firebase paso a paso
02:26 - 34

Configuración de iPhone y X-Code para ejecución de apps
04:45 - 35

Subida de Fotos a Firebase y Publicación en Twitter
13:38 - 36

Configuración de Post con Imagen en Firebase
03:13 - 37

Captura y Publicación de Videos en iOS con Firebase
09:17 - 38

Subida de Videos a Firebase e Integración en Posts de iOS
14:41 - 39

Configuración de Celdas para Reproducción de Videos en iOS
07:58 - 40

Acceso al GPS y almacenamiento de coordenadas en iOS
09:43 - 41

Integración de Mapas en iOS con Coordenadas de Usuario
11:29 - 42

Marcadores y Configuración de Mapas en iOS con Swift
14:11 - 43

Mejoras avanzadas en UI y UX para iOS Developer
01:28
¿Cómo acceder al GPS del iPhone desde tu aplicación?
Acceder al GPS del iPhone puede parecer todo un reto, pero al final del día, estamos ante una tarea lograble con los conocimientos adecuados. Una de las formas de incorporar el hardware del iPhone en tus desarrollos es utilizando el GPS, permitiéndote obtener las coordenadas del usuario. Estas pueden ser almacenadas para diferentes propósitos, como por ejemplo, guardar la ubicación en publicaciones de una aplicación tipo red social. A continuación, exploraremos cómo hacerlo paso a paso.
¿Cómo solicitar permisos para usar la geolocalización en iOS?
Para Apple, la privacidad del usuario es esencial, y solicitar permisos es una parte fundamental del proceso de acceso al GPS. Debes recordar que cada permiso debe ser claramente especificado en el archivo Info.plist de tu proyecto. Aquí es donde indicamos a iOS que pretendemos usar servicios de localización. A continuación, te muestro cómo se configuran:
<key>NSLocationWhenInUseUsageDescription</key>
<string>Usaremos tu ubicación para poder, pues para el tweet</string>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>Usaremos tu ubicación para poder, pues para el tweet</string>
Estos permisos sugieren que tu aplicación podrá acceder a la ubicación solo una vez o de forma continua, según las necesidades del usuario.
¿Cómo inicializar el Location Manager en iOS?
Es momento de configurar el administrador de ubicaciones en nuestro controlador. Primero, comenzamos con la creación de algunas propiedades necesarias:
import CoreLocation
private var locationManager: CLLocationManager?
private var userLocation: CLLocation?
La primera línea importa el marco CoreLocation, que es esencial para trabajar con localizaciones.
¿Cómo solicitar la ubicación del usuario?
Ahora, crearemos un método para solicitar la ubicación. Este método verificará si los servicios de localización están habilitados y procederá a solicitar autorización para obtener la ubicación:
func requestLocation() {
guard CLLocationManager.locationServicesEnabled() else {
// Informar al usuario que los servicios no están habilitados
return
}
locationManager = CLLocationManager()
locationManager?.delegate = self
locationManager?.desiredAccuracy = kCLLocationAccuracyBest
locationManager?.requestAlwaysAuthorization()
locationManager?.startUpdatingLocation()
}
Este método realiza una verificación previa para asegurarse que los servicios de GPS están habilitados y luego solicita permiso de acceso al GPS con la mejor precisión posible.
¿Cómo obtener la ubicación actualizada?
Una vez que hemos solicitado acceso a la ubicación, debemos captar y manejar las actualizaciones de localización obtenidas del GPS. Esto se realizará mediante la creación e implementación de una extensión de nuestro controlador para el delegate:
extension AddPostViewController: CLLocationManagerDelegate {
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
guard let bestLocation = locations.last else { return }
userLocation = bestLocation
// Aquí obtenemos la ubicación más precisa disponible.
}
}
Este método selecciona la ubicación más precisa entre las proporcionadas por el GPS y las almacena en la variable userLocation.
¿Cómo probar la funcionalidad del GPS en el simulador?
El simulador de iOS ofrece varias herramientas útiles para los desarrolladores. Una de ellas es la posibilidad de emular ubicaciones, lo cual es esencial durante las pruebas de una aplicación que utiliza geolocalización:
Puedes acceder a Hardware > Location en el menú del simulador y elegir la opción de ingresar coordenadas personalizadas.
Consejos adicionales
- Si el usuario niega el permiso, es necesario manejar la situación informándole que ciertas funcionalidades no estarán disponibles.
- Siempre asegúrate de probar estas funcionalidades tanto en el simulador como en dispositivos reales para verificar el correcto comportamiento de la aplicación.
Esta lección cubre los pasos esenciales para trabajar con geolocalización en iOS, desde la solicitud de permisos hasta la captura de coordenadas precisas del usuario, una habilidad necesaria para desarrollar aplicaciones robustas y centradas en el usuario. ¡Continúa explorando y experimentando para profundizar tus conocimientos en el desarrollo iOS!