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

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

لإعداد Consumer SDK، اتّبِع الخطوات التالية:

  1. الحصول على ConsumerAPI مثيل
  2. إعداد "حزمة تطوير البرامج بالاستناد إلى بيانات خرائط Google" لطلب أداة العرض المفضّلة

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

لاستخدام حزمة Consumer 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) الخاصة بالمستهلكين مع الإصدار 18.1.0 والإصدارات الأحدث من حزمة تطوير البرامج بالاستناد إلى بيانات &quot;خرائط Google&quot; لتطبيقات Android. يلخّص الجدول التالي أداة العرض التلقائية حسب إصدار حزمة تطوير البرامج (SDK) لخرائط Google ومدى توافق أدوات العرض. استخدِم أحدث أداة عرض إن أمكن. إذا كان عليك استخدام أداة العرض القديمة، حدِّدها بشكل صريح باستخدام MapsInitializer.initialize().

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

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

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

  • تضخيم طريقة عرض تتضمّن GoogleMapView أو ConsumerMapView

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

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

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

  1. في صف Application أو صف بدء التشغيل Activity، استدعِ الدالة 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()
      }
    })
  }

ملاحظات حول طبقة المقابس الآمنة/طبقة النقل الآمنة

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

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

إعداد خريطة