إخلاء المسؤولية
سيتم تغيير هذا المنتج/هذه الميزة، وهو لا يخضع لأي اتفاقية مستوى الخدمة أو سياسة إيقاف نهائي. يخضع التنفيذ للتغيير في الإصدارات المستقبلية.
في ما يتعلّق بنماذج البرامج و/أو ملفات البيانات و/أو الرموز المصدرية المصاحبة لهذا المستند: يتم تقديم هذا المنتج "كما هو" وبدون ضمان من أي نوع، وتخلّي Google صراحةً مسؤوليتها عن أي ضمانات، سواء كانت صريحة أو ضمنية أو قانونية أو غير ذلك، بما في ذلك على سبيل المثال لا الحصر، ضمانات المطابقة للوصف والصلاحية لغرض معيّن وعدم الانتهاك لأي حقوق ذات صلة بهذا المنتج.
من خلال نوايا Android Automotive، يمكنك تشغيل التنقّل في "خرائط Google".
لمزيد من المعلومات، يُرجى الاطّلاع على Intents في "خرائط Google" لأجهزة Android.
لمزيد من المعلومات حول توفير تطبيقك للمركبات التي تعمل بنظام التشغيل Android Auto أو Android Automotive، يُرجى الاطّلاع على مقالة Android للسيارات.
نظرة عامة
توضّح هذه الصفحة الأهداف التي يمكنك استخدامها مع "خرائط Google" لنظام التشغيل Android Automotive. للحصول على مستندات مطوّري تطبيقات Android المفصّلة، يُرجى الاطّلاع على:
طلبات الأهداف
لتشغيل "خرائط Google" لنظام التشغيل Android Automotive باستخدام نية، عليك أولاً إنشاء عنصر Intent، مع تحديد الإجراء وعنوان URL والحزمة.
الإجراء: يتمّ استدعاء جميع نوايا "خرائط Google" كإجراء عرض،
ACTION_VIEW
.معرّف الموارد المنتظم (URI) تستخدِم نوايا "خرائط Google" سلاسل مُرمّزة لمعرّفات الموارد المنتظمة (URI) التي تحدّد الإجراء المطلوب، بالإضافة إلى بعض البيانات التي يتم تنفيذ الإجراء بها.
الحزمة: يضمن استدعاء
setPackage("com.google.android.apps.maps")
أن يعالج تطبيق "خرائط Google" لنظام التشغيل Android طلب البيانات. إذا لم يتم تحديد الحزمة، يحدِّد النظام التطبيقات التي يمكنها معالجة الطلب. إذا كانت هناك عدة تطبيقات متاحة، قد يُطلب منك اختيار التطبيق الذي تريد استخدامه.
بعد إنشاء النية، يمكنك طلب تشغيل
التطبيق ذي الصلة من خلال النظام بعدة طرق. ومن الطرق الشائعة تمرير Intent إلى الطريقة
startActivity()
. سيشغّل النظام التطبيق اللازم، وهو في
هذه الحالة "خرائط Google"، وسيبدأ النشاط المقابل.
// Create a Uri from an intent string. Use the result to create an Intent.
Uri mapIntentUri =
Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia");
// Create an Intent from mapIntentUri. Set the action to ACTION_VIEW
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
// 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()
. إذا كانت النتيجة فارغة، يجب عدم استخدام النية
وتعطيل الميزة التي تستدعي النية إن أمكن.
if (mapIntent.resolveActivity(getPackageManager()) != null) {
...
}
على سبيل المثال، لبدء التنقّل باتجاهات تفصيلية إلى حديقة حيوان تارونجا في سيدني، يمكنك استخدام الرمز البرمجي التالي:
Uri mapIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
if (mapIntent.resolveActivity(getPackageManager()) != null) {
startActivity(mapIntent);
}
سلاسل طلبات البحث المشفَّرة باستخدام معرّف الموارد المنتظم (URI)
يجب أن تكون جميع السلاسل التي يتم تمريرها إلى "النوايا" في "خرائط Google" مُشفَّرة باستخدام معرّف الموارد المتّصل (URI). على سبيل المثال،
يجب أن تصبح السلسلة "1st & Pike, Seattle" 1st%20%26%20Pike%2C%20Seattle
.
يمكن ترميز المسافات في السلسلة باستخدام %20
أو استبدالها بعلامة الجمع
(+).
يمكنك استخدام الطريقة android.net.Uri parse()
لتشفير سلاسل النصوص. على سبيل المثال:
Uri mapIntentUri = Uri.parse("google.navigation:q=" + Uri.encode("1st & Pike, Seattle"));
بدء التنقّل باتّجاهات مفصّلة
استخدِم هذا الإجراء لبدء التنقّل في "خرائط Google" باستخدام الاتجاهات المفصّلة للوصول إلى عنوان أو إحداثيات واحدة أو عدة عناوين أو إحداثيات محدّدة. يتم دائمًا تقديم الاتجاهات من الموقع الجغرافي الحالي للمستخدم.
google.navigation:q=a+street+address
google.navigation:q=latitude,longitude
google.navigation:place=placename
المعلمات
لبدء التنقّل، استخدِم place
أو q
مع waypoints
، وهو اختياري. لتحديد نقطة مسار كنقطة شحن كهربائي، يمكنك إرسال خطة رحلة لمركبة كهربائية
إلى "خرائط Google".
q
لضبط نقطة نهاية عمليات البحث في التنقّل يمكن أن يكون ذلك خط عرض/خط طول أو عنوان منسَّق لطلب بحث. إذا كانت سلسلة طلب بحث تؤدي إلى عرض أكثر من نتيجة واحدة، سيتم اختيار النتيجة الأولى.place
تضبط نقطة النهاية على المنزل أو العمل. حدِّد المنزل للانتقال إلى منزل المستخدم، وحدِّد العمل للانتقال إلى مكان عمل المستخدم.تُستخدَم
avoid
لتحديد العناصر التي يجب أن يحاول المسار تجنُّبها. العمودavoid
اختياري ويمكن ضبطه على واحد أو أكثر مما يلي:-
t
لرسوم العبور h
للطرق السريعة-
f
للعبّارات
-
يحدّد
waypoints
مكانًا وسيطًا واحدًا أو أكثر لتوجيه الاتجاهات إلى الوجهة النهائية التي حدّدهاq
. يمكنك تحديد نقاط طريق متعددة باستخدام حرف التوجيه (|
) لفصل الأماكن، على سبيل المثال،Berlin,Germany|Paris,France
. يمكنك استخدام أي عدد تريده من نقاط الالتفاف. ستتم إضافة نقاط الالتفاف إلى المسار بالترتيب نفسه المدرَج فيه في عنوان URL. يمكن أن يكون كلّ نقطة طريق عنوانًا أو إحداثيات خطوط عرض/طول مفصولة بفواصل، ويمكنك استخدام عناوين وإحداثيات خطوط عرض/طول في الطلب نفسه. يجب أن تكون السلاسل مُشفَّرة لعناوين URL، لذا يجب تحويل نقاط التوقف مثل "القاهرة،مصر|الإسكندرية،مصر" إلىBerlin%2CGermany%7CParis%2CFrance
.
أمثلة
سيطلب هذا الطلب التنقّل من خلال اتّباع خطوات تفصيلية إلى حديقة حيوانات تارونغا في سيدني، أستراليا:
Uri mapIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
إذا كنت تفضّل عدم دفع رسوم الطرق أو ركوب عبارة، يمكنك طلب مسار يحاول تجنُّب الحالات التالية:
Uri mapIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&avoid=tf");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
إذا كنت تفضّل الانتقال إلى منزلك، يمكنك استخدام:
Uri mapIntentUri = Uri.parse("google.navigation:place=home");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
لبدء التنقّل بالاتّجاهات التفصيلية إلى العناوين الثلاثة التالية بالترتيب،
اضبط حديقة حيوانات تارونغا كوجهة نهائية q
، و"Google Sydney" و"دار أوبرا سيدني" كنقاط الطريق:
Google Sydney
دار أوبرا سيدني
حديقة حيوان تارونجا، سيدني، أستراليا
Uri mapIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&waypoints=Google+Sydney%7CSydney+Opera+House");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
على غرار q
، يمكنك تمثيل أي من نقاط التوقف باستخدام خط العرض وخط الطول مفصولَين بفواصل بدلاً من عنوان. على سبيل المثال، لبدء التنقّل
نفسه مع إدخال خط العرض وخط الطول لدار الأوبرا في سيدني بدلاً من
العنوان:
Uri mapIntentUri = Uri.parse("google.navigation:q=Taronga+Zoo,+Sydney+Australia&waypoints=Google+Sydney%7C-33.856159,151.215256");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
إرسال خطة رحلة لمركبة كهربائية إلى "خرائط Google"
استخدِم نية التنقّل هذه التي تتضمّن وجهات متعدّدة لتحديد بعض الوجهات على أنّها محطات شحن المركبات الكهربائية. يساعد هذا الطلب، الذي يوسع نطاق طلب نقاط التوقف المتعددة، السائقين في الحفاظ على شحن كافٍ لبطارية المركبات الكهربائية للوصول إلى وجهاتهم من خلال مزامنة معلومات محطات الشحن بين تطبيقات تخطيط الرحلات بالمركبات الكهربائية و"خرائط Google".
بالنسبة إلى محطات الشحن، تشمل أهداف الرحلة ما يلي:
- يجب أن يحتوي على الاسم وخطوط الطول والعرض
- قد يحتوي اختياريًا على طاقة الإخراج، لاستخدامها في احتساب وقت الشحن
تستخدِم Google اسم محطة الشحن وخطوط الطول والعرض للعثور على مكان محطة شحن مطابق لعرض بيانات غنية، مثل أنواع موصلات الشحن والإجماليات والسرعات ومدى التوفّر في الوقت الفعلي وطرق الدفع المتوافقة ونقاط الاهتمام المُضيفة
(POI). على سبيل المثال، اتجاهات القيادة داخل مواقف السيارات الخارجية للجزء
الأخير من التنقّل، وساعات العمل، والتقييمات لضمان تطابق محطات الشحن
بشكل جيد مع بيانات Google، استخدِم <brand name>
، على سبيل المثال ChargePoint
.
المعلمات
الوجهة النهائية
لضبط محطة شحن كوجهة نهائية، استخدِم:
q
: يجب أن يحتوي على قيمة خط الطول والعرض لمحطة الشحن.q_type
: يحدّد1
أنّ الوجهة النهائية هي محطة شحن.q_name
: اسم الوجهة النهائية مطلوبة إذا كانت قيمةq_type
هي1
.q_power_output_kw
: رقم مزدوج لإخراج طاقة محطة الشحن بالواط اختياريّ.
نقاط الطريق
بالنسبة إلى نقاط التوقف، تكون جميع المَعلمات متوازية، وهي مصفوفات مفصولة بشرطة مائلة |- من قيم بالترتيب نفسه لنقاط التوقف، باستثناء الوجهة النهائية. يتم التعامل مع عدم التطابق في عدد العناصر في الصفيفات الموازية على أنّه نية ذات تنسيق غير صحيح.
لإضافة نقطة طريق واحدة أو أكثر لمحطّات شحن، استخدِم المَعلمات التالية، وجميعها اختيارية. إذا تم وضع علامة على إحدى الوجهات على أنّها محطة شحن، يصبح اسم نقطة الطريق إلزاميًا لتلك الوجهة.
waypoints
: قائمة بالنقاط المحورية كما هو موضّح في نية التنقّل بالتفصيل يجب أن تكون قيمة خط الطول والعرض لنقاط الطريق في محطات الشحن.waypoint_types
: الأنواع لكل نقطة طريق محدّدة كعدد0
هي أي محطة (القيمة التلقائية) و1
هي محطة الشحن.waypoint_names
: أسماء نقاط الطريق هذا الحقل إلزامي لمحطات الصعق الكهربي.waypoint_power_outputs_kw
: أرقام مضاعفة لقوة محطة الشحن بالواط بالنسبة إلى محطات الشحن، يمكنك اختياريًا تحديد قيمة ناتج طاقة عند نقطة الطريق، والتي تُستخدَم كخيار احتياطي في حال عدم العثور على المحطة المطابقة. تعني الفتحة الفارغة عدم تقديم أي قيمة.
سلوك تجربة المستخدم (UX)
بالنسبة إلى نوايا الرحلة التي تتضمّن وجهات متعددة، يتم عرض شاشة النظرة العامة على المسار، ولكن لا يبدأ التنقّل تلقائيًا.
إذا كانت النية منسقة بشكل صحيح، ستعرض "خرائط Google" شاشة عامة عن المسار للرحلة. ستعرض شاشة النظرة العامة على المسار جميع نقاط الالتفاف والوجهة النهائية من الطلب، مع اقتراحات بشأن محطات الشحن عند الضرورة.
بالنسبة إلى أي نقاط طريق أو وجهة نهائية تم وضع علامة عليها كنقطة شحن، ستبدأ "خرائط Google" في البحث عن مكان مطابق في قاعدة بيانات Google.
عند العثور على تطابق، تستخدم "خرائط Google" بيانات Google لعرض محطة التحليق في واجهة المستخدم وتقديم اقتراح بشأن محطة التحليق. في حال عدم العثور على مطابقة، سيتم استخدام البيانات المقدَّمة في الطلب المتعلّق بأحد محطات الشحن (خطوط الطول والعرض والاسم وقدرة الإخراج) لعرض محطة الشحن هذه في واجهة المستخدم وتقديم اقتراح للشحن في محطة الشحن هذه.
أمثلة
الانتقال إلى وجهة نهائية من خلال محطات شحن متعددة
ينقل الإجراء التالي إلى الوجهة النهائية، وهي Port Macquarie NSW، من خلال محطتَي شحن، وهما ChargePoint وEvie.
الوجهات بالترتيب:
محطة شحن ChargePoint (الموقع الجغرافي: -32.9599188,151.6240806، قدرة الإخراج: 6.6kw)
محطة شحن Evie (الموقع الجغرافي: -31.9432539,152.4699808، قدرة الخرج: 350kw)
بورت ماكواري، نيو ساوث ويلز
Uri mapIntentUri =
Uri.parse(
"google.navigation:q=Port+Macquarie+NSW"
+ "&waypoints=-32.9599188%2C151.6240806%7C-31.9432539%2C152.4699808"
+ "&waypoint_types=1%7C1"
+ "&waypoint_names=ChargePoint+Charging+Station%7CEvie+Charging+Station"
+ "&waypoint_power_outputs_kw=6.6%7C350");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
ناتج طاقة غير معروف
إذا كانت قيمة خرج الطاقة غير معروفة، اترك خانة
waypoint_power_outputs_kw
ذات الصلة فارغة. أو إذا كانت جميع الفتحات فارغة، ليس عليك
تحديد المَعلمة waypoint_power_outputs_kw
.
الوجهات بالترتيب:
محطة شحن ChargePoint (الموقع الجغرافي: -32.9599188,151.6240806، ناتج الطاقة: غير معروف)
بورت ماكواري، نيو ساوث ويلز
Uri mapIntentUri =
Uri.parse(
"google.navigation:q=Port+Macquarie+NSW"
+ "&waypoints=-32.9599188%2C151.6240806"
+ "&waypoint_types=1"
+ "&waypoint_names=ChargePoint+Charging+Station");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
وضع علامة على الوجهة النهائية باعتبارها محطة شحن
لوضع علامة على الوجهة النهائية بأنّها محطة شحن، حدِّد المَعلمات q_type
وq_name
وq_power_output_kw
.
الوجهات بالترتيب:
حديقة حيوان تارونجا، سيدني، أستراليا
محطة شحن ChargePoint (الموقع الجغرافي: -32.9599188,151.6240806، ناتج الطاقة: غير معروف)
محطة شحن Evie (الموقع الجغرافي: -31.9432539,152.4699808، ناتج الطاقة: 350 كيلوواط)
Uri mapIntentUri =
Uri.parse(
"google.navigation:q=-31.9432539,152.4699808&q_type=1&q_name=Evie+Charging+Station&q_power_output_kw=350"
+ "&waypoints=Taronga+Zoo%2C+Sydney+Australia%7C-32.9599188%2C151.6240806"
+ "&waypoint_types=0%7C1"
+ "&waypoint_names=%7CChargePoint+Charging+Station"
+ "&waypoint_power_outputs_kw=%7C");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, mapIntentUri);
mapIntent.setPackage("com.google.android.apps.maps");
startActivity(mapIntent);
نوايا الإجراء
تتوفّر نوايا الإجراءات التالية مع الواجهات:
الإجراء | الوصف |
---|---|
geo.action:?act=mute |
يؤدي هذا الإجراء إلى كتم صوت جميع الإرشادات الصوتية للتنقّل. |
geo.action:?act=unmute |
إعادة صوت الإرشاد الصوتي للتنقّل |
geo.action:?act=show_traffic |
تعرِض هذه الميزة خطوط حركة المرور على الخريطة. |
geo.action:?act=hide_traffic |
إخفاء خطوط حركة المرور على الخريطة |
geo.action:?act=show_satellite |
تعرِض هذه الطبقة صور الأقمار الصناعية على الخريطة. |
geo.action:?act=hide_satellite |
إخفاء صور القمر الصناعي على الخريطة |
geo.action:?act=query_next_turn |
تذكر "خرائط Google" المنعطف التالي (لا تعمل هذه الميزة إلا أثناء التنقّل). |
geo.action:?act=distance_to_next_turn |
تذكر "خرائط Google" المسافة إلى المنعطف التالي (لا تعمل هذه الميزة إلا أثناء التنقل). |
geo.action:?act=time_to_next_turn |
تذكر "خرائط Google" الوقت المتبقّي للانعطاف التالي (لا تعمل هذه الميزة إلا أثناء التنقّل). |
geo.action:?act=distance_to_destination |
تذكر "خرائط Google" المسافة إلى الوجهة (لا تعمل هذه الميزة إلا أثناء التنقّل). |
geo.action:?act=go_back |
تعود "خرائط Google" إلى الشاشة السابقة في واجهة المستخدم. |
geo.action:?act=query_current_road |
تُعرِض "خرائط Google" الطريق الحالية. |
geo.action:?act=query_destination |
تذكر "خرائط Google" الوجهة. |
geo.action:?act=apply_electric_vehicle_connector_filter |
يُطبِّق فلتر نوع الموصِّل على نتائج البحث عن محطات شحن المركبات الكهربائية. |
geo.action:?act=remove_electric_vehicle_connector_filter |
إزالة فلتر نوع الموصِّل لنتائج البحث عن محطات شحن المركبات الكهربائية |
geo.action:?act=apply_electric_vehicle_payment_filter |
يُطبّق فلتر الدفع على نتائج البحث عن محطات شحن المركبات الكهربائية. |
geo.action:?act=remove_electric_vehicle_payment_filter |
إزالة فلتر الدفع لنتائج البحث عن محطات شحن المركبات الكهربائية |
geo.action:?act=apply_electric_vehicle_fast_charging_filter |
يُطبّق فلتر الشحن السريع على نتائج البحث عن محطات شحن المركبات الكهربائية |
geo.action:?act=remove_electric_vehicle_fast_charging_filter |
إزالة فلتر الشحن السريع من نتائج البحث عن محطات شحن المركبات الكهربائية |
geo.action:?act=avoid_tolls |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" تجنُّب الطرق التي تفرض رسومًا. وقد يؤدي ذلك إلى إعادة التوجيه إذا كان المسار الحالي يتضمّن رسوم عبور. |
geo.action:?act=allow_tolls |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" السماح بالطرق التي تفرض رسومًا. وقد يؤدي ذلك إلى إعادة التوجيه إذا كان السماح برسوم الطرق يؤدي إلى توفّر مسار أفضل. |
geo.action:?act=avoid_ferries |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" تجنُّب الطرق التي تضم العبّارات. قد يؤدي ذلك إلى إعادة التوجيه إذا كان المسار النشط الحالي يحتوي على عبارات. |
geo.action:?act=allow_ferries |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" السماح بالمسارات التي تتضمّن العبّارات. وقد يؤدي ذلك إلى إعادة التوجيه إذا كان السماح باستخدام العبارات يؤدي إلى توفُّر مسار أفضل. |
geo.action:?act=avoid_highways |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" تجنُّب الطرق التي تتضمّن طرقًا سريعة. قد يؤدي ذلك إلى إعادة التوجيه إذا كان المسار النشط الحالي يتضمّن طرقًا سريعة. |
geo.action:?act=allow_highways |
إذا كان المستخدم يتنقل، يطلب من "خرائط Google" السماح بالمسارات التي تتضمّن الطرق السريعة. وقد يؤدي ذلك إلى إعادة التوجيه إذا كان السماح بالطرق السريعة يؤدي إلى توفُّر مسار أفضل. |
geo.action:?act=eta |
إذا كان المستخدم يتنقل، تردد "خرائط Google" الوقت المقدَّر للوصول إلى الوجهة (على سبيل المثال، 9:15 صباحًا). |
geo.action:?act=time_to_destination |
إذا كان المستخدم يتنقل، تعرِض "خرائط Google" الوقت المتوقّع للوصول إلى الوجهة (على سبيل المثال، 15 دقيقة). |
geo.action:?act=exit_navigation |
للخروج من ميزة التنقّل |
geo.action:?act=select_search_result&id=0 |
إذا كانت نتائج البحث معروضة حاليًا على الشاشة (راجِع المعلومات أدناه)، يبدأ
التنقّل إلى النتيجة n استنادًا إلى مَعلمة المعرّف المقدَّمة. يُرجى العلم
أنّ الفهرس مستند إلى 0 (أي أنّ النية أعلاه ستختار
النتيجة الأولى في القائمة).
|