Skip to content

fix: deprecate defaultTracking and add autocapture#204

Merged
PouriaAmini merged 9 commits intoamplitude:feature-autocapturefrom
PouriaAmini:deprecate-default-tracking
Aug 2, 2024
Merged

fix: deprecate defaultTracking and add autocapture#204
PouriaAmini merged 9 commits intoamplitude:feature-autocapturefrom
PouriaAmini:deprecate-default-tracking

Conversation

@PouriaAmini
Copy link
Copy Markdown
Contributor

Summary

This PR deprecates the defaultTracking of Configuration of the SDK and adds autocapture as a replacement.

Checklist

  • Does your PR title have the correct title format?
  • Does your PR have a breaking change?: no

Copy link
Copy Markdown
Collaborator

@Mercy811 Mercy811 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Pouria for the PR. It looks good to me to use a convenience initializer with config.defaultTracking to keep supporting the interface so that existing customers are not affected, while new customers can use the updated initializer with config.autocapture directly.

@PouriaAmini PouriaAmini requested a review from crleona August 1, 2024 16:24
@PouriaAmini PouriaAmini requested a review from crleona August 2, 2024 18:36
Comment on lines +35 to +52
public static func sessions() -> ObjCAutocaptureOptions {
return ObjCAutocaptureOptions(options: .sessions)
}

@objc
public static func appLifecycles() -> ObjCAutocaptureOptions {
return ObjCAutocaptureOptions(options: .appLifecycles)
}

@objc
public static func screenViews() -> ObjCAutocaptureOptions {
return ObjCAutocaptureOptions(options: .screenViews)
}

@objc
public static func elementInteractions() -> ObjCAutocaptureOptions {
return ObjCAutocaptureOptions(options: .elementInteractions)
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any reason to have these as functions vs static lets?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, should be fixed in cb49254.

@PouriaAmini PouriaAmini merged commit 8f6703e into amplitude:feature-autocapture Aug 2, 2024
PouriaAmini added a commit that referenced this pull request Aug 8, 2024
* feat: add user interactions capture (#190)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* feat: add support for uitextview autocapture (#195)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* refactor: guard on action name

* feat: add support for uitextview capture

* fix: disable action method tracking support for UITextView

* fix: fix lint issue

* style: remove amp_ prefix from objc methods

* feat: add support for gesture recognizer autocapture (#196)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* refactor: guard on action name

* feat: add support for uitextview capture

* fix: disable action method tracking support for UITextView

* fix: fix lint issue

* style: remove amp_ prefix from objc methods

* feat: add support for gesture recognizers autocapture

* fix: fix lint issue

* fix: exclude unsupported gestures in tvos

* fix: track touchupinside and valuechanged only (#199)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events for autocapture (#202)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events

* fix: remove row selected event

* fix: track touchUpInside for any element (#203)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events

* fix: remove row selected event

* fix: track any touchUpInside

* fix: capture image name as a fallback for buttons title

* fix: deprecate defaultTracking and add autocapture (#204)

* fix: deprecate defaultTracking and add autocapture

* fix: fix schema for the new test

* fix: fix typo

* fix: fix typo

* fix: support optionset for autocapture options

* fix: fix autocaptureoptions test

* fix: fix failing test

* fix: simplified the logic to deprecate defaultTracking

* style: make autocapture options for objc as properties

* fix: disable swiftui support for autocapture (#206)

* fix: disable swiftui support for autocapture

* fix: disable support for swiftui gesture recognizers autocapture

* fix: fix typo

* fix: filter scrolls for scrollable views

* fix: imporve support for swiftui

* fix: track screen name autocapture (#207)

* fix: change element viewController to screenName

* fix: remove title since it's already captured by screenName

* fix: track changes to defaultTracking after initialization (#208)

* fix: track changes to defaultTracking after initialization

* fix: replace defaultTracking with autocapture if changed

* fix: fix typo

* fix: fix nit

* style: rename parameter name
github-actions bot pushed a commit that referenced this pull request Aug 8, 2024
# [1.8.0](v1.7.0...v1.8.0) (2024-08-08)

### Features

* Feature Autocapture ([#209](#209)) ([4ab5673](4ab5673)), closes [#190](#190) [#195](#195) [#196](#196) [#199](#199) [#202](#202) [#203](#203) [#204](#204) [#206](#206) [#207](#207) [#208](#208)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants