แอป Google Maps สำหรับ Android แสดงให้เห็นความตั้งใจหลายๆ ด้านที่คุณสามารถใช้เพื่อเปิด Google Maps บนหน้าจอ โหมดการค้นหา การนำทาง หรือ Street View หากคุณต้องการ ฝังแผนที่ในแอปของคุณ โปรดดู Google Maps Android API คู่มือเริ่มต้นใช้งาน
ภาพรวม
Intent ช่วยให้คุณเริ่มกิจกรรมในแอปอื่นได้โดยการอธิบายการดำเนินการง่ายๆ
ที่คุณต้องการดำเนินการ (เช่น "แสดงแผนที่" หรือ "แสดงเส้นทางไปยัง
สนามบิน") ใน
Intent
ออบเจ็กต์
แอป Google Maps สำหรับ Android
รองรับความตั้งใจที่หลากหลาย ซึ่งช่วยให้คุณเปิดตัวแอป Google Maps
และดำเนินการอย่างใดอย่างหนึ่งจาก 4 ข้อต่อไปนี้
- แสดงแผนที่ในตำแหน่งและระดับการซูมที่ระบุ
- ค้นหาสถานที่หรือสถานที่ แล้วแสดงบนแผนที่
- ขอเส้นทางจากสถานที่หนึ่งไปยังอีกสถานที่หนึ่ง สามารถส่งคืนเส้นทางได้ สำหรับการเดินทาง 3 รูปแบบ ได้แก่ การขับรถ การเดิน การขี่จักรยาน
- แสดงภาพพาโนรามาใน Google Street View
หน้านี้อธิบายความตั้งใจที่คุณสามารถใช้กับแอป Google Maps ได้ Android สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Intent และ Intent ตัวกรองหรือความตั้งใจทั่วไปใน Android โปรดดูเอกสารสำหรับนักพัฒนาซอฟต์แวร์ Android
คำขอ Intent
ในการเปิดใช้งาน Google Maps ด้วยความตั้งใจ คุณต้องสร้าง
Intent
ซึ่งระบุการทำงาน URI และแพ็กเกจ
- การดำเนินการ: Intent ทั้งหมดใน Google Maps จะเรียกว่าการดำเนินการ "ดู"
ACTION_VIEW
- URL: Intent ของ Google Maps ใช้การเข้ารหัส URL ซึ่งระบุ พร้อมทั้งข้อมูลบางอย่าง
- แพ็กเกจ: การโทรหา
setPackage("com.google.android.apps.maps")
จะ ตรวจสอบให้แน่ใจว่าแอป Google Maps สำหรับ Android จัดการ Intent ได้ หาก ไม่ได้ตั้งค่าไว้ ระบบจะกำหนดว่าแอปใดสามารถจัดการIntent
หากมีหลายแอป ระบบอาจถามผู้ใช้ว่าแอปใด ที่ต้องการใช้
หลังจากสร้าง Intent
คุณสามารถขอให้ระบบเรียกใช้
ได้หลายวิธี วิธีที่ใช้กันโดยทั่วไปคือการส่ง Intent
ไปยัง
startActivity()
ระบบจะเปิดแอปที่จำเป็น ซึ่งในกรณีนี้คือ Google
แผนที่ - และเริ่ม
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 เหล่านี้แก่ผู้ใช้
หากต้องการยืนยันว่าแอปพร้อมรับ Intent ให้โทร
resolveActivity()
บน
Intent
ออบเจ็กต์ หากผลลัพธ์ไม่เป็นค่าว่าง แสดงว่ามีแอปอย่างน้อย 1 แอปที่สามารถจัดการ
จริงๆ เท่านั้น
startActivity()
หากผลลัพธ์คือ null
คุณไม่ควรใช้ Intent และหากเป็นไปได้
ควรปิดใช้ฟีเจอร์ที่เรียกใช้ Intent
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) }
สตริงการค้นหาที่เข้ารหัส URL
สตริงทั้งหมดที่ส่งไปยัง Intent ของ Google Maps จะต้องเข้ารหัส URI ตัวอย่างเช่น
สตริง "1st & ไมค์ ซีแอตเทิล" ควรเปลี่ยนเป็น 1st%20%26%20Pike%2C%20Seattle
ช่องว่างในสตริงสามารถเข้ารหัสด้วย %20 หรือแทนที่ด้วยเครื่องหมายบวก (+)
คุณสามารถใช้เมธอด android.net.Uri
parse()
เพื่อเข้ารหัสสตริงได้
เช่น
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 will load 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 will load 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)
การค้นหาตำแหน่ง
ใช้ความตั้งใจนี้เพื่อแสดงคำค้นหาภายในวิวพอร์ตที่ระบุ เมื่อ มีผลลัพธ์เพียงรายการเดียว คุณสามารถใช้ Intent นี้เพื่อแสดงหมุดที่ สถานที่หรือที่อยู่เฉพาะ เช่น จุดสังเกต ธุรกิจ ลักษณะทางภูมิศาสตร์ หรือเมือง
geo:latitude,longitude?q=query geo:0,0?q=my+street+address geo:0,0?q=latitude,longitude(label)
พารามิเตอร์
นอกจากพารามิเตอร์ที่ใช้เพื่อแสดงแผนที่แล้ว Search ยังรองรับ พารามิเตอร์ต่อไปนี้
q
กำหนดสถานที่ที่จะไฮไลต์ในแผนที่ พารามิเตอร์q
คือ ที่จำเป็นสำหรับคำขอการค้นหาทั้งหมด ยอมรับสถานที่ตั้งเป็น ชื่อหรือที่อยู่ สตริงควรเข้ารหัส URL ดังนั้น ที่อยู่ เช่น "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
แต่ส่งที่อยู่เป็นคำค้นหา
สตริง เมื่อค้นหาสถานที่ที่เฉพาะเจาะจงมาก ระบบจะให้ละติจูดและลองจิจูด
ไม่จำเป็น แต่หากคุณไม่ทราบที่อยู่ที่แน่นอน คุณสามารถ
พยายามทำให้ผลการค้นหามีน้ำหนักพิเศษด้วยการระบุพิกัด สำหรับ
ตัวอย่างเช่น การค้นหาที่อยู่ด้วยคำว่า 'Main Street' จะแสดงผลมากเกินไป
รายการ
Java
// Searching for 'Main Street' will return too many results Uri gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street");
Kotlin
// Searching for 'Main Street' will return too many results val gmmIntentUri = Uri.parse("geo:0,0?q=101+main+street")
การเพิ่มละติจูด/ลองจิจูดลงใน URI ของ Intent จะทำให้ผลลัพธ์คลาดเคลื่อนไป พื้นที่:
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=Google+Sydney@-33.8666,151.1957"); 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)
แทนที่จะใช้ที่อยู่หรือละติจูด/ลองจิจูด คุณสามารถ แสดงหมุดที่ตำแหน่งที่รู้จักโดยใช้ plus code
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 examples above
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 examples above
กำลังเปิดการนำทางแบบเลี้ยวต่อเลี้ยว
ใช้ความตั้งใจนี้เพื่อเปิดการนำทางของ Google Maps ที่แสดงเส้นทางแบบเลี้ยวต่อเลี้ยว ไปยังที่อยู่หรือพิกัดที่ระบุ จะได้รับเส้นทางจาก ตำแหน่งปัจจุบันของผู้ใช้
google.navigation:q=a+street+address google.navigation:q=latitude,longitude
พารามิเตอร์
q
: กำหนดจุดหมายสำหรับการค้นหาการนำทาง ค่านี้สามารถเป็น พิกัดละติจูด ลองจิจูด หรือที่อยู่ที่มีการจัดรูปแบบการค้นหา หากเป็นคำค้นหา ที่แสดงผลลัพธ์มากกว่า 1 รายการ ผลลัพธ์แรกจะเป็น ที่เลือกไว้mode
จะกำหนดวิธีการเดินทาง โหมดเป็นตัวเลือก และสามารถตั้งค่าเป็น ข้อใดข้อหนึ่ง:d
สำหรับการขับรถ (ค่าเริ่มต้น)b
สำหรับจักรยานl
สำหรับมอเตอร์ไซค์w
สำหรับการเดิน
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
ใช้ Intent google.streetview
เพื่อเปิด Google Street View มุมมองถนนของ Google
ทำให้มีวิวแบบพาโนรามาจากสถานที่ที่กำหนดตลอด
พื้นที่ที่ครอบคลุม
Photosphere ที่ผู้ใช้ส่ง
และ
คอลเล็กชันพิเศษของ Street View
พร้อมให้บริการด้วย
google.streetview:cbll=latitude,longitude&cbp=0,bearing,0,zoom,tilt google.streetview:panoid=id&cbp=0,bearing,0,zoom,tilt
พารามิเตอร์
URI ของ google.streetview
ทั้งหมดต้องมี cbll
หรือ panoid
พารามิเตอร์
cbll
ยอมรับละติจูดและลองจิจูดเป็นค่าที่คั่นด้วยเครื่องหมายจุลภาค (46.414382,10.013988
). แอปจะแสดงภาพพาโนรามาตามที่ถ่ายไว้ ที่อยู่ใกล้ตำแหน่งนี้มากที่สุด เนื่องจากภาพ Street View แสดงเป็นระยะๆ ใหม่ และภาพอาจถ่ายจากตำแหน่งที่ต่างกันเล็กน้อย ทุกครั้ง เป็นไปได้ที่ตำแหน่งของคุณอาจสลับไปยัง พาโนรามาเมื่อมีการอัปเดตภาพpanoid
เป็นรหัสพาโนรามาที่เฉพาะเจาะจง Google Maps จะใช้รหัสพาโนรามาหาก มีการระบุทั้งpanoid
และcbll
รหัสพาโนรามาใช้ได้กับ แอป Android จากStreetViewPanoramaLocation
cbp
เป็นพารามิเตอร์ที่ไม่บังคับซึ่งจะปรับการวางแนวตั้งต้นของ กล้อง พารามิเตอร์cbp
จะใช้ค่าที่คั่นด้วยเครื่องหมายจุลภาค 5 ค่า ซึ่งทุกค่า จะระบุหรือไม่ก็ได้ ค่าที่สำคัญที่สุดคือรายการที่ 2, 4 และ 5 ซึ่งตั้งค่าทิศทาง การย่อ/ขยาย และเอียง ตามลำดับ รายการที่ 1 และ 3 ไม่ได้รองรับค่าดังกล่าว และควรตั้งค่าเป็น0
bearing
: ระบุทิศทางเข็มทิศของกล้องเป็นองศาตามเข็มนาฬิกา จากทิศเหนือ ทิศเหนือจริงคือ 0 ทิศตะวันออกเท่ากับ 90 ทิศใต้คือ 180 ทิศตะวันตกเท่ากับ 270 ค่า ที่ส่งไปยังทิศทางจะห่อหุ้ม ซึ่งก็คือ 0°, 360° และ 720° ทั้งหมด ชี้ไปในทิศทางเดียวกัน ตลับลูกปืนหมายถึงรูปที่ 2 จาก 5 ค่าที่คั่นด้วยเครื่องหมายจุลภาคzoom
: ตั้งค่าระดับการซูมของกล้อง ตั้งค่าระดับการซูมเริ่มต้นแล้ว ที่ 0 การซูม 1 จะเพิ่มการขยายเป็น 2 เท่า การซูมถูกบีบ ระหว่าง 0 ถึงระดับการซูมสูงสุดสำหรับพาโนรามาปัจจุบัน ซึ่งหมายความว่าค่าใดๆ ที่อยู่นอกช่วงนี้จะถูกตั้งค่าเป็น ที่ใกล้เคียงที่สุดที่อยู่ภายในช่วง เช่น ค่า -1 จะถูกตั้งค่าเป็น 0 Zoom เป็นค่าที่ 4 จาก 5 ค่าที่คั่นด้วยคอมมาtilt
: ระบุมุมขึ้นหรือลงของกล้อง ช่วงอยู่ที่ -90 จนถึง 0 ถึง 90 โดยมองลงตรง 90 องศา อยู่กึ่งกลางของขอบฟ้า และ -90 เมื่อมองตรง
ตัวอย่าง
ด้านล่างนี้เป็นตัวอย่างการใช้ Intent ของ 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 will angle 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 will angle 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)