Tüketici SDK'sını başlatma

Bu prosedürlere başlamadan önce, önceki bölümlerde açıklandığı şekilde uygun hizmetleri ve Tüketici SDK'sını etkinleştirdiğinizden emin olun.

Tüketici SDK'sını başlatmak için şu adımları uygulayın:

  1. ConsumerAPI örneğini alın
  2. Tercih edilen oluşturma aracını istemek için Haritalar SDK'sını başlatma

ConsumerApi örneğini alın

Tüketici SDK'sını kullanmak için uygulamanızın tekil ConsumerApi sınıfını eşzamansız olarak başlatması gerekir. Başlatma yöntemi, gerektiğinde kullanıcı için yeni JWT jetonları oluşturmak üzere AuthTokenFactory sınıfını alır.

providerId, Google Cloud projenizin proje kimliğidir. Fleet Engine projesi oluşturma hakkında daha fazla bilgi için Fleet Engine kılavuzundaki Fleet Engine projenizi oluşturma bölümüne bakın.

Uygulamanız, AuthTokenFactory'yi Tüketici SDK'sı Kimlik Doğrulaması bölümünde açıklandığı şekilde uygulamalıdır.

Java

Task<ConsumerApi> consumerApiTask = ConsumerApi.initialize(
    this, "myProviderId", authTokenFactory);

consumerApiTask.addOnSuccessListener(
  consumerApi -> this.consumerApi = consumerApi);

Kotlin

val consumerApiTask =
  ConsumerApi.initialize(this, "myProviderId", authTokenFactory)

consumerApiTask?.addOnSuccessListener { consumerApi: ConsumerApi ->
  this@YourActivity.consumerApi = consumerApi
}

Haritalar SDK'sı ve harita oluşturucuları

Tüketici SDK'sı 2.0.0 ve sonraki sürümler, Android için Haritalar SDK'sı 18.1.0 ve sonraki sürümleri destekler. Aşağıdaki tabloda, Haritalar SDK'sı sürümüne göre varsayılan oluşturma aracı ve her iki oluşturma aracının da desteklenebilirliği özetlenmektedir. Mümkünse en son oluşturma aracını kullanın. Eski oluşturma aracını kullanmanız gerekiyorsa MapsInitializer.initialize() kullanarak açıkça belirtin.

Haritalar SDK'sı sürümü En son oluşturma aracını destekler Eski oluşturma aracını destekler Varsayılan oluşturma aracı
V18.1.0 ve önceki sürümler Evet Evet Eski*
V18.2.0 Evet Evet Son yüklenenler

* Yeni Haritalar Oluşturucu'nun kullanıma sunulmasıyla birlikte, En son oluşturucu varsayılan olacaktır.

Tercih edilen oluşturucuyu kullanmanız gerekiyorsa OnMapsSdkInitializedCallback sonuç döndürdükten sonra tüm kullanıcı arayüzü oluşturma işlemlerini çalıştırın. Kullanıcı arayüzü oluşturma işlemleri aşağıdaki işlemleri içerir:

  • GoogleMapView veya ConsumerMapView içeren bir görünümü şişirme.

  • ConsumerMapView konumuna işaretçi yerleştiriliyor.

OnMapsSdkInitializedCallback sonucunu aldıktan sonra bu işlemleri çalıştırmazsanız Haritalar SDK'sı tercih ettiğiniz oluşturucuyu ayırmaz ve bunun yerine, harita görünümü varsayılan oluşturucu tarafından oluşturulur.

Tüketici SDK'sını başlatmadan önce Haritalar SDK'sını başlatın

  1. Application veya başlangıç Activity sınıfınızda MapsInitializer.initialize() işlevini çağırın.

  2. Tüketici SDK'sını başlatmadan önce oluşturucu istek sonucunu bekleyin.

Ayrıntılar için aşağıdaki örneklere bakın.

Java

@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  initViews();

  MapsInitializer.initialize(getApplicationContext(), Renderer.LATEST,
      new OnMapsSdkInitializedCallback() {
        @Override
        public void onMapsSdkInitialized(Renderer renderer) {
          switch (renderer) {
            case LATEST:
              Log.i("maps_renderer", "LATEST renderer");
              break;
            case LEGACY:
              Log.i("maps_renderer", "LEGACY renderer");
              break;
          }

          initializeConsumerSdk();
        }
      });
}

Kotlin

fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  setContentView(R.layout.main)
  initViews()

  MapsInitializer.initialize(
    getApplicationContext(), Renderer.LATEST,
    object : OnMapsSdkInitializedCallback() {
      fun onMapsSdkInitialized(renderer: Renderer?) {
        when (renderer) {
          LATEST -> Log.i("maps_renderer", "LATEST renderer")
          LEGACY -> Log.i("maps_renderer", "LEGACY renderer")
        }
        initializeConsumerSdk()
      }
    })
  }

SSL/TLS ile ilgili notlar

Tüketici SDK'sı, Fleet Engine hizmetiyle güvenli bir şekilde iletişim kurmak için dahili olarak SSL/TLS kullanır. Android API 23 veya önceki sürümler, sunucuyla iletişim kurmak için SecurityProvider yaması gerektirebilir. Android'de SSL ile çalışma hakkında daha fazla bilgi için Güvenlik GMS Sağlayıcısı'na bakın. Makalede, güvenlik sağlayıcıya yama uygulamak için kullanılan kod örnekleri de yer almaktadır.

Sırada ne var?

Harita oluşturma