Skip to content

iOS: Missing status update callbacks (statusLevel/statusCode) - parity with Android #83

@ringo-redbit

Description

@ringo-redbit

Description

The iOS implementation of the Driver SDK is missing status update callbacks that are available on Android. This creates a platform inconsistency where Android apps receive updateStatus events with status level/code information, but iOS apps do not.

Current Behavior

Android (works):

  • DriverContext has .setDriverStatusListener() method
  • Receives callbacks with statusLevel, statusCode, statusMsg
  • Events are emitted as updateStatus to React Native
  • Example statuses: INITIALIZATION_STARTED, VEHICLE_NOT_FOUND, UNAUTHORIZED, etc.

iOS (missing):

  • GMTDDriverContext has no status listener API
  • No delegate protocol for status updates
  • Only vehicle update events work: didSucceedVehicleUpdate, didFailVehicleUpdate
  • No visibility into SDK initialization status, auth errors, or other diagnostic information

Expected Behavior

iOS should provide equivalent status callback functionality as Android, allowing apps to:

  • Monitor SDK initialization progress
  • Detect authentication/authorization failures
  • Receive diagnostic status codes for troubleshooting
  • Implement unified cross-platform error handling

Code References

Android implementation:

// android/src/main/java/com/google/android/react/driversdk/lmfs/DeliveryDriverModule.java
DriverContext driverContext = DriverContext.builder(application)
    .setDriverStatusListener(
        (statusLevel, statusCode, statusMsg, error) -> {
          updateStatus(statusLevel, statusCode, statusMsg);
        })

Metadata

Metadata

Labels

triage meI really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions