İşaretçisi Olan Bir Harita Ekleme

Bu eğitim, iOS uygulamanıza nasıl Google haritası ekleyeceğinizi gösterir. Haritada, belirli bir konumu belirtmek için raptiye olarak da bilinen bir işaretçi vardır.

Kod alınıyor

GitHub'dan Google Haritalar iOS örnek deposunu klonlayın veya indirin.

Geliştirme projenizi oluşturma

iOS için Haritalar SDK'sını yüklemek üzere aşağıdaki adımları uygulayın:

  1. Xcode 14.0 sürümünü veya sonraki bir sürümü indirip yükleyin.
  2. Cihazınızda CocoaPods yoksa terminalden aşağıdaki komutu çalıştırarak macOS'e yükleyin:
    sudo gem install cocoapods
  3. Google Haritalar iOS örnek deposunu klonlayın veya indirin.
  4. tutorials/map-with-marker dizinine gidin.
  5. pod install komutunu çalıştırın. Bu işlem, Podfile politikasında belirtilen API'leri ve sahip olabilecekleri tüm bağımlılıkları yükler.
  6. Yüklü kapsül sürümünü yeni güncellemelerle karşılaştırmak için pod outdated komutunu çalıştırın. Yeni bir sürüm algılanırsa Podfile uygulamasını güncellemek ve en son SDK'yı yüklemek için pod update komutunu çalıştırın. Daha fazla bilgi için CocoaPods Kılavuzu'na bakın.
  7. Projeyi Xcode'da açmak için projenin map-with-marker.xcworkspace dosyasını açın (çift tıklayın). Projeyi açmak için .xcworkspace dosyasını kullanmanız gerekir.

API anahtarı alma ve gerekli API'leri etkinleştirme

Bu eğiticiyi tamamlamak için, iOS için Haritalar SDK'sını kullanmak üzere yetkilendirilmiş bir Google API anahtarına ihtiyacınız vardır. Anahtar almak ve API'yi etkinleştirmek için aşağıdaki düğmeyi tıklayın.

Başlayın

Daha fazla bilgi için API anahtarı alma bölümüne bakın.

API anahtarını uygulamanıza ekleyin

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

  1. Dosyaya aşağıdaki içe aktarma ifadesinin eklendiğini unutmayın:
    import GoogleMaps
  2. Aşağıdaki satırı application(_:didFinishLaunchingWithOptions:) yönteminizde düzenleyerek API_ANAHTARINIZ'ı kendi API anahtarınızla değiştirin:
    GMSServices.provideAPIKey("YOUR_API_KEY")

Uygulamanızı oluşturma ve çalıştırma

  1. Bilgisayarınıza bir iOS cihazı bağlayın veya Xcode şeması pop-up menüsünden bir simülatör seçin.
  2. Bir cihaz kullanıyorsanız konum hizmetlerinin etkinleştirildiğinden emin olun. Simülasyon aracı kullanıyorsanız Özellikler menüsünden bir konum seçin.
  3. Xcode'da Product/Run menü seçeneğini (veya oynat düğmesi simgesini) tıklayın.
    • Xcode, uygulamayı oluşturur ve ardından uygulamayı cihazda veya simülatörde çalıştırır.
    • Bu sayfadaki görüntüye benzer şekilde, Avustralya'nın doğu yakasında Sidney merkezli bir işaretçi bulunan bir harita görürsünüz.

Sorun giderme:

  • Harita görmüyorsanız bir API anahtarı alıp almadığınızı ve bu anahtarı yukarıda açıklandığı gibi uygulamaya eklediğinizden emin olun. Xcode'un hata ayıklama konsolunda API anahtarıyla ilgili hata mesajlarının olup olmadığını kontrol edin.
  • API anahtarını iOS paket tanımlayıcısına göre kısıtladıysanız uygulamanın paket tanımlayıcısını eklemek için anahtarı düzenleyin: com.google.examples.map-with-marker.
  • İyi bir WiFi veya GPS bağlantınızın olduğundan emin olun.
  • Günlükleri görüntülemek ve uygulamanın hatalarını ayıklamak için Xcode hata ayıklama araçlarını kullanın.

Kodu anlama

  1. Bir harita oluşturun ve onu loadView() ürününde görünüm olarak ayarlayın.

    Swift

    // 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)
    view = mapView
          

    Objective-C

    // 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.0];
    GMSMapView *mapView = [[GMSMapView alloc] initWithFrame: CGRectZero camera:camera];
    self.view = mapView;
          
  2. loadView() bölgesindeki haritaya bir işaretçi ekleyin.

    Swift

    // 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

    // 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;
          

Varsayılan olarak, iOS için Haritalar SDK'sı kullanıcı bir işaretçiye dokunduğunda bilgi penceresinin içeriğini görüntüler. Varsayılan davranışı kullanmaktan memnunsanız işaretçi için bir tıklama işleyici eklemeniz gerekmez.

Tebrikler! Belirli bir konumu belirten işaretçilerle birlikte Google haritası görüntüleyen bir iOS uygulaması geliştirdiniz. iOS için Haritalar SDK'sını nasıl kullanacağınızı da öğrendiniz.

Sonraki adımlar

Harita nesnesi ve işaretçilerle neler yapabileceğiniz hakkında daha fazla bilgi edinin.