Google Assistant از سه قالب مختلف هدف استفاده می کند که برنامه ناوبری شما می تواند پشتیبانی کند. میتوانید با اعلام فیلترهای هدف به تفصیل در این صفحه در مانیفست برنامه خود، به قابلیت همکاری دست پیدا کنید و برنامه و دستیار Google خود را ادغام کنید. برای کسب اطلاعات بیشتر در مورد Intent، به Intent
مراجعه کنید.
کلاس Intent
برنامه پیمایش دستیار از اهداف زیر پشتیبانی می کند:
- هدف ناوبری
- هدف جستجو
- قصد اقدام سفارشی
شکل 1. جریان داده هدف.
پارامترها در داده های هدف
دادههای Intent از یک فرمت URI پیروی میکنند که شامل پارامترهایی بر اساس هدفی است که شما ارسال میکنید. برخی از پارامترها همیشه در داده ها ارائه می شوند. این بدان معناست که شما می توانید انتظار داشته باشید که آنها همیشه یک مقدار صریح داشته باشند. با این حال، پارامترهای اختیاری همیشه مقداری در دادهها ندارند. برای اطلاعات بیشتر، به تست داده مراجعه کنید.
اهداف آفلاین
تمام اهداف فهرست شده در این صفحه انواع آفلاین خود را در دسترس دارند. شما می توانید آنها را با اضافه کردن .offline
به طرح آنها متمایز کنید. به عنوان مثال، هدف ناوبری از طرح geo.offline
استفاده می کند. این فیلترهای هدف در مانیفست نشان دهنده توانایی برنامه برای پشتیبانی آفلاین از این اقدامات است.
هدف ناوبری
از یک هدف ناوبری برای انجام درخواست کاربر برای پیمایش به یک مقصد خاص استفاده کنید. این مقصد می تواند یک مکان واحد (آدرس) یا چندین مکان (به عنوان مثال، کافی شاپ ها و پمپ بنزین ها) باشد. داده های Intent از یک فرمت URI که برای هر intent مشخص شده است پیروی می کند.
قالب قصد
کلاس Intent
از فرمت زیر برای هدف برنامه ناوبری استفاده می کند:
دسته: android.intent.category.DEFAULT
اقدام:
- Android Auto و Android Automotive OS:
androidx.car.app.action.NAVIGATE
- سایر عوامل شکل:
android.intent.action.NAVIGATE
طرح: geo
مثال ها:
-
geo:0,0?q=Googleplex
-
geo:0,0?q=1600+Amphitheatre+parkway&mode=b&intent=add_a_stop
-
geo:0,0?q=coffee+shop&mode=w&intent=navigation
-
geo:1.1,2.2?q=Starbucks+on+Main+Street&mode=w&intent=navigation
رفتار پیشنهادی برنامه: پیمایش به مکان مشخص شده شروع می شود یا از کاربر خواسته می شود از بین گزینه های متعدد انتخاب کند.
فیلترهای قصد آشکار
قالب هدف زیر را در فایل مانیفست برنامه خود اعلام کنید تا دستیار Google بداند که برنامه پیمایش شما می تواند اهداف پیمایش را دریافت کند.
همه عوامل شکل به جز Android Auto و Android Automotive OS:
<intent-filter>
<action android:name="android.intent.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Android Auto و Android Automotive OS:
<intent-filter>
<action android:name="androidx.car.app.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
پارامترهای ارائه شده
انتظار میرود پارامترهای زیر در دادههای هدف برنامه ناوبری ارائه شده در دسترس باشند.
پرس و جو مکان یا مختصات جغرافیایی
هر کوئری هدف ناوبری بسته به نوع داده درخواستی، حاوی یک یا هر دوی این پارامترها است:
استعلام موقعیت مکانی
به مکانی اشاره دارد که کاربر در تلاش است به آن پیمایش کند. از این داده ها برای تعیین مقصد کاربر استفاده کنید.
کلید پارامتر:
q
مقدار: مقصد مورد نظر کاربر.مثال:
geo:0,0?q=Golden+Gate+Bridge
تفسیر: کاربر می خواهد به پل گلدن گیت حرکت کند.مختصات جغرافیایی (طول و عرض جغرافیایی)
به مختصات خاصی که توسط کاربر برای ناوبری استفاده می شود اشاره دارد.
کلید پارامتر:
geo:lat,long
مقدار: مختصات درخواست شده کاربر.مثال:
geo:1.1,2.2?mode=w&intent=navigation
تفسیر: کاربر می خواهد به مختصات (1.1، 2.2) حرکت کند.
پارامترهای اختیاری
پارامترهای اختیاری ارائه شده در داده های هدف برنامه ناوبری در این بخش توضیح داده شده است.
قصد
هدف کاربر را مشخص می کند. اگر این پارامتر تنظیم نشده باشد، هدف کاربر پیشفرض بهعنوان navigation
در نظر گرفته میشود.
کلید پارامتر: intent
مقادیر ممکن:
-
navigation
[مقدار پیش فرض] - مقصد را جایگزین می کند و ناوبری را شروع می کند. از این برای پرس و جوهایی مانند پیمایش به x استفاده کنید. -
add_a_stop
- توقف را به عنوان مقصد بعدی به همراه مقصدهای قبلی اضافه می کند. از این برای پرس و جوهایی مانند اضافه کردن توقف در x استفاده کنید. -
directions
- جهت مسیر را بدون شروع ناوبری نشان می دهد. از این برای پرس و جوهایی مانند مسیرهای x استفاده کنید.
به عنوان مثال: geo:47.61594547836694,-122.20373173098756?q=575+Bellevue+Square,+Bellevue,+WA+98004&intent=add_a_stop
تفسیر: کاربر میخواهد یک مختصات فعلی را به Bellevue اضافه کند. [47.6، -122.2].
اجتناب کنید
مواردی را که باید در ناوبری از آنها اجتناب شود را تعریف می کند.
کلید پارامتر: avoid
مقادیر ممکن:
-
f
- کشتی -
h
- بزرگراه ها -
t
- عوارض
مثال: geo:0,0?q=googleplex&avoid=tf
تفسیر: کاربر می خواهد با اجتناب از عوارض و کشتی به Googleplex حرکت کند.
حالت سفر
حالت سفر نشان دهنده روش حمل و نقل است که در پرس و جو توسط کاربر مشخص شده است.
کلید پارامتر: mode
مقادیر ممکن:
-
b
- دوچرخه -
d
- درایو -
x
- تاکسی -
l
- دو چرخ -
r
- حمل و نقل -
w
- راه رفتن
مثال: geo:0,0?q=Googleplex&mode=r
تفسیر: کاربر می خواهد با استفاده از حمل و نقل عمومی به Googleplex حرکت کند.
ورود
برای ثبت منبع ورودی استفاده می شود.
مقادیر ممکن: دستیار
مثال: geo:47.61594547836694,-122.20373173098756?entry=assistant
هدف جستجو
از یک هدف جستجو برای جستجوی یک درخواست و نمایش نتایج متعدد در طول مسیر در حین رانندگی استفاده کنید.
قالب قصد
کلاس Intent
از فرمت زیر برای اهداف جستجو استفاده می کند:
دسته: android.intent.category.DEFAULT
اکشن: android.intent.action.VIEW
طرح: geo
مثال: geo:0,0?q=restaurants+nearby
رفتار پیشنهادی برنامه: فهرستی از مکانهای متناسب با درخواست کاربر را باز کنید.
فیلترهای قصد آشکار
قالب intent زیر را در فایل مانیفست برنامه خود اعلام کنید تا دستیار Google بداند که برنامه پیمایش شما می تواند اهداف جستجو را دریافت کند:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
پارامترهای ارائه شده
انتظار می رود پارامترهای زیر در داده های هدف جستجوی ارائه شده در دسترس باشند.
استعلام موقعیت مکانی
جستجوی موقعیت مکانی مکانی است که کاربر هنگام رانندگی به دنبال آن است. این پرس و جو می تواند نادقیق یا در طول یک مسیر ناوبری فعال باشد.
کلید پارامتر: q
مقدار: عبارت جستجوی کاربر، که میتواند یک نوع مکان مانند کافیشاپ یا کالج باشد، اما همچنین میتواند کمیتکنندههایی مانند -نزدیک من یا -با بهترین رتبهبندی داشته باشد.
مثال: geo:0,0?q=restaurants+nearby
تفسیر: کاربر می خواهد رستوران های اطراف را جستجو کند.
قصد اقدام سفارشی
از یک هدف سفارشی برای اقدامات سفارشی مانند گزارش تصادف و پایان ناوبری استفاده کنید. نوع عمل اصلی با پارامتر act
query تعریف می شود. بسته به نوع عمل می توانید پارامترهای اضافی را تنظیم کنید.
قالب قصد
کلاس Intent
از فرمت زیر برای intent اقدام سفارشی استفاده می کند:
دسته: android.intent.category.DEFAULT
اکشن: android.intent.action.VIEW
طرح: geo.action
مثال: geo.action:?act=report&accident_type=major
فیلترهای قصد آشکار
قالب هدف زیر را در فایل مانیفست برنامه خود اعلام کنید تا به دستیار Google اطلاع دهید که برنامه پیمایش شما میتواند اهداف اقدام سفارشی را دریافت کند.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo.action" />
</intent-filter>
پارامترهای ارائه شده
انتظار می رود پارامترهای زیر در داده های هدف اقدام سفارشی ارائه شده در دسترس باشند:
نوع عمل
نوع اقدام سفارشی را که کاربر می خواهد انجام دهد را مشخص می کند.
کلید پارامتر: act
مثال ها:
geo.action:?act=report_crash&accident_type=major
تفسیر: کاربر می خواهد یک حادثه بزرگ را گزارش کند.geo.action:?act=mute
تفسیر: کاربر می خواهد دستورالعمل های صوتی را بی صدا کند.geo.action:?act=exit_navigation
تفسیر: کاربر می خواهد از ناوبری فعلی خارج شود.
رفتار پیشنهادی برنامه: عملکرد درخواستی را در برنامه پیمایش انجام دهید یا یک پیام اقدام پشتیبانی نشده نشان دهید.
شکل زیر نمونه ای از جفت های کلید-مقدار را در پرس و جو پاسخ نشان می دهد:
شکل 2. جریان داده هدف اقدام سفارشی.
جفت کلید-مقدار:
"act": "report_crash"
"road_direction": other_side"
هر اقدام سفارشی همیشه یک پارامتر act
به عنوان کلید دارد. در کد مثال فوق، برخی از عملکردها می توانند جفت کلید-مقدار اضافی داشته باشند. برای مثال، act=report_crash
از این کلیدهای اضافی پشتیبانی میکند: accident_type
و road_direction
.
کلید accident_type
می تواند دو مقدار minor
و major
را پشتیبانی کند.
مقادیر ممکن
جدول مقادیر احتمالی را فهرست میکند که دستیار Google میتواند به عنوان عملکردی که کاربر در تلاش است در برنامه ناوبری انجام دهد انجام دهد.
ارزش | توضیحات | کلیدهای پارامتر اختیاری | مقادیر پارامتر اختیاری |
---|---|---|---|
allow_ferries | ترجیح مسیر را تغییر دهید تا کشتیها مجاز باشند. | ||
allow_highways | اولویت مسیر را تغییر دهید تا بزرگراهها مجاز باشند. | ||
allow_tolls | برای مجاز کردن عوارض، اولویت مسیر را تغییر دهید. | ||
apply_electric_vehicle_connector_filter | فقط مکانهای شارژ EV را نشان دهید که با کانکتور خودرو مطابقت دارند. | ||
apply_electric_vehicle_fast_charging_filter | فقط مکانهای شارژ EV را نشان دهید که شارژرهای سریع هستند. | ||
apply_electric_vehicle_payment_filter | فقط مکانهای شارژ EV را نشان دهید که نیاز به پرداخت دارند. | ||
avoid_ferries | برای اجتناب از کشتی، اولویت مسیر را تغییر دهید. | ||
avoid_highways | ترجیح مسیر را تغییر دهید تا از بزرگراهها اجتناب کنید. | ||
avoid_tolls | برای جلوگیری از عوارض، اولویت مسیر را تغییر دهید. | ||
clear_search_results | نتایج جستجو را روی نقشه پاک کنید. | ||
distance_to_destination | نشان دادن فاصله تا مقصد | ||
distance_to_next_turn | فاصله تا پیچ بعدی را نشان دهید. | ||
eta | ETA را به مقصد نشان دهید. | ||
exit_navigation | خروج یا لغو ناوبری. | ||
follow_mode | نمای نقشه را به حالت دنبال کردن تغییر دهید. | ||
go_back | به عملکرد نقشه قبلی برگردید. | ||
hide_satellite | برای پنهان کردن اطلاعات ماهواره، تنظیمات نقشه را تغییر دهید. | ||
hide_traffic | برای پنهان کردن اطلاعات ترافیک، تنظیمات نقشه را تغییر دهید. | ||
mute | راهنمای صوتی را بی صدا کنید. | ||
query_current_road | نشان دهید جاده فعلی کاربر در کدام جاده است. | ||
query_destination | نشان دهید مقصد چیست. | ||
query_next_turn | نشان دهید نوبت بعدی چیست. | ||
remove_electric_vehicle_connector_filter | فیلتر مکانهای شارژ EV را که با کانکتور خودرو مطابقت دارند حذف کنید. | ||
remove_electric_vehicle_fast_charging_filter | فیلتر را برای مکانهای شارژ EV که شارژرهای سریع هستند حذف کنید. | ||
remove_electric_vehicle_payment_filter | فیلتر را برای مکانهای شارژ EV که نیاز به پرداخت دارند حذف کنید. | ||
report_crash | خرابی ها را گزارش کنید. | accident_type | minor |
major | |||
road_direction | this_side | ||
other_side | |||
report_hazard | خطرات را گزارش کنید | hazard_type | animal |
broken_traffic_light | |||
construction | |||
flooding | |||
fog | |||
hail | |||
ice | |||
missing_sign | |||
object_on_road | |||
pothole | |||
roadkill | |||
snow | |||
vehicle | |||
weather | |||
road_direction | this_side | ||
other_side | |||
location_on_road | on_road | ||
on_shoulder | |||
report_police | گزارش فعالیت پلیس | road_direction | this_side |
other_side | |||
report_road_closure | بسته شدن جاده ها را گزارش دهید | road_closure_type | partial |
full | |||
report_traffic | گزارش ترافیک | traffic_type | moderate |
heavy | |||
standstill | |||
road_direction | this_side | ||
other_side | resume_navigation | از سرگیری ناوبری | |
route_overview | نمایش نمای کلی مسیر | ||
show_alternates | نمایش مسیرهای جایگزین | ||
show_directions_list | نمایش دستورالعمل های گام به گام | ||
show_satellite | نمایش اطلاعات ماهواره بر روی نقشه | ||
show_traffic | نمایش ترافیک روی نقشه | ||
time_to_destination | ETA را به مقصد نشان دهید. | ||
time_to_next_turn | ETA را به نوبت بعدی نشان دهید. | ||
unmute | لغو نادیده گرفتن راهنمایی صوتی. |