แอป Google Maps สำหรับ Android มีความตั้งใจหลายอย่างที่คุณสามารถใช้เพื่อเปิด Google Maps ในโหมดแสดงผล การค้นหา การนำทาง หรือ Street View หากคุณต้องการฝังแผนที่ในแอป โปรดดูคู่มือเริ่มต้นใช้งานของ Google Maps API สำหรับ Android
ภาพรวม
Intent ให้คุณเริ่มกิจกรรมในแอปอื่นโดยการอธิบายการดำเนินการง่ายๆ ที่คุณต้องการ (เช่น "แสดงแผนที่" หรือ "แสดงเส้นทางไปยังสนามบิน") ในออบเจ็กต์ Intent
แอป Google Maps สำหรับ Android
รองรับ Intent ต่างๆ หลายรายการ ซึ่งช่วยให้คุณเปิดแอป Google Maps และดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้ได้
- แสดงแผนที่ในตำแหน่งและระดับการซูมที่ระบุ
- ค้นหาสถานที่ แล้วแสดงบนแผนที่
- ขอเส้นทางจากสถานที่หนึ่งไปยังอีกสถานที่หนึ่ง คุณสามารถส่งคืนเส้นทางสำหรับทั้ง 3 รูปแบบการเดินทาง ได้แก่ การขับรถ การเดิน การปั่นจักรยาน
- แสดงภาพพาโนรามาใน Google Street View
หน้านี้จะอธิบายถึงจุดประสงค์ที่คุณสามารถใช้กับแอป Google Maps สำหรับ Android ดูข้อมูลเพิ่มเติมเกี่ยวกับตัวกรอง Intent และตัวกรอง Intent หรือIntent ทั่วไปที่ใช้สำหรับแพลตฟอร์ม Android ได้ในเอกสารประกอบสำหรับนักพัฒนาแอป Android
คำขอ Intent
ในการเปิด Google Maps ด้วยความตั้งใจ คุณต้องสร้างออบเจ็กต์ Intent
ก่อน โดยระบุการดำเนินการ, URI และแพ็กเกจ
- การดำเนินการ: Intent ทั้งหมดของ Google Maps จะเรียกว่า "ดู" —
ACTION_VIEW
- URI: Intent ของ Google Maps ใช้ URL ที่เข้ารหัสซึ่งระบุการดำเนินการที่ต้องการ พร้อมด้วยข้อมูลบางอย่างที่จะดำเนินการ
- แพ็กเกจ: การเรียก
setPackage("com.google.android.apps.maps")
จะดูแลให้แอป Google Maps สำหรับ Android จัดการ Intent ได้ หากไม่ได้ตั้งค่าแพ็กเกจไว้ ระบบจะกำหนดแอปที่สามารถจัดการ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 ไม่ได้ แอปของคุณอาจขัดข้อง ด้วยเหตุนี้ คุณจึงควรยืนยันว่ามีการติดตั้งแอปพลิเคชันฝั่งรับแล้วก่อนที่จะแสดง Intent เหล่านี้ให้กับผู้ใช้
หากต้องการยืนยันว่าแอปพร้อมให้รับ Intent แล้ว โปรดเรียกใช้ resolveActivity()
ในออบเจ็กต์ Intent
หากผลลัพธ์ไม่ใช่ค่า Null แสดงว่ามีอย่างน้อย 1 แอปที่สามารถจัดการ Intent ได้ และสามารถเรียกใช้ 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 & Pike, Seattle" ควรเปลี่ยนเป็น 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"))
กำลังแสดงแผนที่
ใช้ Intent 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 นี้เพื่อแสดงคำค้นหาภายในวิวพอร์ตที่ระบุ เมื่อคําค้นหามีผลรายการเดียว คุณสามารถใช้ 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" ควรแปลงเป็น City+Hall,New+York,NYlabel
ให้คุณกำหนดป้ายกำกับที่กำหนดเองในสถานที่ที่ระบุบนแผนที่ ต้องระบุ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)
หรือคุณอาจแสดงหมุดในตําแหน่งที่รู้จักโดยใช้เครื่องหมายบวกแทนที่อยู่หรือละติจูด/ลองจิจูดได้
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
กำหนดฟีเจอร์ที่เส้นทางควรหลีกเลี่ยง คุณจะหลีกเลี่ยงหรือไม่ก็ได้ และสามารถตั้งค่าเป็น 1 รายการต่อไปนี้ขึ้นไป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)
หากต้องการใช้มอเตอร์ไซค์ 2 ล้อ คุณขอเส้นทางที่มีถนนแคบและเส้นทางที่รถยนต์ไม่พร้อมใช้งานได้ 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 Street View แสดงมุมมองแบบพาโนรามาจากตำแหน่งที่กำหนดไว้ตลอดพื้นที่ที่ครอบคลุม
นอกจากนี้ยังมีภาพ 360 องศาที่ผู้ใช้ถ่ายและคอลเล็กชันพิเศษของ 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 ค่า ซึ่งทั้งหมดไม่บังคับ ค่าที่สำคัญที่สุดคือค่าที่สอง สี่ และห้า ซึ่งกำหนดทิศทาง การซูม และเอียงตามลำดับ ระบบไม่รองรับค่าแรกและที่ 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 มองลงแบบตรง 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 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)