Bu işlemlere başlamadan önce, önceki bölümlerde açıklandığı gibi uygun hizmetleri ve Consumer SDK'yı etkinleştirdiğinizden emin olun.
Consumer SDK'yı başlatmak için aşağıdaki adımları uygulayın:
ConsumerApi örneğini edinme
Tüketici SDK'sını kullanmak için uygulamanızın ConsumerApi singleton'ı eşzamansız olarak ilk kullanıma hazırlaması gerekir. Başlatma yöntemi, gerektiğinde kullanıcı için yeni JWT jetonları oluşturmak üzere AuthTokenFactory sınıfını kullanı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, Consumer SDK
Authentication bölümünde açıklandığı şekilde AuthTokenFactory işlevini 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
Consumer SDK 2.0.0 sürümü ve sonraki sürümleri, Android için Haritalar SDK'sının 18.1.0 sürümü ve sonraki sürümlerini destekler. Aşağıdaki tabloda, Haritalar SDK'sı sürümüne göre varsayılan oluşturucu ve her iki oluşturucunun desteklenebilirliği özetlenmiştir. Mümkünse en yeni oluşturucuyu kullanın.
Eski oluşturucuyu kullanmanız gerekiyorsa MapsInitializer.initialize() kullanarak açıkça belirtin.
| Haritalar SDK'sı sürümü | En yeni oluşturucuyu destekler | Eski oluşturucuyu destekler | Varsayılan oluşturucu |
|---|---|---|---|
| V18.1.0 ve önceki sürümler | Evet | Evet | Eski* |
| V18.2.0 | Evet | Evet | Son yüklenenler |
* Yeni Haritalar oluşturucunun kullanıma sunulmasıyla birlikte, en yeni oluşturucu varsayılan olarak ayarlanacak.
Tercih edilen bir oluşturucuyu kullanmanız gerekiyorsa tüm kullanıcı arayüzü oluşturma işlemlerini OnMapsSdkInitializedCallback sonuç döndürdükten sonra çalıştırın. Kullanıcı arayüzü oluşturma işlemleri şunlardır:
GoogleMapViewveyaConsumerMapViewiçeren bir görünümü şişirmekConsumerMapViewüzerine işaretçi yerleştirme.
OnMapsSdkInitializedCallback sonucunu aldıktan sonra bu işlemleri çalıştırmazsanız Maps SDK, tercih ettiğiniz oluşturucuyu ayırmaz ve harita görünümü bunun yerine varsayılan oluşturucu tarafından oluşturulur.
Tüketici SDK'sını başlatmadan önce Haritalar SDK'sını başlatın.
Applicationveya başlangıçActivitysınıfınızda MapsInitializer.initialize() işlevini çağırın.Consumer SDK'yı başlatmadan önce oluşturucu isteği 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
Consumer SDK'nın dahili olarak uygulanmasında, Fleet Engine hizmetiyle güvenli bir şekilde iletişim kurmak için SSL/TLS kullanılır. Android API'nin 23 veya önceki sürümlerinde sunucuyla iletişim kurmak için SecurityProvider yama gerekebilir. Android'de SSL ile çalışma hakkında daha fazla bilgi için Güvenlik GMS Sağlayıcısı başlıklı makaleyi inceleyin.
Makalede, güvenlik sağlayıcısını düzeltmeye yönelik kod örnekleri de yer almaktadır.