Releases: PostHog/posthog-android
core-v6.17.2
Patch Changes
- 8fa1bfc: Retry event uploads on HTTP 408 (Request Timeout). 408 is transient and retryable, and the logs endpoint already retries it; this aligns the events endpoint with the SDK compliance contract.
server-v2.6.1
Patch Changes
- 3deea3d: Include group context in the
$feature_flag_calledLRU dedupe key so group-scoped flags fire a separate event for each group a user is evaluated under, instead of being dedup-ed against the first group context the same(distinctId, flagKey, value)was seen under. The groups are canonicalized order-independently so two equal maps built in different insertion orders still dedupe to one event.
server-v2.6.0
Minor Changes
- 1aa4328: Add request-scoped context support for server-side captures, including PostHog tracing headers, session metadata, personless fallback events, and context-aware exception capture.
core-v6.17.1
Patch Changes
- 3deea3d: Include group context in the
$feature_flag_calledLRU dedupe key so group-scoped flags fire a separate event for each group a user is evaluated under, instead of being dedup-ed against the first group context the same(distinctId, flagKey, value)was seen under. The groups are canonicalized order-independently so two equal maps built in different insertion orders still dedupe to one event.
core-v6.17.0
Minor Changes
-
8d11398: Add public Logs API:
PostHog.logger.trace/debug/info/warn/error/fatal(message, attrs?)plus aPostHogLogsConfigfor serviceName, environment, resourceAttributes, rate cap, andaddBeforeSendredaction hooks. Logs ship via OTLP/JSON to/i/v1/logsand pick up auto-attached attributes (app.state, distinctId, sessionId, screen name, feature flags). Matches the equivalent surfaces on posthog-ios and posthog-react-native. -
8d11398: Auto-attach
$screen_nameto every captured event afterPostHog.screen()has been called (manually or via Activity-lifecycle auto-capture). Cached value is cleared byreset()andclose().To opt out of
$screen_namestamping entirely, setPostHogAndroidConfig.captureScreenViews = falseand stop callingPostHog.screen()manually. DisablingcaptureScreenViewsalone is not sufficient — a single manualPostHog.screen("Home")call will re-enable stamping.
core-v6.16.0
Minor Changes
- 09f86a6: Add public Logs API:
PostHog.logger.trace/debug/info/warn/error/fatal(message, attrs?)plus aPostHogLogsConfigfor serviceName, environment, resourceAttributes, rate cap, andaddBeforeSendredaction hooks. Logs ship via OTLP/JSON to/i/v1/logsand pick up auto-attached attributes (app.state, distinctId, sessionId, screen name, feature flags). Matches the equivalent surfaces on posthog-ios and posthog-react-native.
android-v3.47.0
Minor Changes
-
8d11398: Add public Logs API:
PostHog.logger.trace/debug/info/warn/error/fatal(message, attrs?)plus aPostHogLogsConfigfor serviceName, environment, resourceAttributes, rate cap, andaddBeforeSendredaction hooks. Logs ship via OTLP/JSON to/i/v1/logsand pick up auto-attached attributes (app.state, distinctId, sessionId, screen name, feature flags). Matches the equivalent surfaces on posthog-ios and posthog-react-native. -
8d11398: Auto-attach
$screen_nameto every captured event afterPostHog.screen()has been called (manually or via Activity-lifecycle auto-capture). Cached value is cleared byreset()andclose().To opt out of
$screen_namestamping entirely, setPostHogAndroidConfig.captureScreenViews = falseand stop callingPostHog.screen()manually. DisablingcaptureScreenViewsalone is not sufficient — a single manualPostHog.screen("Home")call will re-enable stamping.
android-v3.46.0
Minor Changes
- 09f86a6: Add public Logs API:
PostHog.logger.trace/debug/info/warn/error/fatal(message, attrs?)plus aPostHogLogsConfigfor serviceName, environment, resourceAttributes, rate cap, andaddBeforeSendredaction hooks. Logs ship via OTLP/JSON to/i/v1/logsand pick up auto-attached attributes (app.state, distinctId, sessionId, screen name, feature flags). Matches the equivalent surfaces on posthog-ios and posthog-react-native.
android-v3.45.1
Patch Changes
- 3cd4742: Fix session replay screenshots being dropped on screens with continuous animations (e.g. Lottie).
Previously, anyonDrawcallback received while PixelCopy was in flight caused the screenshot to be discarded. IntroducesisOnlyAnimationRedrawto distinguish animation-driven redraws from structural layout changes.
UsesView.hasTransientState()on the decor view, which Android propagates up from any animating descendant, as the signal.
server-v2.5.3
Patch Changes
- b498d90: Reject semver values with leading zeros in local flag evaluation. Per semver 2.0.0 §2, numeric identifiers must not include leading zeros — values like
1.07.3are not valid semver and should not match targeting conditions. Both override values and flag values are now validated; invalid inputs raiseInconclusiveMatchExceptionso the condition does not match.