
Начать
Прежде чем воспользоваться образцом кода, настройте среду разработки. Подробнее об образцах кода Maps SDK для iOS…
Ознакомьтесь с кодом
Swift
import GoogleMaps import UIKit class BasicMapViewController: UIViewController { var statusLabel: UILabel! override func viewDidLoad() { super.viewDidLoad() // Seattle coordinates let camera = GMSCameraPosition(latitude: 47.6089945, longitude: -122.3410462, zoom: 14) let mapView = GMSMapView(frame: view.bounds, camera: camera) mapView.delegate = self view = mapView navigationController?.navigationBar.isTranslucent = false statusLabel = UILabel(frame: .zero) statusLabel.alpha = 0.0 statusLabel.backgroundColor = .blue statusLabel.textColor = .white statusLabel.textAlignment = .center view.addSubview(statusLabel) statusLabel.translatesAutoresizingMaskIntoConstraints = false NSLayoutConstraint.activate([ statusLabel.topAnchor.constraint(equalTo: view.topAnchor), statusLabel.heightAnchor.constraint(equalToConstant: 30), statusLabel.leadingAnchor.constraint(equalTo: view.leadingAnchor), statusLabel.trailingAnchor.constraint(equalTo: view.trailingAnchor), ]) } } extension BasicMapViewController: GMSMapViewDelegate { func mapViewDidStartTileRendering(_ mapView: GMSMapView) { statusLabel.alpha = 0.8 statusLabel.text = "Rendering" } func mapViewDidFinishTileRendering(_ mapView: GMSMapView) { statusLabel.alpha = 0.0 } }
Objective-C
#import "GoogleMapsDemos/Samples/BasicMapViewController.h" #import <GoogleMaps/GoogleMaps.h> @implementation BasicMapViewController { UILabel *_statusLabel; } - (void)viewDidLoad { [super viewDidLoad]; // Seattle coordinates GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:47.6089945 longitude:-122.3410462 zoom:14]; GMSMapView *view = [GMSMapView mapWithFrame:CGRectZero camera:camera]; view.delegate = self; self.view = view; // Add status label, initially hidden. _statusLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 0, 30)]; _statusLabel.alpha = 0.0f; _statusLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth; _statusLabel.backgroundColor = [UIColor blueColor]; _statusLabel.textColor = [UIColor whiteColor]; _statusLabel.textAlignment = NSTextAlignmentCenter; [view addSubview:_statusLabel]; } - (void)mapViewDidStartTileRendering:(GMSMapView *)mapView { _statusLabel.alpha = 0.8f; _statusLabel.text = @"Rendering"; } - (void)mapViewDidFinishTileRendering:(GMSMapView *)mapView { _statusLabel.alpha = 0.0f; } @end
Как запустить пример приложения локально
Пример приложения Maps SDK для iOS доступен в виде скачиваемого архива на сайте GitHub. Чтобы установить и попробовать пример приложения Maps SDK для iOS, выполните следующие действия:
- Выполните команду
git clone https://github.com/googlemaps-samples/maps-sdk-for-ios-samples.git, чтобы клонировать репозиторий с примерами в локальный каталог. Откройте окно терминала, перейдите в каталог, в который вы клонировали файлы примеров, и откройте каталог GoogleMaps:
Swift
cd maps-sdk-for-ios-samples/GoogleMaps-Swift
open GoogleMapsSwiftXCFrameworkDemos.xcodeprojObjective-C
cd maps-sdk-for-ios-samples-main/GoogleMaps
open GoogleMapsDemos.xcodeproj- В проекте Xcode выберите File (Файл) > Add Package Dependencies (Добавить зависимости пакетов).
Введите
https://github.com/googlemaps/ios-maps-sdkв качестве URL, нажмите Ввод, чтобы загрузить пакет, и нажмите Add Package (Добавить пакет). - В Xcode нажмите кнопку компиляции, чтобы собрать приложение с текущей схемой. При сборке возникает ошибка, и вам предлагается ввести ключ API в файле
SDKConstants.swift(для Swift) илиSDKDemoAPIKey.h(для Objective-C). - Получите ключ API из проекта, в котором включен Maps SDK для iOS.
- Откройте файл
SDKConstants.swift(для Swift) илиSDKDemoAPIKey.h(для Objective-C) и вставьте ключ API в определение константыapiKeyилиkAPIKey. Пример:Swift
static let apiKey = "YOUR_API_KEY"Objective-C
static NSString *const kAPIKey = @"YOUR_API_KEY";
- В файле
SDKConstants.swift(Swift) илиSDKDemoAPIKey.h(Objective-C) удалите следующую строку, поскольку она используется для регистрации пользовательской проблемы:Swift
#error (Register for API Key and insert here. Then delete this line.)
Objective-C
#error Register for API Key and insert here.
- Выполните сборку и запустите проект. Откроется окно симулятора iOS со списком демоверсий Maps SDK.
- Выберите один из вариантов, чтобы поэкспериментировать с функцией Maps SDK для iOS.
- Если появится запрос на доступ к данным о местоположении, выберите Разрешить.