Eso es todo.

Para comenzar a desarrollar, consulta nuestra documentación para desarrolladores.

Activar el Google Maps SDK for iOS

Para que puedas comenzar, te proporcionaremos orientación en la Google Developers Console a fin de que hagas primero algunas acciones:

  1. Crear o seleccionar un proyecto
  2. Activar el Google Maps SDK for iOS
  3. Crear claves correspondientes
Continuar

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.

Si usas el Google Maps SDK for iOS con una licencia de Google Maps APIs Premium Plan, consulta la [guía de inicio rápido de Premium Plan .

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

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

Paso 2: Instala la API

Usar CocoaPods

La Google Maps SDK for iOS se encuentra disponible como pod de CocoaPods. CocoaPods es 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 macOS 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

Crea un Podfile para la 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 no has realizado desarrollos de iOS antes, crea una Aplicación de vista única).
  2. Crea un archivo llamado Podfile en el directorio de tu proyecto. Este archivo define las dependencias de tu proyecto.
  3. Edita el Podfile y agrega tus dependencias. A continuación, te mostramos un ejemplo en el que se incluyen las dependencias que necesitas para Google Maps SDK for iOS y Places API for iOS (opcional):
    source 'https://github.com/CocoaPods/Specs.git'
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleMaps'
      pod 'GooglePlaces'
    end

    Los clientes del plan premium también deben agregar pod 'GoogleMaps/M4B'.

  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 Podfile junto con las dependencias que contengan.

    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.

Instalación manual

En esta guía, se muestra la manera de agregar manualmente el framework de GoogleMaps a tu proyecto y configurar los ajustes de desarrollo en Xcode.

  1. Descarga los archivos de origen del SDK: GoogleMaps-2.0.1.
  2. Desempaqueta los archivos de origen.
  3. Ejecuta Xcode y abre un proyecto existente o crea uno nuevo. Si recién comienzas a usar iOS, crea una Aplicación de vista única, inhabilita Use Storyboards y habilita Use Automatic Reference Counting.
  4. Arrastra los siguientes paquetes a tu proyecto (selecciona Copy items if needed cuando aparezca el mensaje):
    • Subspecs/Base/Frameworks/GoogleMapsBase.framework
    • Subspecs/Maps/Frameworks/GoogleMaps.framework
    • Subspecs/Maps/Frameworks/GoogleMapsCore.framework

    Los clientes del plan premium también deben incluir Subspecs/M4B/Frameworks/GoogleMapsM4B.framework.

  5. En tu proyecto, haz clic con el botón secundario en GoogleMaps.framework y selecciona Show In Finder.
  6. Arrastra GoogleMaps.bundle desde la carpeta Resources y colócalo en tu proyecto. Cuando aparezca el mensaje, asegúrate de que la opción Copy items into destination group's folder no esté seleccionada.
  7. Selecciona tu proyecto en el navegador de proyectos y elige el destino de la aplicación.
  8. Abre la pestaña Build Phases y agrega los siguientes frameworks en Link Binary with Libraries:
    • GoogleMapsBase.framework
    • GoogleMaps.framework
    • GoogleMapsCore.framework
    • GoogleMapsM4B.framework (solo clientes del plan premium)
    • Accelerate.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreLocation.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libz.tbd
    • OpenGLES.framework
    • QuartzCore.framework
    • SystemConfiguration.framework
    • UIKit.framework
  9. Elige tu proyecto, en lugar de un destino específico, y abre la pestaña Build Settings. En la sección Other Linker Flags, agrega -ObjC. Si esta configuración no es visible, cambia el filtro de la barra Build Settings de Basic a All.

  10. Para instalar Places API for iOS, consulta Primeros pasos con Places API for iOS.

Paso 4: Obtener una clave de API

Haz clic en el siguiente botón que te guiará por el proceso de habilitación de Google Maps SDK for iOS y obtención de una clave de API. Si tu proyecto ya tiene una clave de API con restricción de iOS, puedes usarla.

Obtén una clave

También puedes seguir estos pasos para obtener una clave de API:

  1. Ingresa a Google API Console.
  2. Crea o selecciona un proyecto.
  3. Haz clic en Continue para habilitar el Google Maps SDK for iOS.
  4. En la página de Credentials, obtén una clave de API.
    Nota: Si tienes una clave con restricciones de iOS, puedes usarla. Puedes usar la misma clave con cualquiera de tus aplicaciones de iOS dentro del mismo proyecto.
  5. En el cuadro de diálogo en el que aparece la clave de API, selecciona Restrict Key para agregar una restricción de iOS a la clave de API.
  6. En la sección Restrictions, selecciona iOS apps y luego ingresa el identificador de paquete de tu app. Por ejemplo: com.example.hellomap.
  7. Haz clic en Save.

    Tu nueva clave de API con restricción 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

También puedes buscar una clave existente en Google API Console.

Para obtener más información sobre el uso de la Google API Console, consulta Ayuda de la API Console.

Paso 5: Agrega la clave de la API a tu aplicación

Swift

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

  1. Agrega la siguiente instrucción de importación:
    import GoogleMaps
  2. Agrega lo siguiente a tu método application(_:didFinishLaunchingWithOptions:) y reemplaza YOUR_API_KEY por tu clave de API:
    GMSServices.provideAPIKey("YOUR_API_KEY")
  3. Si también usas Places API, vuelve a agregar tu clave, como se muestra a continuación:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

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

  1. Agrega la siguiente instrucción de importación:
    @import GoogleMaps;
  2. Agrega lo siguiente a tu método application:didFinishLaunchingWithOptions: y reemplaza YOUR_API_KEY por tu clave de API:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. Si también usas Places API, vuelve a agregar tu clave, como se muestra a continuación:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

Paso 6: Agrega un mapa

En el siguiente código, se demuestra la manera de agregar un mapa simple a un objeto ViewController existente. Si creas una nueva aplicación, primero sigue las instrucciones de instalación anteriores y crea una nueva Single View Application; inhabilita Use Storyboards y habilita Use Automatic Reference Counting (ARC).

A continuación, agrega o actualiza algunos métodos en el ViewController predeterminado de tu aplicación para crear e inicializar una instancia de GMSMapView.

Swift

import UIKit
import GoogleMaps

class YourViewController: UIViewController {

  // You don't need to modify the default init(nibName:bundle:) method.

  override func loadView() {
    // Create a GMSCameraPosition that tells the map to display the
    // coordinate -33.86,151.20 at zoom level 6.
    let camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0)
    let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
    mapView.isMyLocationEnabled = true
    view = mapView

    // Creates a marker in the center of the map.
    let marker = GMSMarker()
    marker.position = CLLocationCoordinate2D(latitude: -33.86, longitude: 151.20)
    marker.title = "Sydney"
    marker.snippet = "Australia"
    marker.map = mapView
  }
}

Objective-C

#import "YourViewController.h"
#import <GoogleMaps/GoogleMaps.h>

@implementation YourViewController

// You don't need to modify the default initWithNibName:bundle: method.

- (void)loadView {
  // 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];
  GMSMapView *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

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

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

En iOS 9 y Xcode 7, las apps deben declarar los esquemas URL que intenten abrir especificando los esquemas del archivo Info.plist de la app. El Google Maps SDK for iOS abre la app móvil de Google Maps cuando el usuario hace clic en el logotipo de Google en el mapa. Por lo tanto, tu app 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 framework anterior de tu proyecto de Xcode.
  2. Sigue las instrucciones de la nota anterior para instalar el Google Maps SDK for iOS usando CocoaPods.
  3. Realiza los cambios que sean necesarios como resultado de 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 como resultado de 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 quitar 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 como resultado de 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
¿Necesitas ayuda? Visita nuestra página de asistencia.