उपभोक्ता SDK टूल शुरू करें

इन प्रक्रियाओं को शुरू करने से पहले, पक्का करें कि आपने पिछले सेक्शन में बताए गए तरीके से, ज़रूरी सेवाएं और Consumer SDK चालू कर दिया हो.

Consumer SDK को शुरू करने के लिए, यह तरीका अपनाएं:

  1. ConsumerAPI इंस्टेंस पाना
  2. पसंदीदा रेंडरर के लिए अनुरोध करने के लिए, Maps SDK को शुरू करना

ConsumerApi इंस्टेंस पाना

Consumer SDK का इस्तेमाल करने के लिए, आपके ऐप्लिकेशन को सिंगलटन ConsumerApi को एसिंक्रोनस तरीके से शुरू करना होगा. शुरू करने का यह तरीका, AuthTokenFactory क्लास का इस्तेमाल करता है. इससे उपयोगकर्ता के लिए, ज़रूरत पड़ने पर नए जेडब्लयूटी टोकन जनरेट किए जाते हैं.

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
}

Maps SDK और मैप रेंडरर

Consumer SDK v2.0.0 और इसके बाद के वर्शन, Maps SDK for Android v18.1.0 और इसके बाद के वर्शन के साथ काम करते हैं. यहां दी गई टेबल में, Maps SDK के वर्शन के हिसाब से डिफ़ॉल्ट रेंडरर और दोनों रेंडरर के काम करने की सुविधा के बारे में खास जानकारी दी गई है. अगर हो सके, तो सबसे नए रेंडरर का इस्तेमाल करें. अगर आपको लेगसी रेंडरर का इस्तेमाल करना है, तो MapsInitializer.initialize() का इस्तेमाल करके, इसे साफ़ तौर पर सेट करें.

Maps SDK टूल का वर्शन लेटेस्ट रेंडरर के साथ काम करता है लेगसी रेंडरर के साथ काम करता है डिफ़ॉल्ट रेंडरर
V18.1.0 और इससे पहले के वर्शन हां हां लेगसी*
V18.2.0 हां हां सबसे नए

* नए Maps Renderer के रोल आउट होने के बाद, Latest renderer डिफ़ॉल्ट रूप से सेट होगा.

अगर आपको पसंदीदा रेंडरर का इस्तेमाल करना है, तो यूज़र इंटरफ़ेस (यूआई) रेंडर करने से जुड़ी सभी कार्रवाइयां, OnMapsSdkInitializedCallback के नतीजे देने के बाद करें. यूज़र इंटरफ़ेस (यूआई) रेंडर करने के ऑपरेशन में ये ऑपरेशन शामिल हैं:

  • ऐसे व्यू को बढ़ाना जिसमें GoogleMapView या ConsumerMapView शामिल हो.

  • ConsumerMapView पर मार्कर लगाए जा रहे हैं.

अगर आपको OnMapsSdkInitializedCallback का नतीजा मिलने के बाद, ये कार्रवाइयां नहीं करनी हैं, तो Maps SDK आपके पसंदीदा रेंडरर को असाइन नहीं किया जाएगा. इसके बजाय, मैप व्यू को डिफ़ॉल्ट रेंडरर से रेंडर किया जाएगा.

Consumer SDK को शुरू करने से पहले, Maps SDK को शुरू करें

  1. अपनी Application या स्टार्ट-अप Activity क्लास में, MapsInitializer.initialize() को कॉल करें

  2. Consumer 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()
      }
    })
  }

एसएसएल/टीएलएस के बारे में नोट

Consumer SDK को लागू करने के दौरान, SSL/TLS का इस्तेमाल किया जाता है. इससे Fleet Engine सेवा के साथ सुरक्षित तरीके से कम्यूनिकेट किया जा सकता है. Android API के 23 या इससे पहले के वर्शन में, सर्वर से कम्यूनिकेट करने के लिए SecurityProvider पैच की ज़रूरत पड़ सकती है. Android में एसएसएल के साथ काम करने के बारे में ज़्यादा जानकारी के लिए, Security GMS Provider देखें. इस लेख में, सुरक्षा से जुड़ी सेवा देने वाली कंपनी के लिए पैचिंग के कोड सैंपल भी दिए गए हैं.

आगे क्या करना है

मैप सेट अप करना