{"repo":"623637646/ImpressionKit","free":true,"listed":false,"github":"https://github.com/623637646/ImpressionKit","clone":"git clone https://github.com/623637646/ImpressionKit.git","description":"A tool to detect impression events for UIView (exposure of UIView) in iOS. SwiftUI supported.","language":"Swift","stars":132,"topics":["exposure","exposed","usertracking","impression","impressions","ubt","track","swiftui"],"license":"MIT","category":"mobile-apps","readme_excerpt":"中文 ImpressionKit This is a user behavior tracking (UBT) tool to analyze impression events for UIView (exposure of UIView) in iOS. How it works: Hook the didMoveToWindow method of a UIView by SwiftHook, periodically check the view is on the screen or not. How to use ImpressionKit Main APIs It's quite simple. Use ImpressionGroup for UICollectionView, UITableView, List or other reusable view cases. More APIs Modify the detection (scan) interval (in seconds). Smaller detectionInterval means higher accuracy and higher CPU consumption. Modify the threshold (seconds) for the duration of a view on the screen. If the view's duration on the screen exceeds this threshold, it may trigger an impression. Modify the threshold (from 0 to 1) for the area ratio of the view on the screen. If the percentage of the view's area on the screen exceeds this threshold, it may trigger an impression. Modify the threshold (from 0 to 1) for the view opacity. If the view's opacity exceeds this threshold, it may trigger an impression. Retrigger the impression event in some situations. Refer to the Demo for more details. How to integrate ImpressionKit ImpressionKit can be integrated by cocoapods. Or use Swift Package Manager. SPM is supported from 3.1.0. Requirements - iOS 12.0+ (UIKit) - iOS 13.0+ (SwiftUI) - Xcode 15.1+","default_branch":null,"files":null,"tree":[],"storefront":"/r/623637646","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/623637646/ImpressionKit/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}