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/location and networking.
- You control which environment it talks to (
SANDBOXvsLIVE).
What happens if the device is offline?
If the device is temporarily offline:startSession/startSessionWithDeviceInfoandstopSessionmay fail if the backend cannot be reached.- Telemetry uploads can be delayed until connectivity returns.
- Handle errors from
startSession/stopSessiongracefully 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
desmo-android-sdkdependency from your Gradle configuration.
How do I test without affecting production data?
Use:- A sandbox publishable key (
pk_sandbox_...). DesmoEnvironment.SANDBOXwhen callingDesmo.setup.
How do I see what the SDK is doing?
- Ensure logging is enabled (the default).
- Watch Logcat for:
- Session start/stop events.
- HTTP requests and responses.
- Any warnings or errors emitted by the SDK.
- Use the Android Logging, Debugging & Troubleshooting guide for a detailed checklist.
How do I upgrade the SDK?
When a new version is released:- Update the version in your Gradle dependency:
- Sync Gradle and rebuild your app.
- Re-run your tests and core delivery flows.
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.