Android के लिए Google Maps ऐप्लिकेशन में कई इंटेंट उपलब्ध हैं. इनका इस्तेमाल करके, Google Maps को डिसप्ले, खोज, नेविगेशन या Street View मोड में लॉन्च किया जा सकता है. अपने ऐप्लिकेशन में मैप एम्बेड करने के लिए, Android के लिए Maps SDK टूल का क्विकस्टार्ट देखें.
Android Automotive OS (AAOS) प्लैटफ़ॉर्म के लिए, कुछ खास ज़रूरी शर्तें और अतिरिक्त इंटेंट उपलब्ध हैं. ज़्यादा जानकारी के लिए, Android Automotive के लिए Google Maps इंटेंट से जुड़ा दस्तावेज़ देखें.
खास जानकारी
इंटेंट की मदद से, किसी दूसरे ऐप्लिकेशन में कोई गतिविधि शुरू की जा सकती है. इसके लिए, Intent ऑब्जेक्ट में वह कार्रवाई
बताई जाती है जो आपको करनी है. जैसे, "मैप डिसप्ले करें" या "एयरपोर्ट के लिए दिशा-निर्देश दिखाएं". Android के लिए Google Maps ऐप्लिकेशन
कई अलग-अलग इंटेंट के साथ काम करता है. इससे Google Maps ऐप्लिकेशन लॉन्च किया जा सकता है
और इनमें से कोई एक कार्रवाई की जा सकती है:
- किसी तय जगह और ज़ूम लेवल पर मैप डिसप्ले करना.
- जगहें या स्थान खोजना और उन्हें मैप पर डिसप्ले करना.
- एक जगह से दूसरी जगह के लिए दिशा-निर्देशों का अनुरोध करना. दिशा-निर्देश, परिवहन के तीन मोड के लिए दिए जा सकते हैं: ड्राइविंग, पैदल, साइकल से यात्रा.
- Google Street View में पैनोरामा इमेज डिसप्ले करना.
इस पेज पर, उन इंटेंट के बारे में बताया गया है जिनका इस्तेमाल, Google Maps ऐप्लिकेशन के साथ Android के लिए किया जा सकता है. इंटेंट के बारे में ज़्यादा जानने के लिए, इंटेंट और इंटेंट फ़िल्टर और सामान्य इंटेंट देखें.
इंटेंट के अनुरोध
किसी इंटेंट की मदद से Google Maps लॉन्च करने के लिए, सबसे पहले आपको एक Intent
ऑब्जेक्ट बनाना होगा. इसमें उसकी कार्रवाई, यूआरआई, और पैकेज की जानकारी देनी होगी.
- कार्रवाई: Google Maps के सभी इंटेंट को व्यू ऐक्शन —
ACTION_VIEWके तौर पर कॉल किया जाता है. - यूआरआई: Google Maps के इंटेंट, यूआरएल-एनकोड किए गए यूआरआई का इस्तेमाल करते हैं. इनमें चुनी गई कार्रवाई के साथ-साथ, उस कार्रवाई को करने के लिए कुछ डेटा की जानकारी दी जाती है.
Package: Calling
setPackage("com.google.android.apps.maps")ensures that Android के लिए Google Maps ऐप्लिकेशन, इंटेंट को हैंडल करे. अगर पैकेज सेट नहीं किया जाता है, तो सिस्टम यह तय करता है कि कौनसे ऐप्लिकेशन,Intentको हैंडल कर सकते हैं. अगर एक से ज़्यादा ऐप्लिकेशन उपलब्ध हैं, तो उपयोगकर्ता से पूछा जा सकता है कि वह कौनसे ऐप्लिकेशन का इस्तेमाल करना चाहता है.
Intent बनाने के बाद, सिस्टम से संबंधित
ऐप्लिकेशन को लॉन्च करने का अनुरोध कई तरीकों से किया जा सकता है. एक सामान्य तरीका यह है कि Intent को
startActivity() तरीके से पास किया जाए. सिस्टम, ज़रूरी ऐप्लिकेशन —
इस मामले में Google Maps — को लॉन्च करता है और उससे जुड़ी Activity शुरू करता है.
Java
// Create a Uri from an intent string. Use the result to create an Intent.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988");
// Create an Intent from gmmIntentUri. Set the action to ACTION_VIEW
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
// Make the Intent explicit by setting the Google Maps package
mapIntent.setPackage("com.google.android.apps.maps");
// Attempt to start an activity that can handle the Intent
startActivity(mapIntent);
Kotlin
// Create a Uri from an intent string. Use the result to create an Intent.
val gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988")
// Create an Intent from gmmIntentUri. Set the action to ACTION_VIEW
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
// Make the Intent explicit by setting the Google Maps package
mapIntent.setPackage("com.google.android.apps.maps")
// Attempt to start an activity that can handle the Intent
startActivity(mapIntent)
अगर सिस्टम, ऐसा कोई ऐप्लिकेशन नहीं ढूंढ पाता जो इंटेंट का जवाब दे सके, तो आपका ऐप्लिकेशन क्रैश हो सकता है. इसलिए, उपयोगकर्ता को इनमें से कोई इंटेंट दिखाने से पहले, यह पुष्टि करें कि जवाब देने वाला ऐप्लिकेशन इंस्टॉल है.
यह पुष्टि करने के लिए कि कोई ऐप्लिकेशन, इंटेंट को स्वीकार करने के लिए उपलब्ध है, अपने Intent ऑब्जेक्ट पर
resolveActivity() को कॉल करें. अगर नतीजा
नॉन-नल है, तो कम से कम एक ऐसा ऐप्लिकेशन है जो इंटेंट को हैंडल कर सकता है. साथ ही,
startActivity() को कॉल करना सुरक्षित है. अगर नतीजा null है, तो इंटेंट का इस्तेमाल न करें. साथ ही,
अगर हो सके, तो इंटेंट को शुरू करने वाली सुविधा को बंद कर दें.
Java
if (mapIntent.resolveActivity(getPackageManager()) != null) {
...
}
Kotlin
mapIntent.resolveActivity(packageManager)?.let {
...
}
उदाहरण के लिए, सैन फ़्रांसिस्को का मैप डिसप्ले करने के लिए, इस कोड का इस्तेमाल किया जा सकता है:
Java
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
if (mapIntent.resolveActivity(getPackageManager()) != null) {
startActivity(mapIntent);
}
Kotlin
val gmmIntentUri = Uri.parse("geo:37.7749,-122.4194")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
mapIntent.resolveActivity(packageManager)?.let {
startActivity(mapIntent)
}
यूआरएल-एनकोड की गई क्वेरी स्ट्रिंग
Google Maps के इंटेंट को पास की गई सभी स्ट्रिंग को यूआरआई एनकोड किया जाना चाहिए. उदाहरण के लिए,
स्ट्रिंग 1st & Pike, Seattle को 1st%20%26%20Pike%2C%20Seattle में बदला जाना चाहिए.
स्ट्रिंग में मौजूद स्पेस को %20 से एनकोड किया जा सकता है या प्लस साइन
(+) से बदला जा सकता है.
अपनी स्ट्रिंग को एनकोड करने के लिए, android.net.Uri encode() तरीके का इस्तेमाल किया जा सकता है.
उदाहरण के लिए:
Java
Uri gmmIntentUri =
Uri.parse("geo:37.7749,-122.4192?q=" + Uri.encode("1st & Pike, Seattle"));
Kotlin
val gmmIntentUri =
Uri.parse("geo:37.7749,-122.4192?q=" + Uri.encode("1st & Pike, Seattle"))
मैप डिसप्ले करना
किसी तय जगह और ज़ूम लेवल पर मैप डिसप्ले करने के लिए, geo: इंटेंट का इस्तेमाल करें.
geo:latitude,longitude?z=zoom
पैरामीटर
latitudeऔरlongitudeसे, मैप का सेंटर पॉइंट सेट होता है.zसे, मैप का शुरुआती ज़ूम लेवल सेट किया जा सकता है. यह ज़रूरी नहीं है. स्वीकार की गई वैल्यू की रेंज 0 (पूरी दुनिया) से लेकर 21 (अलग-अलग इमारतें) तक होती है. चुनी गई जगह पर उपलब्ध मैप डेटा के आधार पर, ऊपरी सीमा अलग-अलग हो सकती है.
उदाहरण
Java
// Creates an Intent that loads a map of San Francisco
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
// Creates an Intent that loads a map of San Francisco
val gmmIntentUri = Uri.parse("geo:37.7749,-122.4194")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
कोई जगह खोजना
किसी तय व्यू पोर्ट में खोज क्वेरी डिसप्ले करने के लिए, इस इंटेंट का इस्तेमाल करें. जब क्वेरी का सिर्फ़ एक नतीजा होता है, तब इस इंटेंट का इस्तेमाल करके, किसी खास जगह या पते पर पिन डिसप्ले किया जा सकता है. जैसे, कोई लैंडमार्क, कारोबार, भौगोलिक सुविधा या शहर.
geo:latitude,longitude?q=query
geo:0,0?q=my+street+address
geo:0,0?q=latitude,longitude(label)
पैरामीटर
मैप डिसप्ले करने के लिए इस्तेमाल किए गए पैरामीटर के अलावा, खोज में इन पैरामीटर का इस्तेमाल किया जा सकता है:
qसे, मैप पर हाइलाइट की जाने वाली जगहें तय होती हैं. खोज के सभी अनुरोधों के लिए,qपैरामीटर ज़रूरी है. यह जगह को, जगह के नाम या पते के तौर पर स्वीकार करता है. स्ट्रिंग को यूआरएल-एनकोड किया जाना चाहिए. इसलिए,City Hall, New York, NYजैसे पते कोCity+Hall,New+York,NYमें बदला जाना चाहिए.labelसे, मैप पर पहचानी गई किसी जगह पर कस्टम लेबल सेट किया जा सकता है.labelको स्ट्रिंग के तौर पर तय किया जाना चाहिए.
कैटगरी के हिसाब से खोज
अगर आपने खोज के लिए कोई सामान्य शब्द पास किया है, तो Google Maps, आपके बताए गए अक्षांश और देशांतर के आस-पास ऐसी जगह ढूंढने की कोशिश करता है जो आपकी शर्तों से मेल खाती हो. अगर कोई जगह तय नहीं की जाती है, तो Google Maps, आस-पास की लिस्टिंग ढूंढने की कोशिश करता है. उदाहरण के लिए:
Java
// Search for restaurants nearby
Uri gmmIntentUri = Uri.parse("geo:0,0?q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Search for restaurants in San Francisco.
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
// Search for restaurants nearby.
val gmmIntentUri = Uri.parse("geo:0,0?q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Search for restaurants in San Francisco.
val gmmIntentUri =
Uri.parse("geo:37.7749,-122.4194?q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
क्वेरी स्ट्रिंग के साथ ज़ूम पैरामीटर तय करके, खोज के नतीजों को और बेहतर बनाया जा सकता है. यहां दिए गए उदाहरण में, 10 का ज़ूम जोड़ने पर, आस-पास के रेस्टोरेंट ढूंढने के बजाय, शहर के लेवल पर रेस्टोरेंट ढूंढने की कोशिश की जाती है.
Java
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?z=10&q=restaurants");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("geo:37.7749,-122.4194?z=10&q=restaurants")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
जगह की जानकारी खोजना
किसी खास पते को खोजने पर, उस जगह पर पिन डिसप्ले होता है.
Java
Uri gmmIntentUri = Uri.parse("geo:0,0?q=1600 Amphitheatre Parkway, Mountain+View, California");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("geo:0,0?q=1600 Amphitheatre Parkway, Mountain+View, California")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
ऊपर दिए गए उदाहरण में, अक्षांश और देशांतर को 0,0 पर सेट किया गया है. हालांकि, क्वेरी स्ट्रिंग के तौर पर
पता पास किया गया है. किसी खास जगह को खोजते समय, अक्षांश
और देशांतर की ज़रूरत नहीं होती. हालांकि, अगर आपको सटीक पता नहीं पता है, तो निर्देशांक तय करके, खोज के नतीजों को बेहतर बनाया जा सकता है. उदाहरण के लिए, 'मेन स्ट्रीट' के लिए पता खोजने पर, बहुत ज़्यादा
नतीजे मिल सकते हैं.
Java
// Searching for 'Main Street' returns too many results.
Uri gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street");
Kotlin
// Searching for 'Main Street' returns too many results.
val gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street")
इंटेंट यूआरआई में अक्षांश और देशांतर जोड़ने से, नतीजे किसी खास इलाके के हिसाब से दिखते हैं:
Java
// Searches for 'Main Street' near San Francisco.
Uri gmmIntentUri = Uri.parse("geo:37.7749,-122.4194?q=101+main+street");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
// Searches for 'Main Street' near San Francisco.
val gmmIntentUri =
Uri.parse("geo:37.7749,-122.4194?q=101+main+street")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
जब आपको पता हो कि खोज से सिर्फ़ एक वैल्यू मिलेगी, तो वैकल्पिक लेबल पास किया जा सकता है. लेबल को स्ट्रिंग के तौर पर तय किया जाना चाहिए और यह
मैप मार्कर के नीचे दिखता है. ध्यान दें कि लेबल सिर्फ़ तब उपलब्ध होते हैं, जब q को अक्षांश और देशांतर के निर्देशांक के तौर पर तय किया जाता है.
Java
// Display a label at the location of Google's Sydney office.
Uri gmmIntentUri = Uri.parse("geo:0,0?q=-33.8666,151.1957(Google+Sydney)");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
// Display a label at the location of Google's Sydney office.
val gmmIntentUri =
Uri.parse("geo:0,0?q=-33.8666,151.1957(Google+Sydney)")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
मोहल्ले के पते या अक्षांश और देशांतर के बजाय, प्लस कोड का इस्तेमाल करके, किसी जानी-पहचानी जगह पर पिन डिसप्ले किया जा सकता है.
Java
// Display the location of Google, San Francisco using a global plus code.
Uri gmmIntentUri = Uri.parse("http://plus.codes/849VQJQ5+XX");
// Equivalently, define the same location using a local plus code.
gmmIntentUri = Uri.parse("https://plus.codes/QJQ5+XX,San%20Francisco");
// Construct and use the Intent as in the preceding examples.
Kotlin
// Display the location of Google, San Francisco using a global plus code.
var gmmIntentUri = Uri.parse("http://plus.codes/849VQJQ5+XX")
// Equivalently, define the same location using a local plus code.
gmmIntentUri = Uri.parse("https://plus.codes/QJQ5+XX,San%20Francisco")
// Construct and use the Intent as in the preceding examples.
रास्ते के दिशा-निर्देश लॉन्च करना
Google Maps नेविगेशन को लॉन्च करने के लिए, इस इंटेंट यूआरआई का इस्तेमाल करें. इससे तय किए गए पते या निर्देशांक के लिए, रास्ते के दिशा-निर्देश मिलते हैं. दिशा-निर्देश हमेशा उपयोगकर्ता की मौजूदा जगह से दिए जाते हैं.
google.navigation:q=a+street+address
google.navigation:q=latitude,longitude
पैरामीटर
q: नेविगेशन खोज के लिए एंडपॉइंट सेट करता है. इस वैल्यू में अक्षांश और देशांतर के निर्देशांक या क्वेरी-फ़ॉर्मैट वाला पता हो सकता है. अगर यह ऐसी क्वेरी स्ट्रिंग है जिससे एक से ज़्यादा नतीजे मिलते हैं, तो पहला नतीजा चुना जाता है.modeसे, परिवहन का तरीका सेट होता है.modeज़रूरी नहीं है और इसे इनमें से किसी एक पर सेट किया जा सकता है:- ड्राइविंग के लिए
d(डिफ़ॉल्ट) - साइकल से यात्रा के लिए
b - दोपहिया वाहन के लिए
l - पैदल के लिए
w
- ड्राइविंग के लिए
avoidसे, वे सुविधाएं सेट होती हैं जिनसे रास्ते को बचना चाहिए.avoidज़रूरी नहीं है और इसे इनमें से एक या एक से ज़्यादा पर सेट किया जा सकता है:- टोल के लिए
t - हाइवे के लिए
h - फ़ेरी के लिए
f
- टोल के लिए
उदाहरण
यहां दिया गया Intent सिडनी, ऑस्ट्रेलिया में टारोना ज़ू के लिए, रास्ते के दिशा-निर्देशों का अनुरोध करता है:
Java
Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
अगर आपको टोल नहीं चुकाना है या फ़ेरी से यात्रा नहीं करनी है, तो ऐसे रास्ते के लिए अनुरोध किया जा सकता है जिनमें इन सुविधाओं से बचा जाए.
Java
Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&avoid=tf");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&avoid=tf")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
अगर आपको थोड़ी कसरत करनी है, तो साइकल से यात्रा के दिशा-निर्देशों का अनुरोध किया जा सकता है.
Java
Uri gmmIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&mode=b");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&mode=b")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
अगर आपको मोटर से चलने वाले दोपहिया वाहन से यात्रा करनी है, तो ऐसे दिशा-निर्देशों का अनुरोध किया जा सकता है जिनमें
संकरी सड़कें और ऐसे रास्ते शामिल हों जो कारों के लिए उपलब्ध नहीं हैं. यहां दिया गया
intent भारत में एक रास्ता दिखाता है.
Java
Uri gmmIntentUri = Uri.parse("google.navigation:q=Connaught+Place,+New+Delhi,Delhi&mode=l");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
val gmmIntentUri =
Uri.parse("google.navigation:q=Connaught+Place,+New+Delhi,Delhi&mode=l")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
Street View पैनोरामा डिसप्ले करना
Google Street View लॉन्च करने के लिए, google.streetview इंटेंट का इस्तेमाल करें. Google Street
View, अपने coverage
area में तय की गई जगहों से पैनोरामिक व्यू उपलब्ध कराता है. उपयोगकर्ताओं के योगदान से बनी फ़ोटोस्फ़ेयर, और Street View के खास
कलेक्शन भी उपलब्ध हैं.
google.streetview:cbll=latitude,longitude&cbp=0,bearing,0,zoom,tilt
google.streetview:panoid=id&cbp=0,bearing,0,zoom,tilt
पैरामीटर
सभी google.streetview यूआरआई में, cbll या panoid
पैरामीटर शामिल होना चाहिए:
cbllकॉमा से अलग की गई वैल्यू (46.414382,10.013988) के तौर पर अक्षांश और देशांतर को स्वीकार करता है. ऐप्लिकेशन, इस जगह के सबसे पास ली गई पैनोरामा फ़ोटो दिखाता है. Street View की इमेज को समय-समय पर रीफ़्रेश किया जाता है. साथ ही, हर बार थोड़ी अलग-अलग जगहों से फ़ोटो ली जा सकती हैं. इसलिए, हो सकता है कि इमेज अपडेट होने पर, आपकी जगह किसी दूसरे पैनोरामा पर स्नैप हो जाए.panoid, पैनोरामा का खास आईडी होता है. अगर `panoid` और `cbll`, दोनों तय किए जाते हैं, तो Google Maps, पैनोरामा आईडी का इस्तेमाल करता है.panoidcbllAndroid ऐप्लिकेशन के लिए, पैनोरामा आईडीStreetViewPanoramaLocationऑब्जेक्ट से उपलब्ध होते हैं.cbpएक वैकल्पिक पैरामीटर है. इससे कैमरे का शुरुआती ओरिएंटेशन अडजस्ट किया जाता है.cbpपैरामीटर, कॉमा से अलग की गई पांच वैल्यू लेता है. इनमें से सभी वैल्यू ज़रूरी नहीं हैं. दूसरी, चौथी, और पांचवीं वैल्यू सबसे अहम होती हैं. इनसे क्रमशः बेयरिंग, ज़ूम, और टिल्ट सेट होता है. पहली और तीसरी वैल्यू काम नहीं करती हैं. इसलिए, इन्हें0पर सेट किया जाना चाहिए.bearing: यह उत्तर से क्लॉकवाइज़ दिशा में, डिग्री में कैमरे की कंपास हेडिंग दिखाता है. ट्रू नॉर्थ 0, ईस्ट 90, साउथ 180, वेस्ट- बेयरिंग को पास की गई वैल्यू रैप होती हैं. इसका मतलब है कि 0°, 360° और 720° सभी एक ही दिशा में इशारा करते हैं. बेयरिंग को, कॉमा से अलग की गई पांच वैल्यू में से दूसरी वैल्यू के तौर पर तय किया जाता है.
zoom: इससे कैमरे का ज़ूम लेवल सेट होता है. डिफ़ॉल्ट ज़ूम लेवल 0 पर सेट होता है. ज़ूम को 1 पर सेट करने से, मैग्निफ़िकेशन दोगुना हो जाएगा. ज़ूम को 0 और मौजूदा पैनोरामा के लिए ज़्यादा से ज़्यादा ज़ूम लेवल के बीच में रखा जाता है. इसका मतलब है कि इस रेंज से बाहर की कोई भी वैल्यू, रेंज में मौजूद सबसे नज़दीकी वैल्यू पर सेट हो जाती है. उदाहरण के लिए, -1 की वैल्यू 0 पर सेट हो जाती है. ज़ूम, कॉमा से अलग की गई पांच वैल्यू में से चौथी वैल्यू होती है.tilt: इससे कैमरे का ऐंगल तय होता है. यह ऊपर या नीचे की ओर हो सकता है. इसकी रेंज -90 से लेकर 0 से 90 तक होती है. इसमें 90 का मतलब है सीधे नीचे की ओर देखना, 0 का मतलब है होराइज़न पर सेंटर करना, और -90 का मतलब है सीधे ऊपर की ओर देखना.
उदाहरण
यहां Street View इंटेंट का इस्तेमाल करने के कुछ उदाहरण दिए गए हैं.
Java
// Displays an image of the Swiss Alps.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=46.414382,10.013988");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Uses a PanoID to show an image from Maroubra beach in Sydney, Australia.
Uri gmmIntentUri = Uri.parse("google.streetview:panoid=Iaa2JyfIggYAAAQfCZU9KQ");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
// Opens Street View between two Pyramids in Giza. The values passed to the
// cbp parameter angles the camera slightly up, and towards the east.
Uri gmmIntentUri = Uri.parse("google.streetview:cbll=29.9774614,31.1329645&cbp=0,30,0,0,-15");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
Kotlin
// Displays an image of the Swiss Alps.
val gmmIntentUri =
Uri.parse("google.streetview:cbll=46.414382,10.013988")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Uses a PanoID to show an image from Maroubra beach in Sydney, Australia.
val gmmIntentUri =
Uri.parse("google.streetview:panoid=Iaa2JyfIggYAAAQfCZU9KQ")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)
// Opens Street View between two Pyramids in Giza. The values passed to the
// cbp parameter angles the camera slightly up, and towards the east.
val gmmIntentUri =
Uri.parse("google.streetview:cbll=29.9774614,31.1329645&cbp=0,30,0,0,-15")
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.apps.maps")
startActivity(mapIntent)