با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
این بخش نحوه آماده سازی وسیله نقلیه را برای سفر نشان می دهد. شما باید هر یک از مراحل زیر را قبل از اینکه باطن شما بتواند یک وسیله نقلیه را با یک سفر مطابقت دهد، انجام دهید.
شنونده را تنظیم کنید
از آنجایی که Driver SDK اقداماتی را در پسزمینه انجام میدهد، از DriverStatusListener برای راهاندازی اعلانها هنگام وقوع رویدادهای خاصی مانند خطاها، هشدارها یا پیامهای اشکالزدایی استفاده کنید. خطاها ممکن است ماهیت گذرا داشته باشند (مانند BACKEND_CONNECTIVITY_ERROR )، یا ممکن است باعث توقف دائمی بهروزرسانیهای مکان شوند. به عنوان مثال، اگر یک خطای VEHICLE_NOT_FOUND دریافت کردید، نشان دهنده یک خطای پیکربندی است.
مثال زیر اجرای DriverStatusListener را نشان می دهد:
classMyStatusListenerimplementsDriverStatusListener{/** Called when background status is updated, during actions such as location reporting. */@OverridepublicvoidupdateStatus(StatusLevelstatusLevel,StatusCodestatusCode,StringstatusMsg,@NullableThrowablecause){// Existing implementationif(cause!=null && causeinstanceofStatusRuntimeException){if(Status.NOT_FOUND.getCode().equals(cause.getStatus().getCode())){// NOT_FOUND gRPC exception thrown by Fleet Engine.}}}}DriverContextBuilder.setDriverStatusListener(newMyStatusListener());
به روز رسانی مکان را فعال کنید
پس از تنظیم شنونده، بهروزرسانیهای مکان را به صورت زیر فعال کنید:
بهطور پیشفرض، Driver SDK بهروزرسانیهای مکان را در فواصل زمانی 10 ثانیه ارسال میکند که وضعیت خودرو ONLINE باشد. می توانید این فاصله را با reporter.setLocationReportingInterval(long, TimeUnit) تغییر دهید. حداقل فاصله به روز رسانی پشتیبانی شده 5 ثانیه است. بهروزرسانیهای مکرر ممکن است منجر به درخواستها و خطاهای کندتر شود.
وضعیت خودرو را روی حالت آنلاین قرار دهید
وقتی بهروزرسانی موقعیت مکانی را روشن میکنید، میتوانید وضعیت خودرو را روی ONLINE تنظیم کنید تا وسیله نقلیه برای جستجوهای SearchVehicles در Fleet Engine در دسترس باشد. Driver SDK وضعیت بهروزرسانی شده خودرو را همراه با بهروزرسانیهای مکان ارسال میکند.
میتوانید وضعیت خودرو را مستقیماً در Driver SDK یا در سرور Fleet Engine تنظیم کنید. برای اطلاعات بیشتر، به روز رسانی خودرو را ببینید.
مثالهای زیر نحوه تنظیم وضعیت خودرو را در حالت آنلاین در Driver SDK نشان میدهند:
تاریخ آخرین بهروزرسانی 2025-09-04 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-09-04 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eBefore a backend can match a vehicle to a trip, you must set up a listener to handle status updates and errors.\u003c/p\u003e\n"],["\u003cp\u003eEnable location tracking for the vehicle using the \u003ccode\u003eenableLocationTracking()\u003c/code\u003e method and optionally adjust the location update interval.\u003c/p\u003e\n"],["\u003cp\u003eTo make the vehicle discoverable for trip assignments, set its state to \u003ccode\u003eONLINE\u003c/code\u003e using the \u003ccode\u003esetVehicleState()\u003c/code\u003e method after enabling location tracking.\u003c/p\u003e\n"]]],[],null,["# Get the vehicle ready\n\nThis section shows how to get the vehicle ready for trips. You must complete\neach of the following steps before your backend can match a vehicle to a trip.\n\nSet up listener\n---------------\n\nSince the Driver SDK performs actions in the\nbackground, use the `DriverStatusListener` to trigger notifications when certain\nevents occur, such as errors, warnings, or debug messages. Errors can be\ntransient in nature (such as `BACKEND_CONNECTIVITY_ERROR`), or they might\ncause location updates to stop permanently. For example, if you receive a\n`VEHICLE_NOT_FOUND` error, it indicates a configuration error.\n\nThe following example shows a `DriverStatusListener` implementation: \n\n class MyStatusListener implements DriverStatusListener {\n /** Called when background status is updated, during actions such as location reporting. */\n @Override\n public void updateStatus(\n StatusLevel statusLevel, StatusCode statusCode, String statusMsg, @Nullable Throwable cause) {\n // Existing implementation\n\n if (cause != null && cause instanceof StatusRuntimeException) {\n if (Status.NOT_FOUND.getCode().equals(cause.getStatus().getCode())) {\n // NOT_FOUND gRPC exception thrown by Fleet Engine.\n }\n }\n }\n }\n\n DriverContextBuilder.setDriverStatusListener(new MyStatusListener());\n\nEnable location updates\n-----------------------\n\nAfter you set up the listener, enable location updates as follows: \n\n### Java\n\n RidesharingVehicleReporter reporter = ...;\n\n reporter.enableLocationTracking();\n\n### Kotlin\n\n val reporter = ...\n\n reporter.enableLocationTracking()\n\n| **Note:** Calling `reporter.enableLocationTracking()` does not automatically set the vehicle state to `ONLINE`. You must set the vehicle state explicitly. For details, see [Set the vehicle state to online](#state).\n\n### Set the update interval\n\nBy default, the Driver SDK sends location updates at 10-second intervals\ninterval when the vehicle state is `ONLINE`. You can change this interval with\n`reporter.setLocationReportingInterval(long, TimeUnit)`. The minimum supported\nupdate interval is 5 seconds. More frequent updates may result in slower\nrequests and errors.\n\nSet the vehicle state to online\n-------------------------------\n\nWhen you turn on location updates, you can set the vehicle state to `ONLINE` to\nmake the vehicle available for `SearchVehicles` queries in Fleet Engine. The\nDriver SDK sends the updated vehicle state along with the location updates.\n\nYou can set the vehicle state directly in the Driver SDK or in the Fleet Engine\nserver. For more information, see [Update a Vehicle](/maps/documentation/mobility/fleet-engine/essentials/vehicles/on-demand-vehicle-fields#vehicle_state_field).\n\nThe following examples show how to set the vehicle state to online in the Driver\nSDK: \n\n### Java\n\n RidesharingVehicleReporter reporter = ...;\n\n reporter.enableLocationTracking();\n reporter.setVehicleState(VehicleState.ONLINE);\n\n### Kotlin\n\n val reporter = ...\n\n reporter.enableLocationTracking()\n reporter.setVehicleState(VehicleState.ONLINE)\n\n| **Caution:** You need to have location updates turned on before you set the vehicle online. If you try to do this with location updates off, you'll get an `IllegalStateException` error message.\n\nThe `StatusListener` also reports any errors that occur when updating the\nvehicle state.\n\nWhat's next\n-----------\n\n[Set the trip details](/maps/documentation/mobility/driver-sdk/on-demand/android/trip-details)"]]