أغراض خرائط Google لنظام التشغيل Android

تشير رسالة الأشكال البيانية تطبيق "خرائط Google" لنظام التشغيل Android يعرض العديد من الأهداف التي يمكنك استخدامها لعرض "خرائط Google" البحث أو التنقل أو التجوّل الافتراضي. إذا كنت ترغب في تضمين خريطة في التطبيق، يُرجى الرجوع إلى واجهة برمجة تطبيقات Android لخرائط Google دليل البدء.

نظرة عامة

تتيح لك الأهداف بدء نشاط في تطبيق آخر من خلال وصف إجراء بسيط. الذي ترغب في إجرائه (مثل "عرض خريطة" أو "عرض الاتجاهات إلى مطار") في Intent الخاص بك. تشير رسالة الأشكال البيانية تطبيق "خرائط Google" لنظام التشغيل Android نوايا مختلفة، مما يسمح لك بإطلاق تطبيق خرائط Google واتخذ أحد الإجراءات الأربعة:

  1. عرض خريطة لموقع محدد ومستوى تكبير/تصغير.
  2. البحث عن المواقع أو الأماكن، وعرضها على الخريطة.
  3. اطلب الاتجاهات من موقع إلى آخر. يمكن إرجاع الاتجاهات لثلاثة وسائل نقل: القيادة والمشي وركوب الدراجات.
  4. عرض الصور البانورامية في التجوّل الافتراضي من Google.

تصف هذه الصفحة الأهداف التي يمكنك استخدامها مع تطبيق خرائط Google من أجل Android مزيد من المعلومات حول الأهداف والغايات الفلاتر أو الأهداف الشائعة في Android النظام الأساسي، يمكنك الرجوع إلى مستندات مطوّري برامج Android.

طلبات الأهداف

من أجل إطلاق خرائط Google بهدف، يجب أولاً إنشاء Intent الخاص به، مع تحديد الإجراء ومعرّف الموارد المنتظم (URI) والحزمة.

  • الإجراء: يُطلق على جميع أغراض "خرائط Google" اسم إجراء عرض - ACTION_VIEW
  • معرّف الموارد المنتظم (URI): تستخدم عناصر أغراض "خرائط Google" عنوان URL مُرمّزًا الذي يحدد عنوان URL المطلوب الإجراء، إلى جانب بعض البيانات التي يتم استخدامها لتنفيذ الإجراء.
  • الطرد: سيؤدي الاتصال بـ setPackage("com.google.android.apps.maps") إلى التأكد من تعامل تطبيق خرائط Google لنظام التشغيل 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، يُرجى الاتصال resolveActivity() على Intent الخاص بك. وإذا كانت النتيجة غير خالية، فهناك تطبيق واحد على الأقل يمكنه معالجة النية ويمكن الاتصال startActivity() إذا كانت النتيجة null، يجب عدم استخدام 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

يجب ترميز جميع السلاسل التي يتم تمريرها إلى Intents من "خرائط Google" بترميز URI. على سبيل المثال: السلسلة "1st & بايك، سياتل" يجب أن يصبح 1st%20%26%20Pike%2C%20Seattle. يمكن ترميز المسافات في السلسلة بـ %20 أو استبدالها بعلامة الجمع (+).

يمكنك استخدام الطريقة parse() android.net.Uri لترميز سلاسلك. على سبيل المثال:

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)

البحث عن موقع جغرافي

يمكنك استخدام هذا الغرض لعرض طلبات البحث ضمن إطار عرض محدّد. عندما يحتوي طلب البحث على نتيجة واحدة، يمكنك استخدام هذا الغرض لعرض دبوس في مكان أو عنوان معين، مثل مَعلم أو نشاط تجاري أو موضع جغرافي، أو البلدة.

geo:latitude,longitude?q=query
geo:0,0?q=my+street+address
geo:0,0?q=latitude,longitude(label)

المعلّمات

بالإضافة إلى المعلمات المستخدمة لعرض الخريطة، يدعم البحث المَعلمات التالية:

  • تحدّد السمة q الأماكن المطلوب تمييزها على الخريطة. المعلمة q هي مطلوبة لجميع طلبات البحث. يقبل الموقع كمكان اسمك أو عنوانك. يجب أن تكون السلسلة بترميز عنوان URL، لذا فإن عنوان مثل "مجلس المدينة، دبي، الإمارات" يجب تحويله إلى City+Hall,New+York,NY.

  • يتيح لك label ضبط تصنيف مخصّص على مكان محدّد على الخريطة. تشير رسالة الأشكال البيانية يجب تحديد label كسلسلة.

إذا اجتزت عبارة بحث عامة، ستحاول "خرائط Google" العثور على موقع جغرافي. بالقرب من خط الطول/خط العرض الذي حددته والتي تطابق معاييرك. إذا لم يتم تحديد أي موقع محددة، ستحاول خرائط Google العثور على الأماكن القريبة. على سبيل المثال:

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' 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 المقصود إلى تحيز النتائج نحو مورد معين المنطقة:

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" مع الاتّجاهات المفصّلة إلى العنوان أو الإحداثي المحدد. يتم تقديم الاتجاهات دائمًا من الموقع الجغرافي الحالي للمستخدم.

google.navigation:q=a+street+address
google.navigation:q=latitude,longitude

المعلّمات

  • q: لضبط نقطة النهاية لعمليات البحث المتنقل. يمكن أن تكون هذه القيمة إحداثيات خطوط العرض أو خطوط الطول أو العرض أو عنوان بتنسيق طلب البحث. إذا كان عبارة عن استعلام سلسلة تُرجع أكثر من نتيجة، فإن النتيجة الأولى ستكون المحددة.

  • يحدّد 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)

عرض بانوراما التجوّل الافتراضي

استخدِم هدف google.streetview لإطلاق ميزة "التجوّل الافتراضي من Google". التجوّل الافتراضي من Google توفر إطلالات بانورامية من مواقع محددة في جميع أنحاء منطقة التغطية: الصور التي يساهم بها المستخدمون أو مجموعات "التجوّل الافتراضي" الخاصة تتوفر أيضًا.

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). سيعرض التطبيق الصورة البانورامية التي تم تصويرها الأقرب إلى هذا الموقع. وذلك لأن صور "التجوّل الافتراضي" يتم إجراؤها بشكل دوري تحديث، وقد يتم التقاط الصور من مواضع مختلفة قليلاً في كل مرة، يُحتمل أن ينتقل موقعك إلى موقع بانوراما عند تحديث الصور.

  • panoid هو معرّف بانورامي معين. ستستخدم خرائط Google معرف البانوراما في حالة تم تحديد كل من panoid وcbll. تتوفر معرّفات البانوراما تطبيق Android من StreetViewPanoramaLocation.

  • cbp هي مَعلمة اختيارية تضبط الاتجاه المبدئي والكاميرا. تستخدم المعلمة cbp 5 قيم مفصولة بفواصل، وجميعها اختيارية. القيم الأكثر أهمية هي القيم الثانية والرابعة والخامسة التي تضبط الاتجاه والتكبير/التصغير والإمالة على التوالي. الأول والثالث القيم غير متوافقة، ويجب ضبطها على 0.

    • bearing: يشير إلى اتجاه بوصلة الكاميرا بالدرجات في اتجاه عقارب الساعة من الشمال. الشمال الصحيح هو 0، والشرق 90، والجنوب 180، والغرب 270. القيم سيتم اختتامها إلى الموجِّه؛ والتي تبلغ 0°، و360°، و720° نقطة في نفس الاتجاه. يُعرَّف اتجاه العرض على أنه الثانية من خمسة القيم المفصولة بفواصل.
    • zoom: لضبط مستوى التكبير أو التصغير في الكاميرا تم ضبط مستوى التكبير أو التصغير التلقائي. على 0. سيؤدي التكبير / التصغير 1 إلى مضاعفة التكبير. تم تثبيت التكبير أو التصغير بين 0 وأقصى مستوى تكبير للبانوراما الحالية. وهذا يعني أن أي قيمة تقع خارج هذا النطاق سيتم تعيينها إلى أقرب تطرف يقع ضمن النطاق. على سبيل المثال، القيمة -1 سيتم تعيينها على 0. التكبير/التصغير هو الرابع من بين خمس قيم مفصولة بفواصل.
    • tilt: تحدّد زاوية الكاميرا، للأعلى أو للأسفل. النطاق هو -90 إلى 0 إلى 90، مع 90 منها متجهة للأسفل مباشرةً، و0 في الأفق، و -90 النظر إلى الأعلى مباشرةً.

أمثلة

في ما يلي بعض الأمثلة على استخدام نية التجوّل الافتراضي.

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)

الأهرامات في "التجوّل الافتراضي"