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

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

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

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

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

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

providerId هو رقم تعريف المشروع لمشروعك على Google Cloud. لمزيد من المعلومات عن إنشاء مشروع Fleet Engine، اطّلِع على إنشاء مشروع Fleet Engine في دليل Fleet Engine.

يجب أن ينفذ تطبيقك AuthTokenFactory على النحو الموضّح في Consumer SDK Authentication.

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 من حزمة Consumer SDK والإصدارات الأحدث مع الإصدار 18.1.0 من حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط 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) للمستهلك

  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 API 23 أو الإصدارات الأقدم تصحيحًا SecurityProvider للتواصل مع الخادم. لمزيد من المعلومات حول استخدام طبقة المقابس الآمنة (SSL) في Android، يُرجى الاطّلاع على موفِّر خدمات الأمان في GMS. تحتوي المقالة أيضًا على نماذج تعليمات برمجية لإصلاح مقدّم الأمان.

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

إعداد خريطة