سوالات متداول

جزئیات محصول

شبکه

داده ها

سفارشی سازی UI

مسیریابی

شبیه ساز

گردش کار

جزئیات محصول

برنامه شما باید گفتگویی را با اعلامیه شرایط سرویس Navigation SDK اجرا کند که هر کاربر باید آن را بپذیرد. این گفتگو به کاربر این فرصت را می دهد که با شرایط خدمات موافقت کند. یک فایل متنی از شرایط همراه با Navigation SDK ارائه شده است. از متد NavigationApi.showTermsAndConditionsDialog برای نمایش کادر محاوره ای حاوی عبارات استفاده کنید.
هر زبانی که توسط Google Maps Mobile پشتیبانی می شود به طور خودکار برای Navigation SDK در دسترس است. یک دستگاه دارای یک زبان سیستم پیش فرض است و یک برنامه نمی تواند آن تنظیمات را تغییر دهد. با این حال، این برنامه به بیش از 70 زبان دسترسی دارد.

آره. پس از شروع، LocationListener به کار خود در پس‌زمینه ادامه می‌دهد. برنامه شما به گرفتن موقعیت جاده ادامه می دهد و یاتاقان را حفظ می کند.

آره. هنگامی که یک مسیر ایجاد یا تغییر می کند، RouteChangeListener چند خطوط را ارائه می دهد.

خیر، Navigation SDK نیازی به نصب Google Maps Mobile روی دستگاه ندارد.
خیر، Navigation SDK در حال حاضر این ویژگی را ارائه نمی دهد.
آره. جهت ترافیک به صورت پیش فرض در دسترس است و نمایش داده می شود.
Navigation SDK از کدام نسخه های JDK پشتیبانی می کند؟
Navigation SDK از نسخه های LTS Java SE که به طور فعال توسط Oracle پشتیبانی می شوند، پشتیبانی می کند. این نسخه ها به عنوان دارای پشتیبانی برتر در نقشه راه پشتیبانی Oracle Java SE فهرست شده اند.

شبکه

چگونه SDK ناوبری اتصال ضعیف را کنترل می کند؟
Navigation SDK مسیر را برای هر سفر از قبل ذخیره می کند. اطلاعات از پیش ذخیره شده شامل اطلاعات مسیریابی به مدت 15-20 دقیقه و جایگزین های مسیر در صورت انحراف کاربر از مسیر است. Navigation SDK موقعیت را با استفاده از GPS دستگاه و حسگرها تقریبی می کند.
آیا حالت آفلاین موجود است؟
خیر، Navigation SDK در حال حاضر حالت آفلاین را ارائه نمی دهد. با این حال، SDK اطلاعات از پیش ذخیره شده را برای یک سفر فراهم می کند.

داده ها

آیا می توانم قبل از شروع مسیر، تمام توقف ها/مقصدهای سفر را بازیابی کنم؟

آره. برای بازیابی مسیرهای مسیر، Navigator.getRouteSegments() را فراخوانی کنید.

آیا راهنمایی مسیر گام به گام در ابتدای مسیر موجود است؟
آره. Navigation SDK فهرستی از بخش های مسیر را ارائه می دهد. علاوه بر این، کاربر می تواند برای دیدن هر مانور، از طریق کارت جهت ها در هدر حرکت کند.
چگونه ETA به کاربران برنامه منتقل می شود؟

از مراحل زیر برای دادن اطلاعات ETA به کاربران برنامه استفاده کنید:

  1. با استفاده از Navigator.getTimeAndDistanceList() زمان و مسافت را برای تمام نقاط بین راهی بازیابی کنید.
  2. همانطور که برای درایور ETA انجام می دهید، این اطلاعات را به برنامه مشتری ارسال کنید.
اگر مسیریابی در پیش زمینه نباشد، آیا می توان از RoadSnappedLocationProvider برای به دست آوردن موقعیت مکانی ذخیره شده فعلی کاربر استفاده کرد؟

آره. RoadSnappedLocationProvider به طور پیش فرض در پس زمینه اجرا می شود.

آیا Navigation SDK از geofencing پشتیبانی می کند؟

خیر. در زمینه ناوبری، remainingTimeOrdistanceChangeListener نسبت به geofence برتری دارد. geofence ممکن است هندسه جاده را در نظر نگیرد، و ممکن است بر روی نقطه دقیقی که کاربر در حال حرکت به آن است متمرکز نباشد.

می توانید این ویژگی را با استفاده از remainingTimeOrdistanceChangeListener تقریبی کنید.

  1. آستانه را برای تعیین فرکانس تماس ها تنظیم کنید.
  2. فاصله باقی مانده تا مقصد را بررسی کنید.

برای مثال، اگر آستانه را روی 100 متر تنظیم کنید، زمانی که فاصله تا مقصد 100 متر تغییر کند، یک تماس پاسخ دریافت خواهید کرد. با کاهش فاصله، می توانید این آستانه را به مقدار کمتری به روز کنید و تماس های مکرر بیشتری دریافت کنید. سپس، فاصله باقیمانده را بررسی کنید تا مشخص کنید آیا به اندازه کافی به محل تحویل یا رها کردن نزدیک هستید یا خیر.

آیا می توانم وقتی برنامه ناوبری در پس زمینه است اعلان ها را غیرفعال کنم؟

آره. برای کنترل اعلان‌ها از Navigator.setHeadsUpNotificationEnabled استفاده کنید. این روش دارای آرگومان بولی است. FALSE اعلان ها را غیرفعال می کند. TRUE اعلان ها را فعال می کند.

ضبط کننده تراکنش با شناسه منحصر به فردی که گوگل آن را برای اهداف تجزیه و تحلیل محصول ثبت می کند، تحویل و تحویل را ردیابی می کند. اگر مشتری Mobility Services هستید، Google توصیه می‌کند که NavigationTransactionRecorder را برای ثبت رکورد تراکنش‌های خود پیاده‌سازی کنید.

سفارشی سازی UI

آیا می توانم بهترین گزینه مسیر را کد رنگ کنم؟
خیر. کدگذاری رنگی یک گزینه مسیر خاص در حال حاضر پشتیبانی نمی شود.
آیا Navigation SDK می تواند ETA را برای مقصد نهایی نشان دهد؟

آره. از روش های زیر استفاده کنید:

  1. با استفاده از Navigator.getTimeAndDistanceList() زمان و مسافت را برای تمام نقاط بین راهی بازیابی کنید.
  2. ETA نقطه بین راه فعلی را با استفاده از NavigationFragment.setEtaCardEnabled(false) مخفی کنید.
  3. مقصد نهایی ETA را رندر کنید.
چگونه می توانم به روز رسانی های ETA را پنهان کنم؟

با تماس با navigationView.setEtaCardEnabled(false) می توانید کارت های ETA را غیرفعال کنید.

کدام شخصی‌سازی‌های رابط کاربری برای کارت‌های سرصفحه و پاورقی در دسترس هستند؟

از StylingOptions برای تنظیم استایل رنگ پس زمینه استفاده کنید. برای پنهان کردن یا نشان دادن سرصفحه و پاورقی، از توابع عضو setHeaderEnabled و setFooterEnabled NavigationFragment استفاده کنید.

مسیریابی

آیا می توانم مسیر خاصی را به کاربر ارائه دهم یا مسیرهای جایگزین را حذف کنم؟
خیر به طور پیش فرض چندین مسیر ارائه شده و سریعترین مسیر اولویت دارد. می‌توانید با افزودن تنظیمات برگزیده، مانند «جلوگیری از بزرگراه‌ها و عوارضی» به درخواست خود، مسیر پیش‌فرض را تحت تأثیر قرار دهید. اضافه کردن ایستگاه های بین راه نیز بر مسیر تاثیر می گذارد.
آیا می توانم به کاربر برنامه برچسبی متفاوت از مکان مقصد پیش فرض برای مقصد نشان دهم؟

آره. یک Marker با عنوان سفارشی برای مقصد و طول و عرض جغرافیایی ایجاد کنید. Navigation SDK عنوان سفارشی و مختصات را در NavigationMap نمایش می دهد.

آیا می توانم از Navigation SDK برای ردیابی انحرافات از یک مسیر تعریف شده استفاده کنم؟

آره. از Navigator.setRouteChangedListener برای دریافت اعلان‌ها هنگام تغییر مسیر یا توصیه مسیر جدید استفاده کنید:

  1. شنونده ای را ثبت کنید که موقعیت دستگاه را در طول مسیر با استفاده از روش Navigator.setRouteChangedListener بررسی می کند.
  2. کد را به کنترل کننده رویداد پاسخ به تماس، onRouteChanged اضافه کنید:
    • برای کاربر برنامه پیامی با اطلاعات به روز شده ETA و فاصله ارسال کنید.
    • مکان دستگاه را ردیابی کنید.
    • [اختیاری] سایر ویژگی‌های مورد نیاز برنامه خود را اضافه کنید تا زمانی که کاربر از مسیر تعیین شده خارج می‌شود، آن را مدیریت کند.
آیا کاربر می تواند بدون تکمیل مسیر از ناوبری خارج شود؟

آره. برای توقف ناوبری، متد Navigator.stopGuidance() را فراخوانی کنید.

شبیه ساز

آیا شبیه ساز از تغییرات مسیر پشتیبانی می کند؟

آره. برای شبیه سازی سفری که شامل تغییر مسیر است، simulateLocationsAlongNewRoute را فراخوانی کنید. متد simulateLocationsAlongExistingRoute تغییرات مسیر موجود را نادیده می گیرد.

گردش کار

چگونه می توانم پس از بستن فعالیتی که حاوی یک قطعه ناوبری است، اعلان را رد کنم؟

اعلان ناوبری در طول ناوبری، زمانی که فعالیت بسته می شود، قابل مشاهده باقی می ماند. وقتی وسیله نقلیه به مقصد می رسد، ناوبری متوقف می شود و اعلان ناپدید می شود.

برای مدیریت کلیک‌های روی اعلان، از Navigator.startGuidance(intent resumeIntent) استفاده کنید. هنگامی که کاربر برنامه روی اعلان کلیک می کند resume intent فعال می شود. به طور معمول، Navigator.startguidance(getIntent()) از Activity اصلی فراخوانی می شود، که وقتی کاربر برنامه روی اعلان کلیک می کند، Activity را به یاد می آورد.