You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 29, 2025. It is now read-only.
As of #624, Swift’s TrackableState looks like this:
/**
Indicates Asset connection status (i.e. if courier is publishing their location)
*/
publicenumTrackableState:Int{
/**
Asset is connected to tracking system and we're receiving their position
*/
case online
/**
Asset is not connected
*/
case offline
/**
Connection has failed
*/
case failed
}
but in Android at 4d13ae7 it looks like this:
/** * Represents a state of a trackable that's being tracked by a publisher.*/sealedclassTrackableState {
/** * Trackable state is [Online] when it's being actively tracked. * This state can change to either [Offline] or [Failed].*/object Online : TrackableState()
/** * Trackable state is [Publishing] when its locations are being published but it is not able to detect subscribers or receive data from them. * This state allows the trackable to be actively tracked, however, its features are limited compared to the [Online] state. * This state can change to either [Online] or [Offline] or [Failed].*/object Publishing : TrackableState()
/** * Trackable state is [Offline] when it's connecting or recovering from an error and hopefully will soon be back in the [Online] or [Publishing]. * This state can change to either [Online] or [Publishing] or [Failed].*/data classOffline(valerrorInformation:ErrorInformation? = null) : TrackableState()
/** * Trackable state is [Failed] when there was an error from which we cannot recover. * This is a final state.*/data classFailed(valerrorInformation:ErrorInformation) : TrackableState()
}
That is, there is an extra state Publishing, and the Offline and Failed states can communicate error information (which presumably on Swift is instead communicated using the publisher and subscribers’ delegate methods).
We should make Swift consistent with Android here, including the communication of error information.
As of #624, Swift’s
TrackableStatelooks like this:but in Android at
4d13ae7it looks like this:That is, there is an extra state
Publishing, and theOfflineandFailedstates can communicate error information (which presumably on Swift is instead communicated using the publisher and subscribers’ delegate methods).We should make Swift consistent with Android here, including the communication of error information.