سلب مسئولیت
این محصول/ویژگی تغییر خواهد کرد و مشمول هیچ گونه قرارداد سطح خدمات (SLA) یا خط مشی منسوخ شدن نیست. این پیاده سازی ممکن است در نسخه های بعدی تغییر کند.
در مورد نرمافزار نمونه، فایلهای داده و/یا کد منبعی که این مستندات را همراهی میکنند: این محصول «همانطور که هست» و بدون هیچ نوع ضمانتی ارائه میشود و Google صریحاً از هرگونه ضمانتنامه، اعم از صریح، ضمنی، قانونی یا موارد دیگر، خودداری میکند. از جمله ضمانتهای بدون محدودیت در مورد خرید و فروش بودن، مناسب بودن برای یک هدف خاص و عدم نقض حقوق مربوط به این محصول.
از طریق Android Automotive intents، میتوانید ناوبری را در Google Maps راهاندازی کنید.
برای اطلاعات بیشتر، Google Maps Intents for Android را ببینید.
برای اطلاعات بیشتر در مورد آوردن برنامه خود به وسایل نقلیه دارای سیستم عامل Android Auto یا Android Automotive، به Android for Cars مراجعه کنید.
نمای کلی
این صفحه اهدافی را که میتوانید با Google Maps برای Android Automotive استفاده کنید، شرح میدهد. برای جزئیات مستندات توسعه دهنده اندروید، بخوانید:
درخواست های قصد
برای راهاندازی Google Maps برای Android Automotive با یک هدف، ابتدا باید یک شی Intent ایجاد کنید و عملکرد، URI و بسته آن را مشخص کنید.
اقدام همه مقاصد Google Maps به عنوان یک کنش نمایش،
ACTION_VIEW
نامیده میشوند.URI. مقاصد Google Maps از رشتههای رمزگذاری شده URI استفاده میکند که یک عمل مورد نظر را به همراه برخی دادهها برای انجام عمل مشخص میکند.
بسته. تماس با
setPackage("com.google.android.apps.maps")
تضمین میکند که برنامه Google Maps برای Android، Intent را مدیریت میکند. اگر بسته تنظیم نشده باشد، سیستم تعیین می کند که کدام برنامه می تواند Intent را مدیریت کند. اگر چندین برنامه در دسترس باشد، ممکن است از شما بپرسند که می خواهید از کدام برنامه استفاده کنید.
پس از ایجاد Intent، میتوانید از راههای مختلفی درخواست کنید که سیستم برنامه مربوطه را راهاندازی کند. یک روش رایج این است که Intent را به متد startActivity()
ارسال کنید. سیستم برنامه لازم، در این مورد، Google Maps را راه اندازی می کند و فعالیت مربوطه را شروع می کند.
// 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 پاسخ دهد، ممکن است برنامه شما از کار بیفتد. به همین دلیل، قبل از ارائه یکی از این اهداف به کاربر، ابتدا بررسی کنید که یک برنامه دریافت کننده نصب شده است.
برای تأیید اینکه یک برنامه برای دریافت intent در دسترس است، resolveActivity()
در شی Intent
خود فراخوانی کنید. اگر نتیجه غیر تهی باشد، حداقل یک برنامه وجود دارد که می تواند intent را مدیریت کند و فراخوانی startActivity()
بی خطر است. اگر نتیجه صفر است، نباید از intent استفاده کنید و در صورت امکان، ویژگی را که intent را فراخوانی می کند غیرفعال کنید.
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 Maps Intent باید 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 Maps مراجعه کنید.
q
نقطه پایانی را برای جستجوهای پیمایش تنظیم می کند. این میتواند یک آدرس طول و عرض جغرافیایی یا یک آدرس قالببندی شده با درخواست باشد. اگر یک رشته کوئری است که بیش از یک نتیجه را برمی گرداند، اولین نتیجه انتخاب می شود.place
نقطه پایانی را روی خانه یا محل کار تنظیم می کند. خانه را برای پیمایش به خانه کاربر و work را برای پیمایش به محل کار کاربر مشخص کنید.avoid
مجموعه ویژگی هایی که مسیر باید سعی کند از آن اجتناب کند.avoid
اختیاری است و می توان آن را روی یک یا چند مورد از موارد زیر تنظیم کرد:-
t
برای عوارض -
h
برای بزرگراه ها -
f
برای کشتی
-
waypoints
یک یا چند مکان واسطه را برای مسیریابی مسیرها به مقصد نهایی مشخص شده توسطq
مشخص می کند. شما می توانید چندین ایستگاه را با استفاده از کاراکتر لوله (|
) برای جدا کردن مکان ها مشخص کنید - به عنوان مثال،Berlin,Germany|Paris,France
. می توانید به تعداد مورد نیاز از ایستگاه های بین راه استفاده کنید. نقاط راه به همان ترتیبی که در URL فهرست شده اند به مسیر اضافه می شوند. هر نقطه راه می تواند یک آدرس یا مختصات طول و عرض جغرافیایی جدا شده با کاما باشد. و، می توانید آدرس ها و مختصات lat/long را در یک هدف داشته باشید. رشته ها باید دارای URL-Escape باشند، بنابراین نقاط بین راه مانند "برلین، آلمان|پاریس، فرانسه" باید به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 و خانه اپرای سیدنی را به عنوان ایستگاه های بین راهی عبور دهید:
گوگل سیدنی
خانه اپرای سیدنی
باغ وحش تارونگا، سیدنی استرالیا
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 Maps ارسال کنید
از این هدف ناوبری چند مقصدی برای تعیین برخی مقصدها به عنوان توقف شارژ خودروی الکتریکی (EV) استفاده کنید. این هدف، که هدف چندراهی را گسترش میدهد، به رانندگان کمک میکند تا با همگامسازی اطلاعات توقف شارژ بین برنامههای برنامهریزی سفر EV و Google Maps، شارژ باتری خودروی الکتریکی کافی را برای رسیدن به مقصد خود حفظ کنند.
برای توقف شارژ، اهداف سفر:
- باید حاوی نام و lat-long باشد
- ممکن است به صورت اختیاری دارای توان خروجی باشد تا برای محاسبه زمان شارژ استفاده شود
Google از نام ایستگاه شارژ و lat-long برای یافتن مکان ایستگاه شارژ منطبق برای نمایش دادههای غنی مانند انواع رابطها، مجموع، سرعتها و در دسترس بودن همزمان، روشهای پرداخت پشتیبانیشده و نقاط مورد علاقه میزبان (POI) استفاده میکند. به عنوان مثال، مسیرهای رانندگی در پارکینگ های روباز برای بخش پایانی ناوبری، ساعات کار، رتبه بندی. برای اطمینان از اینکه ایستگاههای شارژ به خوبی با دادههای Google مطابقت دارند، از <brand name>
استفاده کنید، برای مثال ChargePoint
.
پارامترها
مقصد نهایی
برای تنظیم ایستگاه شارژ به عنوان مقصد نهایی، از موارد زیر استفاده کنید:
-
q
: باید حاوی مقدار lat-long ایستگاه شارژ باشد. -
q_type
:1
مشخص می کند که مقصد نهایی یک ایستگاه شارژ است. -
q_name
: نام مقصد نهایی. اگرq_type
1
باشد الزامی است. -
q_power_output_kw
: یک عدد دو برابر برای شارژ خروجی برق ایستگاه شارژ بر حسب کیلووات. اختیاری.
نقاط راه
برای نقاط بین راه، همه پارامترها موازی هستند، آرایه های مقادیر جدا از هم به همان ترتیبی که ایستگاه های بین راهی هستند، بدون در نظر گرفتن مقصد نهایی. عدم تطابق در تعداد عناصر در آرایه های موازی به عنوان یک هدف نادرست تلقی می شود.
برای اضافه کردن یک یا چند ایستگاه شارژ، از پارامترهای زیر استفاده کنید که همه آنها اختیاری هستند. اگر یکی از مقصدها بهعنوان ایستگاه شارژ علامتگذاری شده باشد، نام ایستگاه برای آن مقصد اجباری میشود.
waypoints
: فهرستی از نقاط راه همانطور که در هدف ناوبری گام به گام توضیح داده شده است. برای ایستگاههای شارژ ایستگاههای شارژ باید یک مقدار lat-long باشد.waypoint_types
: انواع در هر نقطه راه که به عنوان یک عدد مشخص شده است.0
هر توقف (مقدار پیش فرض) و1
ایستگاه شارژ است.waypoint_names
: نام نقاط راه. این قسمت برای ایستگاه های شارژ اجباری است.waypoint_power_outputs_kw
: اعداد دوگانه برای شارژ ایستگاه شارژ بر حسب کیلووات. برای ایستگاه های شارژ، می توانید به صورت اختیاری یک مقدار خروجی توان نقطه بین راه را تعیین کنید، که در صورت پیدا نشدن ایستگاه منطبق، به عنوان بازگشتی استفاده می شود. شکاف خالی به این معنی است که هیچ ارزشی ارائه نشده است.
رفتار تجربه کاربر (UX).
برای اهداف سفر با مقصدهای متعدد، صفحه نمای کلی مسیر نمایش داده می شود، اما ناوبری به طور خودکار شروع نمی شود.
برای یک هدف درست قالببندی شده، Google Maps یک صفحه نمای کلی مسیر را برای سفر ارائه میکند. صفحه نمای کلی مسیر، تمام نقاط بین راه و مقصد نهایی را با توصیههای شارژ در صورت لزوم نمایش میدهد.
برای هر نقطه بین راهی یا مقصد نهایی که به عنوان ایستگاه شارژ مشخص شده است، Google Maps مکان منطبق را در پایگاه داده Google جستجو می کند.
در جایی که مطابقت پیدا می شود، Google Maps از داده های Google برای نمایش ایستگاه شارژ در رابط کاربری (UI) و ارائه توصیه شارژ برای ایستگاه شارژ استفاده می کند. اگر مطابقت پیدا نشد، دادههای ارائه شده در هدف یک ایستگاه شارژ (Lat-long، نام و توان خروجی) برای نمایش این ایستگاه شارژ در رابط کاربری و ارائه توصیه شارژ در این ایستگاه شارژ استفاده میشود.
نمونه ها
از طریق چندین ایستگاه شارژ به مقصد نهایی بروید
هدف زیر از طریق دو ایستگاه شارژ ChargePoint و Evie به مقصد نهایی، Port Macquarie NSW میرود.
مقاصد به ترتیب:
ایستگاه شارژ ChargePoint (مکان: -32.9599188,151.6240806، توان خروجی: 6.6kw)
ایستگاه شارژ Evie (مکان: -31.9432539،152.4699808، توان خروجی: 350kw)
پورت مک کواری NSW
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، توان خروجی: نامعلوم)
پورت مک کواری NSW
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، توان خروجی: 350kw)
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 Maps در نوبت بعدی صحبت می کند (فقط در هنگام پیمایش کار می کند). |
geo.action:?act=distance_to_next_turn | Google Maps فاصله تا پیچ بعدی را بیان می کند (فقط در هنگام ناوبری کار می کند). |
geo.action:?act=time_to_next_turn | Google Maps زمان نوبت بعدی را نشان میدهد (فقط در هنگام پیمایش کار میکند). |
geo.action:?act=distance_to_destination | Google Maps فاصله تا مقصد را بیان می کند (فقط در هنگام ناوبری کار می کند). |
geo.action:?act=go_back | Google Maps به صفحه قبلی در رابط کاربری بازمی گردد. |
geo.action:?act=query_current_road | نقشه های گوگل از جاده فعلی صحبت می کند. |
geo.action:?act=query_destination | نقشه گوگل مقصد را بیان می کند. |
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 Maps میگوید از مسیرهای دارای عوارض اجتناب کند. اگر مسیر فعلی دارای عوارض باشد، ممکن است منجر به تغییر مسیر شود. |
geo.action:?act=allow_tolls | اگر کاربر در حال پیمایش است، به Google Maps میگوید که مسیرهای دارای عوارض را مجاز کند. این ممکن است منجر به تغییر مسیر شود اگر اجازه دادن به عوارض منجر به در دسترس بودن مسیر بهتری شود. |
geo.action:?act=avoid_ferries | اگر کاربر در حال پیمایش است، به Google Maps میگوید از مسیرهای با کشتی اجتناب کند. اگر مسیر فعال فعلی دارای کشتی باشد، ممکن است منجر به تغییر مسیر شود. |
geo.action:?act=allow_ferries | اگر کاربر در حال پیمایش است، به Google Maps میگوید که مسیرهای با کشتی را مجاز کند. اگر اجازه دادن به کشتیها باعث شود مسیر بهتری در دسترس باشد، ممکن است منجر به تغییر مسیر شود. |
geo.action:?act=avoid_highways | اگر کاربر در حال پیمایش است، به Google Maps میگوید از مسیرهای دارای بزرگراه اجتناب کند. اگر مسیر فعال فعلی دارای بزرگراه باشد، ممکن است منجر به تغییر مسیر شود. |
geo.action:?act=allow_highways | اگر کاربر در حال پیمایش است، به Google Maps میگوید مسیرهای دارای بزرگراه را مجاز کند. اگر اجازه دادن به بزرگراهها باعث شود مسیر بهتری در دسترس باشد، ممکن است منجر به تغییر مسیر شود. |
geo.action:?act=eta | اگر کاربر در حال پیمایش است، Google Maps زمان تخمینی رسیدن به مقصد را بیان می کند (مثلاً 9:15 صبح). |
geo.action:?act=time_to_destination | اگر کاربر در حال پیمایش باشد، Google Maps زمان مورد انتظار را به مقصد (مثلاً 15 دقیقه) بیان می کند. |
geo.action:?act=exit_navigation | از ناوبری خارج می شود. |
geo.action:?act=select_search_result&id=0 | اگر نتایج جستجو در حال حاضر روی صفحه نمایش داده می شود (به زیر مراجعه کنید)، پیمایش را به n بر اساس پارامتر ID ارائه شده آغاز می کند. توجه داشته باشید که ایندکس مبتنی بر 0 است (یعنی هدف بالا اولین نتیجه را در لیست انتخاب می کند). |