diff --git a/.devrev/.devrev/repo.yml b/.devrev/.devrev/repo.yml
new file mode 100644
index 0000000..a1d97bf
--- /dev/null
+++ b/.devrev/.devrev/repo.yml
@@ -0,0 +1 @@
+deployable: true
diff --git a/.github/.github/CODEOWNERS b/.github/.github/CODEOWNERS
new file mode 100644
index 0000000..0db9c6f
--- /dev/null
+++ b/.github/.github/CODEOWNERS
@@ -0,0 +1 @@
+* @zeeshan-devrev @rohan-devrev
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d9b1a26..6775852 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -49,7 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
- Fixed an issue related to rendering of the event properties.
- Improved the verified identification flow.
-- Fixed an issue with the session upload flow.
+- Fixed an issue with the session upload flow.
## 2.0.4
@@ -59,7 +59,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## 2.0.3
### Fixed
-- Fixed an issue with manual unmasking of input components.
+- Fixed an issue with manual unmasking of input components.
- Fixed an issue with session uploads when the app is rapidly killed.
## 2.0.2
@@ -81,11 +81,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## 1.1.5
### Added
-- Added `setShouldPreferSystemTheme` for dynamic theme handling.
-- Added support for masking compose views in session recordings & analytics.
+- Added `setShouldPreferSystemTheme` for dynamic theme handling.
+- Added support for masking compose views in session recordings & analytics.
### Fixed
-- Improved the initialization sequence of the observability SDK.
+- Improved the initialization sequence of the observability SDK.
## 1.1.4
@@ -100,20 +100,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Enhanced the session analytics feature to work better across different environments.
### Fixed
-- Fix the bugs related to on-demand sessions providing a more stable experience.
+- Fix the bugs related to on-demand sessions providing a more stable experience.
## 1.1.2
### Fixed
-- Fix the session recording experience in the SDK.
+- Fix the session recording experience in the SDK.
## 1.1.1
-### Added
+### Added
- Added new methods that allow tracking of screen transitions to understand user navigation within your app.
### Fixed
-- Fix the session recording upload bug.
+- Fix the session recording upload bug.
## 1.1.0
diff --git a/README.md b/README.md
index 10c11b0..e1b57e4 100644
--- a/README.md
+++ b/README.md
@@ -39,8 +39,10 @@ DevRev SDK, used for integrating DevRev services into your Android app.
- [Mask using predefined tags](#mask-using-predefined-tags)
- [Mask web view elements](#mask-web-view-elements)
- [Unmask web view elements](#unmask-web-view-elements)
+ - [User interaction tracking](#user-interaction-tracking)
- [Custom masking provider](#custom-masking-provider)
- [Timers](#timers)
+ - [Track handled exceptions](#track-handled-exceptions)
- [Track screens](#track-screens)
- [Manage screen transitions](#manage-screen-transitions)
- [Check if the screen is transitioning](#check-if-the-screen-is-transitioning)
@@ -902,6 +904,32 @@ For example:
```
+#### User interaction tracking
+
+The DevRev SDK automatically tracks user interactions such as taps, swipes, and scrolls. However, in some cases you may want to disable this tracking to prevent sensitive user actions from being recorded.
+
+To **temporarily disable** user interaction tracking, use the following method:
+
+- Kotlin
+ ```kotlin
+ DevRev.pauseUserInteractionTracking()
+ ```
+- Java
+ ```java
+ DevRevObservabilityExtKt.pauseUserInteractionTracking(DevRev.INSTANCE);
+ ```
+
+To **resume** user interaction tracking, use the following method:
+
+- Kotlin
+ ```kotlin
+ DevRev.resumeUserInteractionTracking()
+ ```
+- Java
+ ```java
+ DevRevObservabilityExtKt.resumeUserInteractionTracking(DevRev.INSTANCE);
+ ```
+
#### Custom masking provider
For advanced use cases, you can provide a custom masking provider to explicitly specify which regions of the UI should be masked during snapshots.
@@ -1037,6 +1065,55 @@ DevRevObservabilityExtKt.startTimer(DevRev.INSTANCE, "response-time", new HashMa
DevRevObservabilityExtKt.endTimer(DevRev.INSTANCE, "response-time", new HashMap().put("id", "task-1337"));
```
+#### Track handled exceptions
+
+You can report a handled exception from a catch block using the `sendException` 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
+)
+```
+
+- Java
+```java
+DevRevObservabilityExtKt.sendException(
+ DevRev.INSTANCE,
+ Throwable exceptionObj,
+ String exceptionTag
+);
+```
+
+For example:
+
+- Kotlin
+```kotlin
+try {
+ // Your code that may produce an exception
+} catch (e: Throwable) {
+ DevRev.sendException(
+ exceptionObj = e,
+ exceptionTag = "login-failure"
+ )
+}
+```
+
+- Java
+```java
+try {
+ // your code that may throw
+} catch (Throwable e) {
+ DevRevObservabilityExtKt.sendException(
+ DevRev.INSTANCE,
+ e,
+ "login-failure"
+ );
+}
+```
+
#### Track screens
The DevRev SDK offers automatic screen tracking to help you understand how users navigate through your app. Although activities and fragments are automatically tracked, you can manually track screens using the following method:
diff --git a/docs/html/core/ai.devrev.sdk.interfaces/index.html b/docs/html/core/ai.devrev.sdk.interfaces/index.html
index 0b3f184..21fb0fe 100644
--- a/docs/html/core/ai.devrev.sdk.interfaces/index.html
+++ b/docs/html/core/ai.devrev.sdk.interfaces/index.html
@@ -110,27 +110,8 @@
+
+
\ No newline at end of file
diff --git a/docs/html/core/ai.devrev.sdk.utils/index.html b/docs/html/core/ai.devrev.sdk.utils/index.html
index 7e11948..ee6fd63 100644
--- a/docs/html/core/ai.devrev.sdk.utils/index.html
+++ b/docs/html/core/ai.devrev.sdk.utils/index.html
@@ -110,36 +110,21 @@
This method temporarily stops the tracking of user interactions, preventing the SDK from capturing user actions (SWIPE, SINGLE_TAP, DOUBLE_TAP, etc.) during this period.
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/html/core/ai.devrev.sdk/resume-user-interaction-tracking.html b/docs/html/core/ai.devrev.sdk/resume-user-interaction-tracking.html
new file mode 100644
index 0000000..c5eeec0
--- /dev/null
+++ b/docs/html/core/ai.devrev.sdk/resume-user-interaction-tracking.html
@@ -0,0 +1,128 @@
+
+
+
+
+ resumeUserInteractionTracking
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This method resumes the tracking of user interactions, allowing the SDK to capture user actions (SWIPE, SINGLE_TAP, DOUBLE_TAP, etc.) for monitoring and analysis.