About this project
## Unity Engine SDK for Aptabase
This package instruments Unity Engine projects with Aptabase, an open-source, privacy-first analytics platform for mobile, desktop, and web apps.
### Installation
Install via Unity Package Manager by adding the git URL https://github.com/aptabase/aptabase-unity.git through Window > Package Manager > Add Package from git URL.
### Configuration
After obtaining an App Key from Aptabase, set it in `Aptabase/Resources/AptabaseSettings.Asset`. The host is auto-selected based on the key; for self-hosted deployments a `SelfHostURL` field appears. Keys prefixed with `A-DEV-*` target a local Aptabase instance at `https://localhost:3000`.
Optional settings include overriding the app version (`AppVersion`), specifying a platform-specific build number (`AppBuildNumber`), adjusting event flush intervals (`FlushInterval`), and enabling automatic crash reporting (`EnableCrashReporting`).
### Event Tracking
Events are logged via `Aptabase.TrackEvent()` within the `AptabaseSDK` namespace. Custom properties accept only strings and numbers. Events are batched and sent every 60 seconds in production or 2 seconds in development. Manual flushing is available via `Aptabase.Flush()`.
The SDK auto-enriches events with OS, app version, and other metadata. No events are tracked automatically — all recording must be done manually.
### Error Tracking (Beta)
Use `Aptabase.TrackError(ex)` for handled exceptions and `Aptabase.TrackError(ex, fatal: true)` for unrecoverable errors. With `EnableCrashReporting`, the SDK automatically reports:
- Caught exceptions from MonoBehaviour callbacks, coroutines, and `Debug.LogException` as `unhandled`
- Process-terminating exceptions as `crash` with `fatal` severity
- Unobserved Task exceptions as `taskException`
Each report includes exception type, message, stack trace, severity, and capture method. Up to 100 unique errors per session are reported. Native crashes are not captured.
### Additional Features
- Response listener via `SetResponseListener()` for HTTP status codes
- Enable/disable the SDK with `SetEnabled()`
- Apple App Store privacy form guidance provided
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.