قبل بدء هذه الإجراءات، تأكَّد من تفعيل الخدمات المناسبة ومجموعة تطوير البرامج (SDK) للمستهلك على النحو الموضّح في الأقسام السابقة.
لإعداد حزمة Consumer SDK، اتّبِع الخطوات التالية:
- الحصول على مثيل
ConsumerAPI
- إعداد حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" لطلب أداة التقديم المفضّلة
الحصول على مثيل ConsumerApi
لاستخدام حزمة Consumer SDK، يجب أن يُنشئ تطبيقك العنصر الفردي
ConsumerApi
بشكل غير متزامن. تأخذ طريقة الإعداد فئة
AuthTokenFactory
لإنشاء علامات JWT جديدة للمستخدم عند الضرورة.
providerId
هو معرّف المشروع لمشروعك على Google Cloud. لمزيد من
المعلومات عن إنشاء مشروع Fleet Engine، يُرجى الاطّلاع على
إنشاء مشروع Fleet Engine في دليل Fleet Engine.
يجب أن ينفذ تطبيقك AuthTokenFactory
على النحو الموضّح في Consumer SDK
المصادقة.
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
}
حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" وأدوات عرض الخرائط
يتوافق الإصدار 2.0.0 من حزمة تطوير البرامج (SDK) للمستهلكين والإصدارات الأحدث مع الإصدار 18.1.0 من حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" لنظام التشغيل Android والإصدارات اللاحقة. يلخِّص الجدول التالي أداة الربط التلقائية حسب إصدار حزمة SDK لـ "خرائط Google"
ومدى توفّر كلتا أداتَي الربط. استخدِم أحدث وحدة عرض ممكنة.
إذا كان عليك استخدام أداة التحويل القديمة، حدِّدها صراحةً باستخدام
MapsInitializer.initialize()
.
إصدار حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" | تتوافق مع أحدث أداة معالجة | تتوافق مع أداة التحويل القديمة | أداة التحويل التلقائية |
---|---|---|---|
الإصدار 18.1.0 والإصدارات الأقدم | نعم | نعم | قديم* |
V18.2.0 | نعم | نعم | الأحدث |
* مع طرح مُعِدّ الصور الجديد في "خرائط Google"، سيكون "مُعِدّ الصور الأحدث" هو الإعداد التلقائي.
إذا كان عليك استخدام أداة عرض مفضّلة، نفِّذ جميع عمليات عرض واجهة المستخدم
بعد أن يعرض OnMapsSdkInitializedCallback
نتيجة. تشمل عمليات معالجة رسوم واجهة المستخدم
العمليات التالية:
تضخيم عرض يحتوي على
GoogleMapView
أوConsumerMapView
وضع علامات على
ConsumerMapView
إذا لم يتم تنفيذ هذه العمليات بعد تلقّي نتيجة
OnMapsSdkInitializedCallback
، لن تخصص حزمة SDK لتطبيق "خرائط Google" معالج عرض
المفضّل لديك، وسيتم عرض طريقة عرض الخريطة بدلاً من ذلك من خلال معالج العرض التلقائي.
إعداد حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" قبل إعداد حزمة تطوير البرامج (SDK) للمستهلك
في فئة
Application
أو فئةActivity
لبدء التشغيل، استخدِم الإجراء MapsInitializer.initialize().انتظِر نتيجة طلب أداة التحويل قبل إعداد حزمة تطوير البرامج (SDK) للمستهلك.
اطّلِع على الأمثلة التالية لمعرفة التفاصيل.
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()
}
})
}
ملاحظات حول طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل
في الوقت نفسه، يستخدم تنفيذ حزمة تطوير البرامج (SDK) للمستهلك بروتوكولَي SSL/TLS للتواصل بأمان
مع خدمة Fleet Engine. قد تتطلّب إصدارات Android API 23 أو الإصدارات الأقدم تصحيحًا
SecurityProvider
للتواصل مع الخادم. لمزيد من المعلومات
حول التعامل مع بروتوكول SSL في Android، يُرجى الاطّلاع على Security GMS
Provider.
تحتوي المقالة أيضًا على نماذج تعليمات برمجية لإصلاح مقدّم الأمان.