Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
190 changes: 190 additions & 0 deletions .snyk
Original file line number Diff line number Diff line change
@@ -0,0 +1,190 @@
# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
version: v1.25.1
# ignores vulnerabilities until expiry date; change duration by modifying expiry date
ignore:
'SNYK:LIC:MAVEN:JUNIT:JUNIT:EPL-1.0':
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution by Google
for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2023-3635:
- '*':
reason: >-
GzipSource in Okio mishandles exceptions when parsing malformed gzip
buffers, potentially leading to a denial of service. Ignoring
temporarily to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-COMFASTERXMLJACKSONCORE-7569538:
- '*':
reason: >-
Jackson-databind before 2.9.10.8 mishandles interactions between serialization
gadgets and typing, related to JNDIConnectionSource. Ignoring temporarily to
assess impact and monitor for patches.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2022-48476:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-49580:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2025-52999:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2020-29582:
- '*':
reason: >-
Awaiting Realm's update to support Kotlin 2.1.0. Cannot upgrade Kotlin
until Realm updates its dependency. Ignoring temporarily to monitor
for Realm's updates.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-ORGJETBRAINSKOTLIN-2393744:
- '*':
reason: >-
Awaiting Realm's update to support Kotlin 2.1.0. Cannot upgrade Kotlin until
Realm updates its dependency. Ignoring temporarily to monitor for Realm's
updates.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2022-40152:
- '*':
reason: >-
Woodstox XML parser is vulnerable to stack overflow when processing
malicious DTDs, potentially leading to denial of service. Ignoring
temporarily to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-COMFASTERXMLWOODSTOX-3091135:
- '*':
reason: >-
Woodstox-core versions before 5.4.0 and between 6.0.0.pr1 and 6.4.0
are vulnerable to denial of service via stack overflow when processing
malicious DTDs. Ignoring temporarily to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-COMFASTERXMLJACKSONCORE-10332631:
- '*':
reason: >-
Woodstox-core versions before 5.4.0 and between 6.0.0.pr1 and 6.4.0
are vulnerable to denial of service via stack overflow when processing
malicious DTDs. Ignoring temporarily to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2023-34339:
- '*':
reason: >-
JetBrains Ktor before 2.3.1 could expose authentication data in
exception messages. Ignoring temporarily to monitor for upstream
fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-43398:
- '*':
reason: >-
REXML gem before 3.3.6 has a DoS vulnerability when parsing XML with
deeply nested elements having the same local name attributes. Ignoring
temporarily to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-41946:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-47220:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-41123:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-49761:
- '*':
reason: >-
REXML gem before 3.3.9 has a ReDoS vulnerability when parsing XML with
many digits in hex numeric character references. Ignoring temporarily
to monitor for upstream fixes.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-35176:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
CVE-2024-39908:
- '*':
reason: >-
Temporarily ignored pending further evaluation or upstream resolution
by Google for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-IOKTOR-8230428:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for Ktor-related dependencies.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-IOKTOR-8492193:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for Ktor-related dependencies. for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-COMFASTERXMLJACKSONCORE-10500754:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for Ktor-related dependencies. for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-RUBY-REXML-12878608:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for Ktor-related dependencies. for the Android Gradle Plugin.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-JAVA-CHQOSLOGBACK-13169722:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for Ktlint dependency resolution.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
SNYK-RUBY-REXML-13110060:
- '*':
reason: >-
Temporarily ignored to assess impact and await potential upstream
fixes for fastlane updates.
expires: 2026-01-03T00:00:00.000Z
created: 2025-12-03T18:57:22.454Z
patch: {}
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,33 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 2.2.10

### Added
- Added a capture error API to allow apps to report runtime errors through the SDK.

### Changed
- Refined rage tap detection logic to avoid misclassifying double taps as rage taps.
- Optimized session recording and network request handling to reduce overhead during active sessions.

### Fixed
- Fixed incorrect engagement time calculation in crash scenarios.
- Fixed ANRs occurring during SDK initialization.

## 2.2.9

### Added
- Support for session capturing on Android 16 devices.
- Support for tracking hybrid platforms and their versions.

### Changed
- Improved masking behavior on `RecyclerView` scrolls.
- Improved session upload reliability and stability.
- Optimized network bandwidth usage.

### Fixed
- Fixed an issue in the logout flow.

## 2.2.8

### Deprecated
Expand Down
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ DevRev SDK, used for integrating DevRev services into your Android app.
- [User interaction tracking](#user-interaction-tracking)
- [Custom masking provider](#custom-masking-provider)
- [Timers](#timers)
- [Track handled exceptions](#track-handled-exceptions)
- [Capture errors](#capture-errors)
- [Track screens](#track-screens)
- [Manage screen transitions](#manage-screen-transitions)
- [Check if the screen is transitioning](#check-if-the-screen-is-transitioning)
Expand Down Expand Up @@ -1041,25 +1041,25 @@ DevRevObservabilityExtKt.startTimer(DevRev.INSTANCE, "response-time", new HashMa
DevRevObservabilityExtKt.endTimer(DevRev.INSTANCE, "response-time", new HashMap<String, String>().put("id", "task-1337"));
```

#### Track handled exceptions
#### Capture errors

You can report a handled exception from a catch block using the `sendException` function.
You can report a handled exception from a catch block using the `captureError` function.
This ensures that even if the exception is handled in your app, it will still be logged for diagnostics.

- Kotlin
```kotlin
DevRev.sendException(
exceptionObj: Throwable,
exceptionTag: String
DevRev.captureError(
exception: Throwable,
tag: String
)
```

- Java
```java
DevRevObservabilityExtKt.sendException(
DevRevObservabilityExtKt.captureError(
DevRev.INSTANCE,
Throwable exceptionObj,
String exceptionTag
Throwable exception,
String tag
);
```

Expand All @@ -1070,9 +1070,9 @@ For example:
try {
// Your code that may produce an exception
} catch (e: Throwable) {
DevRev.sendException(
exceptionObj = e,
exceptionTag = "login-failure"
DevRev.captureError(
exception = e,
tag = "login-failure"
)
}
```
Expand All @@ -1082,7 +1082,7 @@ try {
try {
// your code that may throw
} catch (Throwable e) {
DevRevObservabilityExtKt.sendException(
DevRevObservabilityExtKt.captureError(
DevRev.INSTANCE,
e,
"login-failure"
Expand Down
Loading