Sürücü SDK'sı ile Tüketici SDK'sını aynı iOS uygulamasında birlikte kullanın

Her iki SDK'yı da aynı iOS uygulamasına ekleme nedenleri

Bazı durumlarda, aynı iOS uygulamasında hem Driver SDK'nın hem de Consumer SDK'nın bulunmasını isteyebilirsiniz. Örneğin:

  1. Hem sürücü hem de yolcu işlevlerine hitap eden bir uygulama istiyorsunuz.
  2. Uygulamanızın hem sürücüler/görev dağıtıcısı görünümüne ihtiyacı vardır, böylece sürücüleriniz bu görünümü kullanabilir, ancak diğer ekip üyeleri tek bir aracın ayrıntılarını takip edebilir.

Her iki SDK'yı aynı uygulamada derlemenin ön koşulları

Her iki SDK da proje kurulumunda yapılandırılmalıdır. Çerçeve kurulumunun farklı yolları için, Sürücü SDK'sı kılavuzundaki bazı küçük değişiklikleri izleyebilirsiniz:

  1. Cocoapods kurulumu için iOS Proje Yapılandırması Cocoapods İçin Sürücü SDK'sını Kullanmaya Başlama sayfasına göz atın.

    Podfile'da Tüketici SDK'sı bağımlılığını ekleyin. Podfile şuna benzer:

    source "https://cpdc-eap.googlesource.com/ridesharing-consumer-sdk.git"
    source "https://cpdc-eap.googlesource.com/ridesharing-driver-sdk.git"
    source "https://github.com/CocoaPods/Specs.git"
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
        pod 'GoogleRidesharingConsumer'
        pod 'GoogleRidesharingDriver'
    end
    
  2. Manuel yükleme için Getting Started with the Driver SDK for iOS Project Configuration Manual Upload (iOS için Sürücü SDK'sını Kullanmaya Başlama) başlıklı makaleye bakın.

    Sürücü SDK'sı kurulum kılavuzunu uyguladıktan sonra Tüketici SDK'sını yapılandırmak için Getting started with the Consumer SDK for iOS Project Configuration (iOS için Tüketici SDK'sını Kullanmaya Başlama) Proje Yapılandırması Kılavuzu'ndaki 5. ve 6. adımları uygulayın.

Sürüm oluşturma

Bu özelliğin desteklenmesi için hem Driver SDK'nın hem de Tüketici SDK'sının 3.3.0 veya üzeri bir sürümünün bulunması gerekir.

SDK'larda yapılan teorik zarar veren değişiklikler

Sürücü ve Tüketici SDK'ları 3.3.0 sürümü, bazı Sürücü SDK'sı uygulamalarında teorik olarak sorunlara neden olabilecek, ancak pek olası olmamakla birlikte aşağıdaki değişiklikleri kullanıma sunmaktadır. Genel olarak, Driver SDK'sı uygulamanız Tüketici SDK'sına yönelik sınıflar kullanıyorsa sorunları önlemek için Tüketici SDK'sını bir bağımlılık olarak bildirmeniz gerekir. Değişikliklerin listesi şu şekildedir:

Sürücü SDK'sı

Kullanılmayan sınıflar kaldırıldı:

  • GMTSLatLng.h
  • GMTSRequest.h
  • GMTSRequestHeader.h
  • GMTSRequestOptions.h
  • GMTSRequestOptionsSupport.h
  • GMTSSpeedReadingSpan.h
  • GMTSTerminalLocation.h
  • GMTSTimestamp.h
  • GMTSTrafficData.h
  • GMTSTrip.h
  • GMTSTripPropertyField.h
  • GMTSTripWaypoint.h
  • GMTSVehicle.h
  • GMTSVehicleLocation.h
  • GMTSVehicleMatch.h
  • GMTSVehicleSupportedTripType.h
  • GMTSVehicleType.h
  • GMTSWaypoint.h

Önizlemede, yalnızca Last Mile Fleet Solution'daki güvenilir sürücü modu tarafından kullanılan sınıf yeniden adlandırıldı. Güvenilir mod için Güvenilir sürücü modeli (Önizleme) başlıklı makaleyi inceleyin.

  • GMTSTaskInfo.h -> GMTDTaskInfo.h

Tüketici SDK'sı

GMTSImmutableData sınıfı GMTCImmutableData sınıf olarak yeniden adlandırıldı. GMTSImmutableData, yalnızca temel sınıf olarak kullanıldı ve hiçbir zaman doğrudan kullanılmadı.

  • GMTSImmutableData.h -> GMTCImmutableData.h

Geriye dönük uyumlu olması gereken bir typedef yeniden adlandırıldı:

  • GMTSFleetEngineIDString.h -> GMTCFleetEngineIDString.h