SDK مصرف کننده را راه اندازی کنید

قبل از شروع این روش‌ها، مطمئن شوید که خدمات مناسب و Consumer SDK را همانطور که در بخش‌های قبلی توضیح داده شد، فعال کرده‌اید.

برای مقداردهی اولیه Consumer SDK، مراحل زیر را دنبال کنید:

  1. نمونه ConsumerAPI را دریافت کنید
  2. Maps SDK را برای درخواست ارائه‌دهنده ترجیحی راه‌اندازی کنید

نمونه ConsumerApi را دریافت کنید

برای استفاده از Consumer SDK، برنامه شما باید ConsumerApi به صورت ناهمزمان مقداردهی اولیه کند. روش مقداردهی اولیه کلاس AuthTokenFactory را می گیرد تا در صورت لزوم توکن های جدید JWT را برای کاربر تولید کند.

providerId شناسه پروژه Google Cloud Project شما است. برای اطلاعات بیشتر در مورد ایجاد پروژه Fleet Engine، به ایجاد پروژه Fleet Engine خود در راهنمای Fleet Engine مراجعه کنید.

برنامه شما باید AuthTokenFactory همانطور که در Consumer SDK Authentication توضیح داده شده پیاده سازی کند.

جاوا

Task<ConsumerApi> consumerApiTask = ConsumerApi.initialize(
    this, "myProviderId", authTokenFactory);

consumerApiTask.addOnSuccessListener(
  consumerApi -> this.consumerApi = consumerApi);

کاتلین

val consumerApiTask =
  ConsumerApi.initialize(this, "myProviderId", authTokenFactory)

consumerApiTask?.addOnSuccessListener { consumerApi: ConsumerApi ->
  this@YourActivity.consumerApi = consumerApi
}

Maps SDK و ارائه‌دهنده نقشه‌ها

Consumer SDK نسخه 2.0.0 و نسخه های بعدی از Maps SDK برای اندروید نسخه 18.1.0 و بالاتر پشتیبانی می کند. جدول زیر رندر پیش‌فرض بر اساس نسخه Maps SDK و قابلیت پشتیبانی هر دو رندر را خلاصه می‌کند. در صورت امکان از آخرین رندر استفاده کنید. اگر باید از رندر قدیمی استفاده کنید، آن را به صراحت با استفاده از MapsInitializer.initialize() مشخص کنید.

نسخه SDK نقشه ها از آخرین رندر پشتیبانی می کند از رندر قدیمی پشتیبانی می کند رندر پیش فرض
V18.1.0 و پایین تر آره آره میراث*
V18.2.0 آره آره آخرین

* با عرضه Maps Renderer جدید ، آخرین رندر پیش فرض خواهد بود.

اگر باید از یک رندر ترجیحی استفاده کنید، پس از اینکه OnMapsSdkInitializedCallback نتیجه را برگرداند، تمام عملیات رندر UI را اجرا کنید. عملیات رندر UI شامل عملیات زیر است:

  • بزرگ کردن نمای حاوی GoogleMapView یا ConsumerMapView .

  • قرار دادن نشانگرها در ConsumerMapView .

اگر پس از دریافت نتیجه OnMapsSdkInitializedCallback این عملیات را اجرا نکنید، Maps SDK رندر دلخواه شما را اختصاص نمی‌دهد و نمای نقشه توسط رندر پیش‌فرض ارائه می‌شود.

قبل از مقداردهی اولیه SDK مصرف کننده، Maps SDK را راه اندازی کنید

  1. در کلاس Application یا Start-up Activity خود، MapsInitializer.initialize() را فراخوانی کنید.

  2. قبل از مقداردهی اولیه Consumer SDK منتظر نتیجه درخواست رندر باشید.

برای جزئیات بیشتر به نمونه های زیر مراجعه کنید.

جاوا

@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();
        }
      });
}

کاتلین

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

در داخل، اجرای Consumer SDK از SSL/TLS برای برقراری ارتباط امن با سرویس Fleet Engine استفاده می کند. Android API نسخه 23 یا جدیدتر ممکن است برای برقراری ارتباط با سرور به یک وصله SecurityProvider نیاز داشته باشد. برای اطلاعات بیشتر در مورد کار با SSL در Android، به ارائه دهنده امنیت GMS مراجعه کنید. این مقاله همچنین حاوی نمونه کدهایی برای وصله ارائه دهنده امنیت است.

بعدش چی

یک نقشه تنظیم کنید