awty_engine 0.1.2
awty_engine: ^0.1.2 copied to clipboard
A reliable, decoupled step tracking engine for Flutter applications. Provides pure step counting and goal notification services. Includes test-drive app for easy testing.
Changelog #
All notable changes to the AWTY Engine project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.2 - 2025-08-11 #
Fixed #
- Package Structure: Fixed critical plugin registration issues that prevented Flutter from finding the native AWTY implementation
- Plugin Configuration: Added proper
plugin:section in pubspec.yaml for correct Flutter plugin recognition - Build Process: Resolved issues where native Android code wasn't being included in dependent app builds
- MissingPluginException: Fixed the root cause of
MissingPluginExceptionerrors in calling applications
Technical #
- Restored proper Flutter plugin structure with
platforms:configuration - Verified native Android implementation is correctly included in builds
- Confirmed package works with simple test applications
- Cleaned up contaminated package structure and removed duplicate code
0.1.0+1 - 2025-01-15 #
Changed #
- BREAKING: Simplified notification approach - AWTY now focuses solely on step tracking and goal detection
- BREAKING: Removed custom notifications, sounds, and vibrations (handled by calling application)
- BREAKING: Moved from Health Connect to
pedometerpackage for step counting - BREAKING: Changed from midnight step count resets to system boot resets
- BREAKING: Updated API to use
AwtyIntegrationclass instead of directAwtyEnginecalls
Added #
pedometerpackage integration for reliable step counting- Immediate
goalReachedcallbacks via platform channel - Test mode functionality (60-second countdown for development/testing)
- Service restart prevention logic to avoid duplicate goal completions
- Enhanced app name persistence across service restarts
- Comprehensive logging and debugging capabilities
Fixed #
- Service crashes after goal completion
- "Unknown App" notification issue
- App restart recovery and state persistence
- Permission handling and startup issues
- Race conditions in service lifecycle management
Technical #
- Native Android implementation using
pedometerpackage - Foreground service for reliable background operation
- SharedPreferences for state persistence
- Method channel communication between Flutter and native code
- Comprehensive error handling and logging
Known Limitations #
- iOS support not yet implemented (planned for future release)
- Android only (pedometer package)
[Unreleased] #
Added #
- Initial release preparation
- Comprehensive documentation
- MIT License
0.0.2+1 - 2025-01-15 #
Added #
- Android Health Connect integration
- Native Android foreground service for background step tracking
- Generic goal notification system with distinctive vibration patterns
- Goal state persistence across app restarts and device reboots
- Daily step count reset handling (midnight rollover)
- Baseline management to prevent negative step counts
- Comprehensive logging and status tracking
- Platform channel API for Flutter integration
Features #
AwtyEngine.startStepTracking()- Start tracking additional stepsAwtyEngine.stopStepTracking()- Stop step trackingAwtyEngine.getGoalStatus()- Check goal completion statusAwtyEngine.getStepTrackingState()- Get current tracking stateAwtyEngine.getAwtyLogTail()- Get service logs for debuggingAwtyEngine.requestDndOverridePermission()- Request notification policy access
Technical #
- Native Android implementation using Health Connect API
- Foreground service for reliable background operation
- SharedPreferences for state persistence
- Method channel communication between Flutter and native code
- Comprehensive error handling and logging
Known Limitations #
- iOS support not yet implemented (planned for future release)
- Android only (Health Connect API)