إعداد حزمة تطوير البرامج (SDK) الخاصة بالمستهلك

قبل بدء هذه الإجراءات، عليك التأكّد من تفعيل الإعدادات المناسبة وحزمة تطوير البرامج (SDK) للمستهلكين كما هو موضّح في الأقسام السابقة.

لإعداد حزمة تطوير البرامج (SDK) الخاصة بالمستهلك، يُرجى اتّباع الخطوات التالية:

  1. الحصول على المثيل ConsumerAPI
  2. إعداد حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" لطلب العارض المفضَّل

الحصول على مثيل "ConsumerApi"

لاستخدام حزمة تطوير البرامج (SDK) الخاصة بالمستهلك، يجب أن يبدأ تطبيقك في الإعداد المسبق "سينغلتون". ConsumerApi بشكل غير متزامن. تأخذ طريقة التهيئة AuthTokenFactory لإنشاء رموز JWT جديدة للمستخدم عند الضرورة

providerId هو رقم تعريف المشروع الخاص بمشروعك على Google Cloud. لمزيد من المعلومات، معلومات حول إنشاء مشروع Fleet Engine، راجع أنشِئ مشروع Fleet Engine في دليل Fleet Engine.

يجب أن ينفِّذ تطبيقك AuthTokenFactory كما هو موضّح في حزمة تطوير البرامج (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
}

حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" وبرامج عرض الخرائط

يتوافق الإصدار 2.0.0 والإصدارات الأحدث من حزمة تطوير البرامج (SDK) الخاصة بالمستهلكين مع حزمة تطوير البرامج (SDK) للخرائط للإصدار 18.1.0 من نظام التشغيل Android وكذلك لاحقًا. يلخّص الجدول التالي العارض التلقائي حسب إصدار حزمة تطوير البرامج (SDK) لـ "خرائط Google". وقابلية دعم كلٍ من العارضين. استخدِم أحدث إصدار من العارض إن أمكن. إذا كان عليك استخدام العارض القديم، حدِّده بشكل صريح باستخدام MapsInitializer.initialize()

إصدار حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" التوافق مع أحدث إصدار من العارض دعم العارض القديم العارض التلقائي
الإصدار 18.1.0 والإصدارات الأقدم نعم نعم الإصدار القديم*
V18.2.0 نعم نعم الأحدث

* مع طرح عارض الخرائط الجديد، سيصبح العارض الأحدث هو الافتراضي.

إذا كان عليك استخدام عارض مفضَّل، يمكنك تنفيذ جميع عمليات عرض واجهة المستخدم بعد عرض OnMapsSdkInitializedCallback نتيجة. عرض واجهة المستخدم العمليات التشغيلية التالية:

  • تضخيم طريقة العرض التي تحتوي على GoogleMapView أو ConsumerMapView

  • وضع العلامات على ConsumerMapView

إذا لم تقم بتشغيل هذه العمليات بعد استلام نتيجة واحدة (OnMapsSdkInitializedCallback)، لا تخصّص حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" العارض المفضل وسيتم عرض عرض الخريطة بدلاً من ذلك بواسطة العارض الافتراضي.

إعداد حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" قبل إعداد حزمة تطوير البرامج (SDK) الخاصة بالمستهلك

  1. يمكنك التواصل مع أحد أفراد الصف الدراسي "Activity" في "Application" أو بدء التشغيل. MapsInitializer.initialize()

  2. انتظِر نتيجة طلب العارض قبل إعداد حزمة تطوير البرامج (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()
      }
    })
  }

ملاحظات حول طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل (TLS)

داخليًا، يستخدم تنفيذ حزمة تطوير البرامج (SDK) للمستهلكين طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل (TLS) للاتصال بشكل آمن من خلال خدمة Fleet Engine قد يتطلّب الإصدار 23 من واجهة برمجة تطبيقات Android أو الإصدارات الأقدم رمز التصحيح SecurityProvider للاتصال بالخادم. لمزيد من المعلومات حول العمل باستخدام طبقة المقابس الآمنة (SSL) في Android، راجع مجموعة خدمات الأمان (GMS) موفّر الخدمة: تحتوي المقالة أيضًا على عيّنات تعليمات برمجية لتصحيح إعدادات موفِّر الأمان.

الخطوات التالية

إعداد خريطة