obsly_flutter 1.0.1 copy "obsly_flutter: ^1.0.1" to clipboard
obsly_flutter: ^1.0.1 copied to clipboard

Advanced Flutter SDK for comprehensive user behavior analytics, UI event tracking, automatic screenshot capture with debug tools, and GoRouter navigation support.

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.0.1 - 2025-01-08 #

Added #

  • Crash Event Capture: Added crash events on tap pay bills for better error tracking
  • Red Dot Position Indicator: Visual position indicator for zoom view in debug tools
  • Histogram Timings: Enhanced timing capture with proper bucket handling
  • User Agent Parser: Added comprehensive user agent parsing capabilities
  • Movable Debug Tools: Draggable and resizable Obsly tools button for mobile devices
  • Screenshot Zoom: Fullscreen zoom functionality for mobile screenshots
  • PII Filtering System: Flexible PII filtering for banking apps with rule editor
  • Configuration Assistant: Dart/Flutter-based configuration generator
  • Rate Limiting Controls: Optional rate limit disable functionality
  • Dio HTTP Integration: Elegant HTTP client integration with extension API
  • GoRouter Support: Complete navigation tracking support for GoRouter applications

Enhanced #

  • Logging Optimization: Massive reduction in excessive debug logging noise
  • Rules Engine: JavaScript rule engine optimizations with session persistence
  • UI Event Capture: Improved tap vs scroll detection and gesture handling
  • Debug Tools UI: Better visual controls and layout improvements
  • Performance: Optimized rule conversion and storage operations
  • Test Coverage: Comprehensive test improvements and optimization

Fixed #

  • Storage Logging: Reduced verbose storage operation logging
  • Event Lifecycle: Moved excessive event logs from debug to verbose level
  • Timestamp Handling: Fixed numeric timestamp parsing in JsonFactoryMixin
  • UI Integration: Resolved various UI event registration issues
  • Navigation Errors: Fixed timer not found errors in navigation lifecycle
  • Histogram Buckets: Replaced infinity values with safe serialization limits
  • Buffer Configuration: Fixed buffer limit validation in configuration
  • Test Failures: Resolved multiple test failures improving from 233 to 2 failing tests
  • Memory Management: Better cleanup and disposal of interceptor components
  • Type Safety: Enhanced null handling and defensive type checking

Breaking Changes #

  • None - this release maintains backward compatibility

Performance #

  • 68% Code Reduction: Massive optimization in ConfigEditorScreen
  • 75% Size Reduction: Ultra-compact code implementation
  • Logging Efficiency: Converted debug logs inside loops to verbose level
  • Storage Operations: Optimized storage access patterns

Technical Debt #

  • TODO/FIXME Policy: Enforced comment policy with updated analysis settings
  • Import Structure: Replaced relative imports with package imports
  • Linting Rules: Comprehensive linting improvements and fixes
  • Code Quality: Removed dead code and improved maintainability

0.3.4 - 2025-09-03 #

Documentation #

  • Professional Branding: Refined README with more professional terminology
  • Clear Positioning: Changed title to "Advanced User Behavior Analytics"
  • Clean Messaging: Removed third-party references for cleaner presentation
  • Improved Clarity: Enhanced initialization and integration documentation

0.3.3 - 2025-09-03 #

Enhanced #

  • UI Event Detection: Improved tap vs scroll detection mechanism in UI integration
  • Event Timing: Fixed UI event route screenshot timing mismatch issues
  • Gesture Recognition: Streamlined gesture detector by removing unused callbacks
  • Test Coverage: Enhanced test runner script and overall test framework stability

Fixed #

  • UI integration timing issues with navigation and screenshot capture
  • Tap text extraction failures in certain scenarios
  • Gesture detection optimization and performance improvements

0.3.2 - 2025-09-03 #

Added #

  • Dio HTTP Client Integration: Full support for Dio HTTP client monitoring alongside native HTTP client
  • Extension API: Added dio.addObsly() extension method for seamless Dio integration
  • Automatic Request Interception: Capture requests, responses, and errors from Dio instances
  • Duplicate Prevention: Intelligent detection to prevent adding multiple Obsly interceptors
  • Real Integration Tests: Comprehensive test suite without mocks to verify actual HTTP interception

Technical #

  • Added DioIntegration class for managing Dio HTTP monitoring
  • Added ObslyDioExtension providing addObsly() API
  • Integrated Dio initialization alongside existing HTTP integration
  • Maintained backward compatibility with existing HTTP client monitoring

0.3.1 - 2025-09-02 #

Fixed #

  • GoRouter UI Events: Fixed critical issue where UI events (clicks, taps, interactions) were not being registered in GoRouter-based applications (#171)
  • Added WidgetsBinding fallback context for UI event processing when NavigatorKey context is null (common in GoRouter apps)
  • Improved UI event capture reliability across different navigation architectures

Added #

  • Comprehensive test coverage for GoRouter UI events integration
  • Enhanced debugging capabilities for GoRouter UI event troubleshooting
  • Updated documentation with detailed GoRouter integration examples and troubleshooting guide

Documentation #

  • Added comprehensive "Routing and Navigation Support" section to README
  • Included GoRouter setup examples and best practices
  • Added troubleshooting guide for navigation issues
  • Enhanced feature highlighting for GoRouter integration

0.3.0 - 2025-09-02 #

Added #

  • GoRouter Navigation Support: Complete integration with GoRouter for automatic navigation tracking
  • New ObslySDK.goRouterObservers getter for seamless GoRouter integration
  • Automatic MaterialApp.router detection and GoRouter initialization
  • NavigatorObserver implementation for capturing all GoRouter navigation events (push, pop, replace, remove)
  • Real-time route information extraction using GoRouter's routeInformationProvider API
  • Support for route parameters and complex GoRouter configurations
  • Framework-agnostic navigation provider system supporting multiple routing libraries

Changed #

  • BREAKING CHANGE: Removed manual GoRouter integration methods (initializeGoRouter, notifyRouteChange, isGoRouterActive) in favor of automatic detection
  • Simplified GoRouter integration to single observer pattern: observers: ObslySDK.goRouterObservers
  • Removed go_router from main dependencies (now dev_dependency only for testing)
  • Enhanced AppWrapper to automatically detect and initialize GoRouter when MaterialApp.router is used
  • Updated package description to highlight GoRouter navigation support

Removed #

  • Legacy manual GoRouter integration helper class (137 lines of unused code)
  • Multiple redundant API methods replaced by automatic integration
  • Platform-specific files from obsly_demo_app (Android, iOS, macOS) - now web-only demo

Technical Details #

  • Uses dynamic typing and reflection for GoRouter integration without hard dependency
  • Automatic route information extraction from GoRouter.routeInformationProvider.value.uri.path
  • Single initialization prevents multiple GoRouter setup calls
  • Complete test coverage with real GoRouter API integration tests
  • Maintains backward compatibility for non-GoRouter applications

0.2.1 - 2025-01-03 #

Fixed #

  • Fixed .gitignore patterns for Android gradle build artifacts
  • Fixed setState warning in rules_helpers.dart debug component
  • Removed erroneously tracked gradle cache files from repository

Changed #

  • Improved repository cleanliness for pub.flutter-io.cn publishing
  • Enhanced code quality and linting compliance

0.2.0 - 2025-01-03 #

Added #

  • Advanced Flutter SDK for comprehensive user behavior analytics
  • Automatic UI, navigation, network, console and crash capture
  • Optional screenshot capture on UI and rage-click events
  • Performance transactions and steps tracking
  • Custom metrics (counter, gauge, histogram timer)
  • Tags, context, session and user identification
  • Rate limiting system with configurable limits per event type
  • Request body and headers whitelist configuration
  • Debug tools with overlay for development
  • Comprehensive rules engine with JavaScript compatibility
  • Multi-platform support (iOS, Android, Web, macOS)
  • Automatic interceptors for HTTP requests, crashes, and UI events
  • Screenshot capture with boundary management
  • Session management with automatic rotation
  • Storage system with Hive backend
  • Device and app information collection
  • Defensive wrapper ensuring stability

Features #

  • Initialization: Easy SDK setup with comprehensive configuration options
  • App Wrapping: Required wrapper for global UI and navigation interception
  • Configuration: Extensive config options matching JavaScript Browser SDK API
  • Developer Methods: Complete API for session, client, and application management
  • Rate Limiting: Configurable per-event-type rate limits with bucket system
  • Request Monitoring: Whitelist-based request/response body and headers capture
  • Debug Tools: Development overlay for event inspection and testing
  • Rules Engine: JavaScript-compatible rules processing with Dart implementation
  • Multi-platform: Cross-platform support with platform-specific optimizations

Technical #

  • Flutter >= 3.0.0 compatibility
  • Dart >= 3.4.0 support
  • Comprehensive test suite with >90% coverage
  • Performance optimizations and memory management
  • Defensive programming patterns preventing app crashes
  • Modular architecture with clear separation of concerns

[Unreleased] #

Planned #

  • Enhanced analytics dashboards
  • Additional metric types
  • Extended platform support
  • Performance optimizations
  • Documentation improvements

For more information about releases and migration guides, see our documentation.

0
likes
130
points
1
downloads

Publisher

verified publisherobsly.io

Weekly Downloads

Advanced Flutter SDK for comprehensive user behavior analytics, UI event tracking, automatic screenshot capture with debug tools, and GoRouter navigation support.

Repository (GitHub)
View/report issues

Documentation

Documentation
API reference

License

MIT (license)

Dependencies

battery_plus, connectivity_plus, device_info_plus, dio, flutter, flutter_svg, hive, hive_flutter, http, jmespath, meta, package_info_plus, path_provider, shared_preferences, uuid

More

Packages that depend on obsly_flutter