Ứng dụng Google Maps dành cho Android hiển thị một số ý định mà bạn có thể sử dụng để khởi chạy Google Maps ở chế độ hiển thị, tìm kiếm, chỉ đường hoặc Chế độ xem đường phố. Nếu bạn muốn nhúng bản đồ vào ứng dụng, vui lòng tham khảo Hướng dẫn bắt đầu của API Android của Google Maps.
Tổng quan
Ý định cho phép bạn bắt đầu một hoạt động trong một ứng dụng khác bằng cách mô tả một thao tác đơn giản mà bạn muốn thực hiện (chẳng hạn như "hiển thị bản đồ" hoặc "hiển thị đường đi đến sân bay") trong đối tượng Intent
. Ứng dụng Google Maps dành cho Android hỗ trợ một số ý định khác nhau, cho phép bạn chạy ứng dụng Google Maps và thực hiện một trong 4 thao tác sau:
- Hiển thị bản đồ ở một vị trí và mức thu phóng cụ thể.
- Tìm kiếm vị trí hoặc địa điểm và hiển thị chúng trên bản đồ.
- Yêu cầu chỉ đường từ một vị trí đến một vị trí khác. Bạn có thể trả về thông tin chỉ đường cho 3 phương tiện: lái xe, đi bộ, đi xe đạp.
- Hiển thị hình ảnh toàn cảnh trong Google Street View.
Trang này mô tả các ý định mà bạn có thể sử dụng với ứng dụng Google Maps dành cho Android. Để biết thêm thông tin về Ý định và bộ lọc ý định hoặc Ý định phổ biến trên nền tảng Android, hãy tham khảo tài liệu dành cho nhà phát triển Android.
Yêu cầu về ý định
Để khởi chạy Google Maps bằng một ý định, trước tiên, bạn phải tạo một đối tượng Intent
, chỉ định hành động, URI và gói của đối tượng đó.
- Thao tác: Tất cả ý định của Google Maps đều được gọi là thao tác Xem –
ACTION_VIEW
. - URI: Ý định của Google Maps sử dụng URL được mã hoá để chỉ định một thao tác mong muốn, cùng với một số dữ liệu để thực hiện thao tác đó.
- Gói: Việc gọi
setPackage("com.google.android.apps.maps")
sẽ đảm bảo rằng ứng dụng Google Maps dành cho Android xử lý Ý định. Nếu bạn không đặt gói, hệ thống sẽ xác định ứng dụng nào có thể xử lýIntent
. Nếu có nhiều ứng dụng, người dùng có thể được hỏi ứng dụng nào họ muốn sử dụng.
Sau khi tạo Intent
, bạn có thể yêu cầu hệ thống chạy ứng dụng liên quan theo một số cách. Một phương pháp phổ biến là truyền Intent
vào phương thức startActivity()
. Hệ thống sẽ chạy ứng dụng cần thiết (trong trường hợp này là Google Maps) và bắt đầu Activity
tương ứng.
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)
Nếu hệ thống không thể xác định một ứng dụng có thể phản hồi ý định, ứng dụng của bạn có thể gặp sự cố. Vì lý do này, trước tiên, bạn nên xác minh rằng ứng dụng nhận đã được cài đặt trước khi hiển thị một trong những ý định này cho người dùng.
Để xác minh rằng ứng dụng có thể nhận được ý định, hãy gọi resolveActivity()
trên đối tượng Intent
. Nếu kết quả không rỗng, thì ít nhất một ứng dụng có thể xử lý ý định và bạn có thể an toàn gọi startActivity()
.
Nếu kết quả là null
, bạn không nên sử dụng ý định và nếu có thể, bạn nên tắt tính năng gọi ý định đó.
Java
if (mapIntent.resolveActivity(getPackageManager()) != null) { ... }
Kotlin
mapIntent.resolveActivity(packageManager)?.let { ... }
Ví dụ: để hiển thị bản đồ San Francisco, bạn có thể sử dụng mã sau:
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) }
Chuỗi truy vấn được mã hoá URL
Tất cả chuỗi được truyền đến Ý định của Google Maps phải được mã hoá URI. Ví dụ: chuỗi "1st & Pike, Seattle" sẽ trở thành 1st%20%26%20Pike%2C%20Seattle
.
Bạn có thể mã hoá dấu cách trong chuỗi bằng %20 hoặc thay thế bằng dấu cộng (+).
Bạn có thể sử dụng phương thức android.net.Uri
parse()
để mã hoá chuỗi.
Ví dụ:
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"))
Hiển thị bản đồ
Sử dụng ý định geo:
để hiển thị bản đồ ở một vị trí và mức thu phóng cụ thể.
geo:latitude,longitude?z=zoom
Tham số
latitude
vàlongitude
đặt điểm trung tâm của bản đồ.z
có thể đặt mức thu phóng ban đầu của bản đồ. Phạm vi giá trị được chấp nhận dao động từ 0 (toàn thế giới) đến 21 (các tòa nhà riêng lẻ). Giới hạn trên có thể thay đổi tuỳ thuộc vào dữ liệu bản đồ có sẵn tại vị trí đã chọn.
Ví dụ
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)
Tìm kiếm một vị trí
Sử dụng ý định này để hiển thị cụm từ tìm kiếm trong một khung nhìn đã chỉ định. Khi truy vấn có một kết quả duy nhất, bạn có thể sử dụng ý định này để hiển thị một ghim tại một địa điểm hoặc địa chỉ cụ thể, chẳng hạn như một địa danh, doanh nghiệp, địa hình hoặc thị trấn.
geo:latitude,longitude?q=query geo:0,0?q=my+street+address geo:0,0?q=latitude,longitude(label)
Tham số
Ngoài các thông số dùng để hiển thị bản đồ, Tìm kiếm còn hỗ trợ các thông số sau:
q
xác định(các) địa điểm cần làm nổi bật trên bản đồ. Tham sốq
là bắt buộc đối với tất cả các yêu cầu Tìm kiếm. Trường này chấp nhận vị trí dưới dạng tên hoặc địa chỉ của địa điểm. Chuỗi phải được mã hoá URL, vì vậy, địa chỉ như "City Hall, New York, NY" phải được chuyển đổi thành City+Hall,New+York,NY.label
cho phép bạn đặt nhãn tuỳ chỉnh tại một địa điểm được xác định trên bản đồ. Bạn phải chỉ địnhlabel
dưới dạng Chuỗi.
Tìm kiếm theo danh mục
Nếu bạn truyền một cụm từ tìm kiếm chung, Google Maps sẽ cố gắng tìm một vị trí gần với vĩ độ/kinh độ mà bạn chỉ định và khớp với tiêu chí của bạn. Nếu bạn không chỉ định vị trí, Google Maps sẽ cố gắng tìm các trang thông tin ở gần. Ví dụ:
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)
Bạn có thể làm sai lệch kết quả tìm kiếm hơn nữa bằng cách chỉ định tham số thu phóng cùng với chuỗi truy vấn. Trong ví dụ bên dưới, việc tăng mức thu phóng lên 10 sẽ cố gắng tìm nhà hàng ở cấp thành phố thay vì gần đó.
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)
Tìm kiếm vị trí
Khi bạn tìm kiếm một địa chỉ cụ thể, một ghim sẽ xuất hiện tại vị trí đó.
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)
Ví dụ trên đặt lat/lng là 0
,0
, nhưng truyền địa chỉ dưới dạng chuỗi truy vấn. Khi tìm kiếm một vị trí rất cụ thể, bạn không bắt buộc phải cung cấp vĩ độ và kinh độ. Tuy nhiên, nếu không biết địa chỉ chính xác, bạn có thể cố gắng làm sai lệch kết quả tìm kiếm bằng cách chỉ định toạ độ. Ví dụ: việc tìm kiếm địa chỉ "Main Street" sẽ trả về quá nhiều kết quả.
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")
Việc thêm lat/lng vào URI ý định sẽ làm sai lệch kết quả theo một khu vực cụ thể:
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)
Khi biết rằng nội dung tìm kiếm sẽ trả về một giá trị duy nhất, bạn nên truyền một nhãn không bắt buộc. Bạn phải chỉ định nhãn dưới dạng Chuỗi và nhãn sẽ xuất hiện bên dưới điểm đánh dấu trên bản đồ. Xin lưu ý rằng nhãn chỉ có sẵn khi q
được chỉ định là toạ độ lat/lng.
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)
Thay vì địa chỉ đường phố hoặc vĩ độ/kinh độ, bạn có thể hiển thị một ghim tại một vị trí đã biết bằng cách sử dụng mã cộng.
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
Chạy tính năng chỉ đường từng chặng
Sử dụng ý định này để khởi chạy tính năng chỉ đường của Google Maps bằng thông tin chỉ đường từng chặng đến địa chỉ hoặc toạ độ được chỉ định. Thông tin đường đi luôn được cung cấp từ vị trí hiện tại của người dùng.
google.navigation:q=a+street+address google.navigation:q=latitude,longitude
Tham số
q
: Đặt điểm cuối cho các lượt tìm kiếm đường đi. Giá trị này có thể là toạ độ vĩ độ, kinh độ hoặc địa chỉ được định dạng truy vấn. Nếu đó là một chuỗi truy vấn trả về nhiều kết quả, thì kết quả đầu tiên sẽ được chọn.mode
đặt phương thức vận chuyển. Chế độ là không bắt buộc và có thể được đặt thành một trong các chế độ sau:d
để lái xe (mặc định)b
để đi xe đạpl
cho xe mô tô hai bánhw
để đi bộ
avoid
đặt các tính năng mà tuyến đường nên tránh. Bạn không bắt buộc phải sử dụng tính năng Tránh và có thể đặt thành một hoặc nhiều trong số các giá trị sau:t
cho phí cầu đườngh
cho đường cao tốcf
cho phà
Ví dụ
Intent
dưới đây sẽ yêu cầu chỉ đường từng chặng đến Vườn thú Taronga ở Sydney, Úc:
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)
Nếu không muốn trả phí cầu đường hoặc đi phà, bạn có thể yêu cầu tuyến đường cố gắng tránh những điều đó.
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)
Nếu muốn tập thể dục một chút, bạn có thể yêu cầu chỉ đường đi xe đạp.
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)
Nếu muốn đi bằng xe hai bánh chạy bằng động cơ, bạn có thể yêu cầu chỉ dẫn bao gồm cả những con đường hẹp và đường mòn không dành cho ô tô. intent
bên dưới trả về một tuyến đường ở Ấn Độ.
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)
Hiển thị ảnh toàn cảnh trong Chế độ xem đường phố
Sử dụng ý định google.streetview
để chạy Chế độ xem đường phố của Google. Chế độ xem đường phố của Google cung cấp hình ảnh toàn cảnh từ các vị trí được chỉ định trong khu vực có dữ liệu.
Bạn cũng có thể xem Ảnh toàn cảnh do người dùng đóng góp và các bộ sưu tập đặc biệt của Chế độ xem đường phố.
google.streetview:cbll=latitude,longitude&cbp=0,bearing,0,zoom,tilt google.streetview:panoid=id&cbp=0,bearing,0,zoom,tilt
Tham số
Tất cả URI google.streetview
phải bao gồm tham số cbll
hoặc panoid
.
cbll
chấp nhận vĩ độ và kinh độ dưới dạng các giá trị được phân tách bằng dấu phẩy (46.414382,10.013988
). Ứng dụng sẽ hiển thị ảnh toàn cảnh được chụp gần nhất với vị trí này. Vì hình ảnh Chế độ xem đường phố được làm mới định kỳ và mỗi lần chụp ảnh có thể ở vị trí hơi khác nhau, nên vị trí của bạn có thể chuyển sang một ảnh toàn cảnh khác khi hình ảnh được cập nhật.panoid
là mã nhận dạng ảnh toàn cảnh cụ thể. Google Maps sẽ sử dụng mã nhận dạng ảnh toàn cảnh nếu bạn chỉ định cảpanoid
vàcbll
. Mã nhận dạng ảnh toàn cảnh có sẵn cho ứng dụng Android từ đối tượngStreetViewPanoramaLocation
.cbp
là tham số không bắt buộc giúp điều chỉnh hướng ban đầu của camera. Tham sốcbp
nhận 5 giá trị được phân tách bằng dấu phẩy, tất cả đều không bắt buộc. Các giá trị quan trọng nhất là giá trị thứ hai, thứ tư và thứ năm, lần lượt đặt hướng, thu phóng và độ nghiêng. Các giá trị đầu tiên và thứ ba không được hỗ trợ và phải được đặt thành0
.bearing
: cho biết hướng la bàn của máy ảnh theo độ theo chiều kim đồng hồ từ hướng Bắc. Hướng bắc thực là 0, hướng đông là 90, hướng nam là 180, hướng tây là 270. Các giá trị được truyền đến góc phương vị sẽ được gói; tức là 0°, 360° và 720° đều trỏ theo cùng một hướng. Độ lệch được xác định là giá trị thứ hai trong số 5 giá trị được phân tách bằng dấu phẩy.zoom
: Đặt mức thu phóng của máy ảnh. Mức thu phóng mặc định được đặt ở 0. Độ phóng to 1 sẽ tăng gấp đôi độ phóng đại. Độ thu phóng được cố định giữa 0 và mức thu phóng tối đa cho ảnh toàn cảnh hiện tại. Điều này có nghĩa là mọi giá trị nằm ngoài phạm vi này sẽ được đặt thành giá trị cực trị gần nhất nằm trong phạm vi. Ví dụ: giá trị -1 sẽ được đặt thành 0. Tỷ lệ thu phóng là giá trị thứ tư trong số 5 giá trị được phân tách bằng dấu phẩy.tilt
: chỉ định góc, lên hoặc xuống, của máy ảnh. Phạm vi là -90 qua 0 đến 90, với 90 nhìn thẳng xuống, 0 nằm ở giữa đường chân trời và -90 nhìn thẳng lên.
Ví dụ
Dưới đây là một số ví dụ về cách sử dụng ý định Chế độ xem đường phố.
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)