
Price Estimation: The mobile app now uses backend pricing logic for booking creation, edits, and addition selection to ensure accuracy.
Prevent end-station changes once a booking is Delivered (vehicle assigned); users can only extend time. This keeps customer communication and operator state aligned.
Request Booking Confirmation: Updated the success screen for requested bookings to clearly state "Your booking request has been submitted" instead of implying immediate confirmation. This prevents user confusion regarding the status of bookings requiring approval.
Edit Booking Availability Check: The "Edit" button for requested bookings now checks for vehicle availability before allowing changes; if no vehicles are available, a clear informational message is shown. This prevents users from entering an edit flow that cannot be completed.
Active Rental Return Location: The active rental modal now consistently displays the correct return station address. This ensures users know exactly where to return the vehicle, reducing wrong-location drop-offs.
Midnight Booking Selection: Fixed an issue where time selection was unavailable between 00:00 and 02:00. Users can now successfully select start times during this window, preventing lost bookings during late-night hours.
Business Trip Reason Logic: The "Reason for business trip" field now strictly respects the operator's configuration settings. This ensures users are not forced to enter a reason if the operator has configured it as optional, removing friction from the booking flow.
App Startup Reliability: Added robust error handling during app startup to detect if required settings fail to load. The app now prevents users from entering a broken state (e.g., missing login methods) and prompts for a restart if data is incomplete.
App Startup Optimization: Streamlined the application initialization process by consolidating data retrieval for logged-in users. This significantly reduces load times and ensures a smoother launch experience.
App Startup Performance: Optimized the app startup procedure for not logged in users, by removing unnecessary API calls. This improves app launch speed and reduces noise in error logging.
React Native Upgrade: We upgraded the mobile framework to meet current Google Play SDK requirements and refreshed core dependencies. This improves long-term compatibility on newer Android devices and increases build and startup stability across a wider range of hardware.
Startup/session hardening: Replaced the mobile cryptography library and disabled Android backups for encrypted tokens to reduce logouts and launch issues. This makes opening the app more reliable across devices.
Show the active membership name correctly in the app, reducing confusion and support load.
Bluetooth Token Reliability: Fixed an issue where some Bluetooth tokens were not properly utilized during pickup, causing booking start failures. This ensures users can reliably unlock vehicles via Bluetooth without fallback errors.
Error Messaging: Improved error handling for vehicle commands to display specific issues (e.g., "Vehicle Must Be Off") instead of generic errors. This helps users understand why an action failed so they can correct it immediately.
Pricing Crash: Fixed a crash in the "Past Rentals" screen caused by missing properties in older pricing versions. This ensures users can view their ride history without the app closing unexpectedly.
POI URLs: Fixed a bug where configured website URLs for Points of Interest (POIs) were not displayed in the app. Users can now access relevant links (e.g., parking instructions) directly from the map.
Splash Screen Recovery on Android: A critical issue that caused some Android users to get stuck on the splash screen has been resolved. The fix involves updating how the app handles secure data, specifically bypassing problems caused by a certain type of encryption chip found in a subset of Android devices.