Xcode projesi oluşturma

Faturalandırmayı etkinleştirdikten ve bir API anahtarı oluşturduktan sonra Xcode'u kurmaya hazır olursunuz. kullanacağınız bir başka proje olabilir.

Her sürüm için sürüm notları mevcuttur kullanabilirsiniz.

1. Adım: Gerekli yazılımı yükleyin

iOS için Haritalar SDK'sını kullanarak proje oluşturmak istiyorsanız şunları indirip yüklemeniz gerekir:

  • X kodu 15.0 sürümü veya sonraki sürümler

2. Adım: Xcode projesini oluşturun ve iOS için Haritalar SDK'sını yükleyin

Swift Paket Yöneticisi

iOS için Haritalar SDK'sı üzerinden yüklenebilir Swift Package Manager'a dokunun. SDK'yı eklemek için iOS bağımlılıkları için mevcut tüm Haritalar SDK'sını kaldırdı.

SDK'yı yeni veya mevcut bir projeye eklemek için aşağıdaki adımları uygulayın:

  1. Xcode project veya workspace dosyanızı açın, ardından Dosya > Paket Bağımlılıkları Ekleyin.
  2. URL olarak https://github.com/googlemaps/ios-maps-sdk adresini girip Enter'a basın. paketi çekin ve "Paket Ekle"yi tıklayın.
  3. Belirli bir version yüklemek için Bağımlılık Kuralı alanını sürüm temelli seçeneklerdir. Yeni projeler için en son sürümü ve "Tam Sürüm"ü kullanarak seçeneğini belirleyin. İşlem tamamlandığında "Paket Ekle"yi tıklayın.
  4. Paket Ürünlerini Seçin penceresinde GoogleMaps alanını doğrulayın (9.0.0'dan önceki sürümler için GoogleMaps, GoogleMapsBase ve GoogleMapsCore) şuna eklenecek: belirlediğiniz main hedefiniz İşlem tamamlandığında "Paket Ekle"yi tıklayın.
  5. Yüklemenizi doğrulamak için hedefinizin General bölmesine gidin. Çerçeveler, Kitaplıklar ve Yerleştirilmiş İçerikler bölümünde yüklü paketleri göreceksiniz. "Paket Bağımlılıkları"nı da görüntüleyebilirsiniz "Project Navigator"ın bölümü .

Mevcut bir projenin package öğesini güncellemek için şu adımları izleyin:

  1. 9.0.0'dan önceki bir sürümden yeni sürüme geçiyorsanız şunları kaldırmanız gerekir: şu bağımlılıklar: GoogleMapsBase, GoogleMapsCore ve Yükseltme işleminden sonra GoogleMapsM4B. GoogleMaps için bağımlılığı kaldırmayın. Daha fazla bilgi için Sürüm 9.0.0 Sürüm Notları.

    Xcode proje yapılandırma ayarlarınızdan Çerçeveler, Kitaplıklar, ve yerleştirilmiş içerik gibi diğer özelliklerden de faydalanabilirsiniz. Aşağıdaki çerçeveyi kaldırmak için eksi işaretini(-) kullanın:

    • GoogleMapsBase (Yalnızca 9.0.0'dan önceki sürümlerden yapılan yükseltmeler için)
    • GoogleMapsCore (Yalnızca 9.0.0'dan önceki sürümlerden yapılan yükseltmeler için)
    • GoogleMapsM4B (Yalnızca 9.0.0'dan önceki sürümlerden yapılan yükseltmeler için)
  2. Xcode'dan "File > (Dosya) > Paketler > En Son Paket Sürümlerine Güncelleyin".
  3. Yüklemenizi doğrulamak için Project Navigator'ın Paket Bağımlılıkları bölümüne gidin .
ziyaret edin.

CocoaPods, aşağıdaki adımları uygulayın:

  1. Xcode çalışma alanınızı kapatın. Terminali açıp aşağıdaki komutu yürütün:
    sudo gem install cocoapods-deintegrate cocoapods-clean 
    pod deintegrate 
    pod cache clean --all
  2. Podfile, Podfile.resolved ve CocoaPods dışında bir şey için kullanmıyorsanız Xcode workspace.

Manuel olarak yüklenmiş olan mevcut iOS için Haritalar SDK'sını kaldırmak için aşağıdaki adımları izleyin:
  1. Xcode proje yapılandırma ayarlarınızdan Çerçeveler, Kitaplıklar, ve yerleştirilmiş içerik gibi diğer özelliklerden de faydalanabilirsiniz. Aşağıdaki çerçeveyi kaldırmak için eksi işaretini(-) kullanın:
    • GoogleMaps
    • GoogleMapsBase (Yalnızca yüklemeler için 9.0.0'dan önceki sürümler)
    • GoogleMapsCore (Yalnızca yüklemeler için 9.0.0'dan önceki sürümler)
    • GoogleMapsM4B (Yalnızca yüklemeler için 9.0.0'dan önceki sürümler)
  2. Xcode projenizin üst düzey dizininden GoogleMaps öğesini kaldırın. paket.

CocoaPods

iOS için Haritalar SDK'sı CocoaPods kapsülü. CocoaPods, Swift ve Objective-C için açık kaynaklı bir bağımlılık yöneticisidir. Kakao projeleri.

CocoaPods aracı yoksa terminalde aşağıdaki komutu çalıştırarak macOS'e yükleyin. Ayrıntılar için CocoaPods Başlangıç kılavuzu.

sudo gem install cocoapods

iOS için Haritalar SDK'sı için bir Podfile oluşturun ve yüklemeniz gerekir:

  1. Henüz Xcode projeniz yoksa hemen bir proje oluşturun ve yerel makinenize kaydedin. iOS uygulaması geliştirmede yeniyseniz:
    1. Yeni proje oluşturun.
    2. iOS > Uygulama şablonu.
    3. Proje seçenekleri ekranında:
      1. Proje Adı'nı girin.
      2. Grup tanımlayıcısı alanının değerini kaydedin. Bu değeri, aşağıdaki API anahtarınızı kısıtlamak için kullanabilirsiniz.
      3. Projenin Arayüzü'nü Görsel Taslak olarak ayarlayın.
      4. Dil'i Swift veya Objective-C olarak ayarlayın.
  2. Proje dizininizde Podfile adlı bir dosya oluşturun. Bu dosya, projenizin bağımlılıklarını tanımlar.
  3. Podfile öğesini düzenleyin ve bağımlılıklarınızla birlikte ekleyin. sürümlerini ziyaret edin. Aşağıda, iOS için Haritalar SDK'sı:
    source 'https://github.com/CocoaPods/Specs.git'
    
    platform :ios, '15.0'
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
      pod 'GoogleMaps', '8.4.0'
    end
    Her zaman en son sürümü kullandığınızdan emin olmak için yeni bir sürüm olduğunda pod outdated'ı düzenli olarak çalıştırın. Gerekiyorsa en son sürüme geçin.
  4. Podfile dosyasını kaydedin.
  5. Bir terminal penceresi açın ve Podfile öğesini içeren dizine gidin:

    cd <path-to-project>
  6. pod install komutunu çalıştırın. Bu işlem, Bağımlılıklarla birlikte Podfile öğesinde belirtilen API'ler yardımcı olabilir.

    pod install
  7. Xcode'u kapatın ve ardından projenizin klasörünü açın (çift tıklayın) .xcworkspace dosyasını kullanarak Xcode'u başlatın. Bu tarihten itibaren, projeyi açmak için .xcworkspace dosyasını kullanmanız gerekir.

Mevcut bir projenin API'sini güncellemek için şu adımları izleyin:

  1. Bir terminal penceresi açın ve Podfile öğesini içeren proje dizinine gidin.
  2. pod update komutunu çalıştırın. Bu işlem tüm API'leri günceller Podfile sürümdeki en son sürüme güncelleyin.

Manuel Yükleme

Bu kılavuzda, iOS için Haritalar SDK'sını içeren XCFramework'ları projenize manuel olarak nasıl ekleyeceğiniz ve Xcode'da derleme ayarlarınızı nasıl yapılandıracağınız gösterilmektedir. XCFramework, Apple Silicon kullanan makineler dahil olmak üzere birden fazla platformda kullanabileceğiniz bir ikili programdır.
  1. Aşağıdaki SDK ikili programlarını ve kaynak dosyalarını indirin:
  2. XCFrameworks'a ve kaynaklara erişmek için dosyaları ayıklayın.
  3. Henüz bir Xcode projeniz yoksa şimdi bir tane oluşturun ve yerel makinenize bakın. iOS uygulaması geliştirmede yeniyseniz:
    1. Yeni proje oluşturun.
    2. iOS > Uygulama şablonu.
    3. Proje seçenekleri ekranında:
      1. Proje Adı'nı girin.
      2. Grup tanımlayıcısı alanının değerini kaydedin. Bu değeri, aşağıdaki API anahtarınızı kısıtlamak için kullanabilirsiniz.
      3. Projenin Arayüzü'nü Görsel Taslak olarak ayarlayın.
      4. Dil'i Swift veya Objective-C olarak ayarlayın.
  4. Genel sekmesini açın. Aşağıdaki XCFrameworks'ü projenize sürükleyin Çerçeveler, Kitaplıklar ve Yerleştirilmiş İçerikler bölümünde bulabilirsiniz. Şunlardan emin olun: Her XCFramework'te Do Not Embed'i (Yerleştirme) seçin:
    • GoogleMaps.xcframework
    • GoogleMapsBase.xcframework
    • GoogleMapsCore.xcframework
  5. GoogleMaps.bundle öğesini GoogleMapsResources'tan kopyalayın. dosyayı Xcode projenizin üst düzey dizinine indirin. Projeyi tamamlamak için İstendiğinde öğeleri hedef grubun klasörüne kopyalayın.
  6. Project Navigator'dan projenizi seçin ve hedefi belirleyebilirsiniz.
  7. Uygulamanızın hedefine ait Derleme Aşamaları sekmesini açın. Kitaplıklarla İkili Program arasında bağlantı oluşturma bölümüne aşağıdakini ekleyin. çerçeveler ve kitaplıklar:
    • Accelerate.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libz.tbd
    • Metal.framework
    • OpenGLES.framework (Yalnızca OpenGL kullanıyorsanız)
    • QuartzCore.framework
    • SystemConfiguration.framework
    • UIKit.framework
  8. Belirli bir hedef yerine projenizi seçin ve Derleme Ayarları sekmesi. Bağlantı - Genel -> Diğer Bağlayıcı İşaretler bölümünde, -ObjC öğesini "Hata ayıklama"ya ekleyin ve "Serbest bırak". Bu ayarlar görünmüyor, Derleme Ayarları çubuğundan filtreyi değiştirin Temel'den Tümü'ne.

  9. iOS XCFramework için Yerler SDK'sını yüklemek üzere bkz. Başlarken ile öğrenin.

3. Adım: Apple Gizlilik Manifest dosyasını inceleyin

Apple, App Store'daki uygulamalar için uygulama gizlilik ayrıntılarını zorunlu kılar. Güncellemeler ve daha fazla bilgi için Apple App Store Gizlilik Ayrıntıları sayfasını ziyaret edin.

Apple Gizlilik Manifesti dosyası, SDK'nın kaynak paketine dahildir. Gizlilik Manifest Dosyasının dahil edildiğini doğrulamak ve içeriğini incelemek için uygulamanızın arşivini oluşturup arşivden bir gizlilik raporu oluşturun.

4. Adım: API anahtarınızı projeye ekleyin

API anahtarı alma bölümünde uygulamanız için bir API anahtarı oluşturdu. Şimdi bu anahtarı Xcode projenize ekleyin.

Aşağıdaki örneklerde YOUR_API_KEY öğesini kendi API anahtarınızla değiştirin.

Swift

API anahtarınızı AppDelegate.swift'nize aşağıdaki gibi ekleyin:

  1. Aşağıdaki içe aktarma beyanını ekleyin:
    import GoogleMaps
  2. Şunları ekleyin: application(_:didFinishLaunchingWithOptions:) yöntemini kullanarak API anahtarınızı girin:
    GMSServices.provideAPIKey("YOUR_API_KEY")
  3. Places API'yi de kullanıyorsanız anahtarınızı burada gösterildiği gibi tekrar ekleyin:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

API anahtarınızı AppDelegate.m cihazınıza aşağıdaki şekilde ekleyin:

  1. Aşağıdaki içe aktarma deyimini ekleyin:
    @import GoogleMaps;
  2. Şunları ekleyin: application:didFinishLaunchingWithOptions: yöntemini kullanarak API anahtarınızı girin:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. Places API'yi de kullanıyorsanız anahtarınızı burada gösterildiği gibi tekrar ekleyin:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

5. Adım: Bir harita ekleyin

Swift

import UIKit
import GoogleMaps

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        // Create a GMSCameraPosition that tells the map to display the
        // coordinate -33.86,151.20 at zoom level 6.

        let options = GMSMapViewOptions()
        options.camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0)
        options.frame = self.view.bounds

        let mapView = GMSMapView(options: options)
        self.view.addSubview(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 "ViewController.h"
#import <GoogleMaps/GoogleMaps.h>

@interface ViewController()

@end

@implementation ViewController

-   (void)viewDidLoad {
  [super viewDidLoad];
  // Do any additional setup after loading the view.
  // Create a GMSCameraPosition that tells the map to display the
  // coordinate -33.86,151.20 at zoom level 6.
  GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
  options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683
                                                        longitude:151.2086
                                                             zoom:6];
  options.frame = self.view.bounds;
  GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];

  [self.view addSubview: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

5. Adım (İsteğe bağlı): API tarafından kullanılan URL şemalarını bildirin

iOS 9 ve Xcode 7 sürümünden itibaren, uygulamalar uygulamanın Info.plist dosyasında şemaları belirterek açılmayı amaçlamanız gerekir. İlgili içeriği oluşturmak için kullanılan iOS için Haritalar SDK'sı, kullanıcı tıkladığında Google Haritalar mobil uygulamasını açar. harita üzerinde Google logosunu görürsünüz. Böylelikle uygulamanız, ilgili URL'yi oluşturabilirsiniz.

iOS için Haritalar SDK'sı tarafından kullanılan URL şemalarını bildirmek için Info.plist için şu satırları ekleyin:

LSApplicationQueriesSchemes googlechromes comgooglemaps

Aşağıdaki ekran görüntüsünde, Xcode kullanıcı arayüzündeki yapılandırma gösterilmektedir:

LSApplicationSorgularSchemes yapılandırması
X kodu

Yukarıdaki beyan olmadan kullanıcı sayfaya dokunduğunda aşağıdaki hatalar oluşabilir haritadaki Google logosu:

  • -canOpenURL: şu URL için başarısız oldu: "comgooglemaps://" - hata: "Bu uygulama comgooglemaps şemasını sorgulamasına izin verildi"
  • -canOpenURL: URL: "googlechromes://" için başarısız oldu - hata: "Bu uygulamanın, googlechromes şemasını sorgulamasına izin verilmiyor"

Bu hataları ortadan kaldırmak için beyanı Info.plist sayfanıza ekleyin.

Sırada ne var?

Artık bir API anahtarınız ve Xcode projeniz var. Şimdi uygulamalar oluşturup çalıştırabilirsiniz. iOS için Gezinme SDK'sı size yardımcı olabilecek birçok eğitici ve örnek uygulama sunar . Ayrıntılı bilgi için: