इन प्रक्रियाओं को शुरू करने से पहले, पक्का करें कि आपने पिछले सेक्शन में बताए गए तरीके से, ज़रूरी सेवाएं और Consumer SDK चालू कर दिया हो.
Consumer 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 को शुरू करें
अपनी
Application
या स्टार्ट-अपActivity
क्लास में, MapsInitializer.initialize() को कॉल करें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 देखें.
इस लेख में, सुरक्षा से जुड़ी सेवा देने वाली कंपनी के लिए पैचिंग के कोड सैंपल भी दिए गए हैं.