Ý định của Google Maps dành cho Android

Chiến lược phát hành đĩa đơn Ứng dụng Google Maps dành cho Android đưa ra một vài ý định mà bạn có thể dùng để hiển thị Google Maps, tìm kiếm, điều hướng hoặc Chế độ xem phố. Nếu bạn muốn nhúng bản đồ vào ứng dụng của bạn, vui lòng tham khảo API Google Maps dành cho Android Hướng dẫn bắt đầu sử dụng.

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 bạn muốn thực hiện (chẳng hạn như "hiển thị bản đồ" hoặc "hiển thị chỉ đường đến sân bay") ở một Intent . Chiến lược phát hành đĩa đơn Ứng dụng Google Maps dành cho Android hỗ trợ nhiều ý định, cho phép bạn khởi chạy ứng dụng Google Maps và thực hiện một trong 4 hành động sau:

  1. Hiển thị bản đồ tại một vị trí và mức thu phóng được chỉ định.
  2. Tìm kiếm vị trí hoặc địa điểm và hiển thị chúng trên bản đồ.
  3. Yêu cầu chỉ đường từ vị trí này đến vị trí khác. Có thể trả lại đường đi cho ba chế độ giao thông: lái xe, đi bộ, đi xe đạp.
  4. Hiển thị hình ảnh toàn cảnh trong Chế độ xem đường phố của Google.

Trang này mô tả ý định mà bạn có thể sử dụng với ứng dụng Google Maps để Android. Để biết thêm thông tin về Ý định và ý định Bộ lọc hoặc Ý định phổ biến đối với Android , hãy tham khảo tài liệu dành cho nhà phát triển Android.

Yêu cầu ý định

Để khởi chạy Google Maps với ý định, trước tiên bạn phải tạo một Intent xác định hành động, URI và gói của đối tượng đó.

  • Hành động: Tất cả các ý định trên Google Maps được gọi là một Hành động xem — ACTION_VIEW.
  • URI: Google Maps có ý định sử dụng URL được mã hoá chỉ định cùng với một số dữ liệu để thực hiện hành động.
  • Gói: 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ý Intent. Nếu gói được thiết lập, 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 xem ứng dụng nào mà họ muốn sử dụng.

Sau khi tạo Intent, bạn có thể yêu cầu hệ thống chạy các đối tượng liên quan ứng dụng theo một số cách. Một phương thức phổ biến là truyền Intent đến startActivity() . Hệ thống sẽ khởi chạy ứng dụng cần thiết — trong trường hợp này 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 xác định được một ứng dụng có thể phản hồi ý định này, thì ứ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 một gói nhận ứng dụng được cài đặt trước khi bạn trình bày một trong các ý định này cho người dùng.

Để xác minh rằng một ứng dụng có thể nhận ý định, hãy gọi resolveActivity() trên Intent . Nếu kết quả không rỗng, có ít nhất một ứng dụng có thể xử lý ý định và có thể gọi một cách an toàn 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 sẽ 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ả các chuỗi được chuyển đến Ý định của Google Maps phải được mã hoá URI. Ví dụ: chuỗi "thứ nhất & Pike, Seattle" sẽ trở thành 1st%20%26%20Pike%2C%20Seattle. Các dấu cách trong chuỗi có thể được mã hoá bằng %20 hoặc đượ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á các chuỗi của mình. 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"))

Đang 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 đã chỉ định.

geo:latitude,longitude?z=zoom

Tham số

  • latitudelongitude đã đặt điểm giữa của bản đồ.
  • z tuỳ ý đặt mức thu phóng ban đầu của bản đồ. Phạm vi giá trị được chấp nhận từ 0 (toàn thế giới) đến 21 (các toà 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 vị trí

Sử dụng ý định này để hiển thị các 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ị ghim ở địa điểm hoặc địa chỉ cụ thể, chẳng hạn như địa danh, doanh nghiệp, đối tượng địa lý, 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 tham số được dùng để hiển thị bản đồ, Tìm kiếm hỗ trợ các thông số sau:

  • q xác định(các) địa điểm cần đánh dấu trên bản đồ. Tham số q là bắt buộc đối với mọi yêu cầu Tìm kiếm. Địa điểm này chấp nhận vị trí là một địa điểm tên hoặc địa chỉ của bạn. Chuỗi phải được mã hoá URL, nên một địa chỉ như "Hội trường Thành phố, New York, NY" phải được chuyển đổi thành Thành phố+Hội trường,New+New York,NY.

  • label cho phép bạn đặt nhãn tùy chỉnh tại một địa điểm được xác định trên bản đồ. Chiến lược phát hành đĩa đơn label phải được chỉ định dưới dạng Chuỗi.

Nếu bạn chuyển một cụm từ tìm kiếm chung chung, Google Maps sẽ cố gắng tìm một vị trí gần vĩ độ/kinh độ mà bạn đã chỉ định phù hợp với tiêu chí của mình. Nếu không có vị trí nào là đã chỉ định, Google Maps sẽ cố gắng tìm danh sách lân cậ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)

Tìm kiếm nhà hàng ở San Francisco

Bạn có thể xu hướng kết quả tìm kiếm hơn nữa bằng cách chỉ định tham số thu phóng dọc bằng chuỗi truy vấn. Trong ví dụ bên dưới, việc thêm mức thu phóng 10 sẽ thử để 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)

Khi bạn tìm một địa chỉ cụ thể, biểu tượng ghim tại vị trí đó sẽ xuất hiện.

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 vĩ độ/lng là 0,0, nhưng chuyển địa chỉ dưới dạng truy vấn . Khi tìm kiếm một vị trí rất cụ thể, vĩ độ và kinh độ là không bắt buộc. Tuy nhiên, nếu không biết chính xác địa chỉ, bạn có thể cố gắng làm lệch kết quả tìm kiếm bằng cách chỉ định một toạ độ. Để ví dụ: thực hiện tìm kiếm địa chỉ cho 'Phố chính' 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 vĩ độ/lng vào URI ý định sẽ làm lệch kết quả theo hướng vùng:

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 bạn biết tìm kiếm của mình sẽ trả về một giá trị duy nhất, bạn có thể chuyển một giá trị nhãn tuỳ chọn. Nhãn phải được chỉ định dưới dạng Chuỗi và sẽ xuất hiện trong phần điểm đánh dấu bản đồ. Lưu ý rằng nhãn chỉ có sẵn khi q được chỉ định làm một toạ độ vĩ độ/kinh độ.

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 thế cho địa chỉ đường phố hoặc vĩ độ/kinh độ, bạn có thể hiển thị 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

Khởi chạy điều hướng từng chặng

Sử dụng ý định này để khởi động tính năng chỉ đường trên Google Maps bằng thông tin đường đi từng chặng thành địa chỉ hoặc toạ độ được chỉ định. Chỉ đường 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 điều hướng. Giá trị này có thể là vĩ độ, kinh độ hoặc địa chỉ được định dạng truy vấn. Nếu đó là truy vấn chuỗi trả về nhiều kết quả, kết quả đầu tiên sẽ là đã chọn.

  • mode thiết lập phương thức di chuyển. Chế độ này là không bắt buộc và bạn có thể đặt thành một trong:

    • d để lái xe (mặc định)
    • b để đi xe đạp
    • l cho xe mô tô hai bánh
    • w để đi bộ
  • avoid thiết lập các tính năng mà tuyến đường nên cố gắng tránh. Tránh là trường hợp không bắt buộc và có thể được đặt thành một hoặc nhiều trong số:

    • t phí cầu đường
    • h cho đường cao tốc
    • f cho phà

Ví dụ

Intent bên dưới sẽ yêu cầu chỉ đường từng chặng đến Vườn thú Taronga, trong 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)

Chỉ đường đến Vườn thú Taronga

Nếu không muốn trả phí cầu đường hoặc đi phà, bạn có thể yêu cầu định tuyến 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 thích 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 mô tô hai bánh, bạn có thể yêu cầu chỉ đường bao gồm các đường hẹp và đường mòn không dành cho ô tô. intent dưới đây 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 để mở Chế độ xem đường phố của Google. Chế độ xem đường phố của Google có tầm nhìn toàn cảnh từ các vị trí được chỉ định trên khắp khu vực bao phủ. Ảnh toàn cảnh 360 độ do người dùng đóng góp, và Bộ sưu tập đặc biệt của Chế độ xem đường phố tại đây cũng có sẵn.

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 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 đã chụp gần vị trí này nhất. Bởi vì hình ảnh trong Chế độ xem đường phố được định kỳ được làm mới và ảnh có thể được chụp từ các vị trí hơi khác nhau mỗi lần vị trí của bạn có thể khác nhau ảnh toàn cảnh khi hình ảnh được cập nhật.

  • panoid là một 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 cả panoidcbll đều được chỉ định. Mã ảnh toàn cảnh có sẵn cho ứng dụng Android trên Đối tượng StreetViewPanoramaLocation.

  • cbp là một tham số không bắt buộc giúp điều chỉnh hướng ban đầu của máy ảnh. Tham số cbp nhận 5 giá trị được phân tách bằng dấu phẩy, tất cả đều có là không bắt buộc. Các giá trị quan trọng nhất là chỉ số thứ hai, thứ tư và thứ năm để thiết lập góc phương tiện, thu phóng và nghiêng tương ứng. Đầu tiên và thứ ba các giá trị không được hỗ trợ và bạn nên đặt thành 0.

    • bearing: cho biết hướng la bàn của máy ảnh theo độ theo chiều kim đồng hồ từ Bắc. Đúng phía bắc là 0, phía đông là 90, phía nam là 180, phía tây là 270. Giá trị được chuyển đến ổ trục sẽ bao bọc; tức là 0°, 360° và 720° tất cả điểm có cùng hướng. mang được định nghĩa là giới hạn thứ hai trong số năm giá trị được phân tách bằng dấu phẩy.
    • zoom: Thiết lập mức thu phóng của camera. Đã đặt mức thu phóng mặc định tại 0. Mức thu phóng 1 sẽ tăng độ phóng to gấp đôi. Mức thu phóng bị hạn chế từ 0 đến 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 cực trị gần nhất nằm trong phạm vi. Ví dụ: giá trị là -1 sẽ được đặt thành 0. Zoom là giá trị thứ tư trong năm giá trị được phân tách bằng dấu phẩy.
    • tilt: chỉ định các góc, hướng lên hoặc xuống của camera. Phạm vi là -90 từ 0 đến 90, số 90 nhìn thẳng xuống, số 0 ở giữa đường chân trời, và -90 nhìn thẳng.

Ví dụ

Dưới đây là một số ví dụ về cách sử dụng ý định trong 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)

Kim tự tháp trong Chế độ xem phố