Otto SDK per un solo contratto congelato. Android, iOS, Flutter, Kotlin Multiplatform, React Native, Unity, .NET MAUI ed Electron parlano tutti lo stesso protocollo di trasmissione, così un prodotto rilasciato su quattro piattaforme riporta in un modo solo.
Funziona senza rete. Le schermate finiscono in coda sul disco e sopravvivono all'uscita, al crash e a quindici giorni senza rete. Le sessioni che contano di più sono esattamente quelle che un SDK ingenuo perde.
Non conta a doppio. Ogni evento porta un identificativo coniato una volta sola e rimandato senza modifiche, così un lotto rimandato viene riconosciuto invece che contato due volte. Una coda senza quello inventa dati invece di salvarli.
Sopravvive a un orologio sbagliato. Ogni lotto registra quando è stato svuotato, così un dispositivo impostato a martedì prossimo non riporta martedì prossimo.
Errori con lo stack, e se erano fatali. Abbastanza da vedere una versione sbagliata nei numeri invece che nelle recensioni.
Il tuo sito e la tua app in un solo account. Un accesso, una fattura, e la stessa finestra di sessione su tutti e due, così «una sessione» vuol dire una cosa sola per entrambi.