Is the SDK safe to run in production?
Yes. The SDK is designed to run continuously during delivery sessions:- It batches telemetry to reduce network overhead.
- It uses efficient system APIs for motion and networking.
- You control which environment it talks to (
.sandboxvs.live).
What happens if the device is offline?
If the device is temporarily offline:startSessionandstopSessionmay fail if the backend cannot be reached.- Telemetry uploads can be delayed until connectivity returns.
- Handle errors from
startSessionandstopSessiongracefully in your UI. - Consider allowing drivers to retry
stopSessionif the first attempt fails.
Can I disable or remove the SDK?
Yes. You can:- Stop calling
Desmo.setupand any session APIs. - Remove the
DesmoTraceSDKpackage from your app target in Xcode.
How do I test without affecting production data?
Use:- A sandbox publishable key (
pk_sandbox_...). environment: .sandboxwhen callingDesmo.setup.
What are session types and when should I use each?
Every session requires aSessionType:
| Type | When to use |
|---|---|
.pickup | Driver is collecting a package |
.drop | Driver is delivering a package |
.transit | Driver is traveling between stops |
.pickup and .drop, you must provide an address. For .transit, the address is optional.
How do I request permissions upfront?
CallDesmo.requestPermissions() during app onboarding to ensure all sensor data flows immediately when sessions start:
How do I see what the SDK is doing?
- Enable logging (the default) so that:
- Session start/stop and HTTP status codes are printed to the console.
- You can see basic telemetry upload behavior.
- Use the Logging, Debugging & Troubleshooting guide for a detailed checklist.
How do I upgrade the SDK?
When a new version is released:- In Xcode, open Package Dependencies.
- Update
desmo-iOS-sdkto the desired version (for example, bump the minimum from1.0.2to a newer tag). - Rebuild and rerun your tests.
Desmo.setup, startSession, and stopSession, most changes are backwards compatible as long as you stay within the same major version.
Who do I contact for support?
For API keys, backend configuration, or integration questions:- Reach out to your Desmo contact.
- Or use the support channel linked from the Desmo dashboard.