Primeros pasos

Para comenzar a travajar con Google Maps en iOS, debes descargar el Google Maps SDK for iOS y asegurarte de contar con la claves de API.

Hay disponibles notas de la versión para cada versión.

Nota: El esquema de direcciones URL de Google Maps se encuentra disponible sin clave de API.

Nota: Si usas Google Maps Mobile SDK for Work, consulta la guía de inicio rápido de Google Maps Mobile SDK for Work:

Paso 1: Descargar la última versión de Xcode

Para crear un proyecto usando el Google Maps SDK for iOS, necesitas la versión 6.3 de Xcode o una posterior.

Paso 2: Obtener CocoaPods

El Google Maps SDK for iOS se encuentra disponible como pod de CocoaPods. CocoaPodses un administrador de dependencias de código abierto para proyectos de Swift y Objective-C de Cocoa.

Si todavía no dispones de la herramienta CocoaPods, instálala en OS X ejecutando el siguiente comando desde el terminal. Para obtener información detallada, consulta la guía de primeros pasos de CocoaPods.

$ sudo gem install cocoapods

Paso 3: Instalar la API usando CocoaPods

Crea un Podfile para el Google Maps SDK for iOS y úsalo para instalar la API y sus dependencias:

  1. Si aún no tienes un proyecto de Xcode, créalo y guárdalo en tu máquina local. (Si eres nuevo en el desarrollo de iOS, crea una aplicación de vista única y asegúrate de que Use Automatic Reference Counting esté activada).
  2. Crea un archivo llamado Podfile en el directorio de tu proyecto. Este archivo define las dependencias de tu proyecto y comúnmente se cita como Podspec.
  3. Edita el Podfile y agrega tus dependencias. A continuación, se muestra un Podspec simple en el que se incluye el nombre del pod que necesitas para el Google Maps SDK for iOS:

    source 'https://github.com/CocoaPods/Specs.git'
    platform :ios, '8.1'
    pod 'GoogleMaps'

  4. Guarda el Podfile

  5. Abre un terminal y dirígete al directorio que contiene el Podfile:

    $ cd <path-to-project>

  6. Ejecuta el comando pod install. Con esto se instalarán las API especificadas en el Podspec junto con las dependencias que puedan contener.

    $ pod install

  7. Cierra Xcode y luego abre (con doble clic) el archivo .xcworkspace de tu proyecto para ejecutar Xcode. A partir de este punto, debes usar el archivo .xcworkspace para abrir el proyecto.

Paso 4: Habilitar las API obligatorias en la Google Developers Console

Debes activar el Google Maps SDK for iOS y, de manera opcional, la Google Places API for iOS de tu proyecto en la Google Developers Console.

Si deseas obtener orientación en el proceso y activar las API automáticamente, haz clic en este vínculo.

También puedes activar la API tú mismo en la Developers Console si realizas lo siguiente:

  1. Ingresa a Google Developers Console.
  2. Selecciona un proyecto.
  3. Habilita el Google Maps SDK for iOS y, de manera opcional, la Google Places API for iOS: En la barra lateral izquierda, selecciona API y autenticación.

    En la lista de API, asegúrate de que todas las API que estés usando tengan el estado ENCENDIDO.

Paso 5: Obtener una clave de API de iOS

Usar una clave de API te permite controlar el uso de la API por parte de tu aplicación y garantiza que Google pueda comunicarse contigo respecto de esta última, si fuera necesario. La clave es gratuita, puedes usarla con cualquiera de tus aplicaciones en las que se llame al Google Maps SDK for iOS y admite un número ilimitado de usuarios. Puedes obtener una clave de API a través de la Google Developers Console proporcionando el identificador de paquetes de tu aplicación.

Si tu proyecto no cuenta aún con una clave para aplicaciones de iOS, sigue estos pasos para crear una clave de API desde la Google Developers Console:

  1. En la barra lateral izquierda, selecciona Credenciales.
  2. Si tu proyecto no cuenta aún con una clave de API de servidor, crea una en este momento seleccionando Add credentials > API key > iOS key.
  3. En el cuadro de diálogo que se muestra a continuación, escribe el identificador del paquete de tu aplicación. Por ejemplo: com.example.hellomap.
  4. Haz clic en Create.

    Tu nueva clave de la API de iOS aparece en la lista de claves de API de tu proyecto. Una clave de API es una cadena de caracteres similar a la siguiente:

    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

  5. Agrega tu clave de API a tu AppDelegate.m de la siguiente manera:

    • Agrega la siguiente instrucción de importación:
      @import GoogleMaps;
    • Agrega lo siguiente a tu método application:didFinishLaunchingWithOptions:, el cual reemplaza YOUR_API_KEY por tu clave de API:
      [GMSServices provideAPIKey:@"YOUR_API_KEY"];

Paso 6: Agregar un mapa

En el código siguiente se demuestra la manera de agregar un mapa simple a un objeto ViewController existente. Si creas una nueva aplicación para iOS, sigue primero las instrucciones de instalación siguientes y and crea una nueva aplicación de vista única.

Agrega o actualiza algunos métodos dentro del ViewController predeterminado de tu aplicación para crear e inicializar una instancia de GMSMapView, como se muestra en el ejemplo siguiente.

Objective-C

#import "YourViewController.h"
@import GoogleMaps;

@implementation YourViewController {
  GMSMapView *mapView_;
}

- (void)viewDidLoad {
  // Create a GMSCameraPosition that tells the map to display the
  // coordinate -33.86,151.20 at zoom level 6.
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                          longitude:151.20
                                                               zoom:6];
  mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];
  mapView_.myLocationEnabled = YES;
  self.view = mapView_;

  // Creates a marker in the center of the map.
  GMSMarker *marker = [[GMSMarker alloc] init];
  marker.position = CLLocationCoordinate2DMake(-33.86, 151.20);
  marker.title = @"Sydney";
  marker.snippet = @"Australia";
  marker.map = mapView_;
}

@end

Swift

import UIKit
import GoogleMaps

class YourViewController: UIViewController {

  override func viewDidLoad() {
    super.viewDidLoad()

    let camera = GMSCameraPosition.cameraWithLatitude(-33.86,
        longitude: 151.20, zoom: 6)
    let mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)
    mapView.myLocationEnabled = true
    self.view = mapView

    let marker = GMSMarker()
    marker.position = CLLocationCoordinate2DMake(-33.86, 151.20)
    marker.title = "Sydney"
    marker.snippet = "Australia"
    marker.map = mapView
  }
}

Nota: Reemplaza ambas instancias de YourViewController en el ejemplo anterior por el nombre de tu controlador de vista.

Ejecuta tu aplicación. Podrás ver un mapa con un solo marcador centrado sobre Sídney, Australia. Si ves un marcador, pero el mapa no es visible, confirma que hayas proporcionado tu clave de API.

Paso 7: Declarar los esquemas de URL aplicados por la API

En iOS 9 y Xcode 7, las aplicaciones deben declarar los esquemas URL que intentan abrir especificando los esquemas del archivo Info.plist. El Google Maps SDK for iOS abre la aplicación móvil de Google Maps cuando el usuario hace clic en el logotipo de Google en el mapa. Por lo tanto, tu aplicación debe declarar los esquemas de URL correspondientes.

Para declarar los esquemas de URL aplicados por el Google Maps SDK for iOS, agrega las siguientes líneas a tu archivo Info.plist:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>googlechromes</string>
    <string>comgooglemaps</string>
</array>

En la captura de pantalla siguiente se muestra la configuración de la interfaz de usuario de Xcode:

LSApplicationQueriesSchemes configuration in Xcode

Sin la declaración anterior, se producen los siguientes errores cuando el usuario toca el logotipo de Google en el mapa:

-canOpenURL: failed for URL: "comgooglemaps://" - error: "This app is not allowed to query for scheme comgooglemaps"
-canOpenURL: failed for URL: "googlechromes://" - error: "This app is not allowed to query for scheme googlechromes"

Para eliminar estos errores, agrega la declaración a tu archivo Info.plist según la descripción anterior.

Experimentar con el proyecto de demostración del Google Maps SDK

Prueba las demostraciones de SDK usando pod try GoogleMaps. Para obtener información más detallada, consulta la guía de ejemplos de código.

Realizar una actualización de una versión anterior

Sigue las instrucciones que se brindan a continuación para actualizar un proyecto existente a la versión más reciente del Google Maps SDK for iOS.

Nota: La versión 1.9.2 y las anteriores del Google Maps SDK for iOS se hallaban disponibles como un archivo zip que contenía un marco estático. También se ofrecía la opción de instalar versiones recientes de un pod de CocoaPods. A partir de la versión 1.10.0, el Google Maps SDK for iOS se encuentra disponible para la instalación únicamente a través de CocoaPods.

Si ya instalaste el Google Maps SDK for iOS desde un archivo zip que contenía un marco estático:

  1. Elimina todas las referencias al marco anterior desde tu proyecto de Xcode.
  2. Sigue las instrucciones anteriores para instalar el Google Maps SDK for iOS con CocoaPods.
  3. Realiza los cambios que sean necesarios debido a la actualización. Consulta las notas de la versión para hallar una lista con los cambios de cada versión.
  4. Borra y vuelve a crear tu proyecto seleccionando Product > Clean y luego Product > Build.

Si ya instalaste el Google Maps SDK for iOS desde el pod de Google-Maps-iOS-SDK:

  1. Cambia el nombre de tu pod a GoogleMaps.
  2. Ejecuta pod install.
  3. Realiza los cambios que sean necesarios debido a la actualización. Consulta las notas de la versión para hallar una lista con los cambios de cada versión.
  4. Borra y vuelve a crear tu proyecto seleccionando Product > Clean y luego Product > Build.

Si ya instalaste el Google Maps SDK for iOS desde el pod de GoogleMaps:

  1. Verifica tu Podfile en busca de limitadores de versión y asegúrate de eliminar o actualizar la versión para garantizar que obtengas la versión que necesitas. Consulta las notas de la versión para hallar una lista con los cambios de cada versión.
  2. Ejecuta pod update.
  3. Realiza los cambios que sean necesarios debido a la actualización. Consulta las notas de la versión para hallar una lista con los cambios de cada versión.
  4. Borra y vuelve a crear tu proyecto seleccionando Product > Clean y luego Product > Build.

Enviar comentarios sobre...

Google Maps SDK for iOS
Google Maps SDK for iOS
Si necesitas ayuda, visita nuestra página de asistencia.