awty_engine 0.1.8
awty_engine: ^0.1.8 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 this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.8 - 2025-08-11 #
Fixed #
- Plugin Recognition: Complete refactor from static companion object to instance-based method handling
- Flutter Plugin Discovery: AWTY should now be properly recognized by Flutter's plugin system
- MissingPluginException: This should resolve the core plugin registration issue
Technical #
- AwtyPlatformChannel: Now implements
MethodCallHandlerand is instantiable - AwtyPlugin: Simplified to create instance of
AwtyPlatformChanneland set as handler - Instance-based Architecture: Follows Flutter's expected plugin pattern for proper registration
- Context Management: Each plugin instance has its own context and method handling
Breaking Changes #
- Plugin Architecture: Complete rewrite of method handling from static to instance-based
- Service Callbacks:
notifyMilestoneReached()now requires proper instance management
0.1.7 - 2025-08-11 #
Fixed #
- Plugin Recognition: Restored missing
plugin_platform_interfacedependency - Flutter Plugin Discovery: This dependency is critical for Flutter to recognize AWTY as a plugin
- Plugin Registration: Should now properly register in generated
dart_plugin_registrant.dart
Technical #
- Added back
plugin_platform_interface: ^2.0.2to dependencies - This was accidentally removed in 0.1.6, causing Flutter to not recognize AWTY as a plugin
0.1.6 - 2025-08-11 #
Fixed #
- Null Safety: Fixed null handling in getServiceStatus method
- Type Inference: Resolved Pair<String, String?> type mismatch in mapOf calls
- Kotlin Compilation: Fixed remaining compilation errors preventing builds
Technical #
- Added null coalescing for reachedTime field:
(reachedTime ?: "") - Ensured all mapOf entries have consistent non-null types
- Maintained explicit type parameters for Map<String, Any> returns
0.1.5 - 2025-08-11 #
Fixed #
- Kotlin Compilation: Fixed type mismatch errors in AwtyPlatformChannel
- Build Errors: Resolved compilation failures that prevented package building
- Type Safety: Fixed Map<String, Any> return type issues in service methods
Technical #
- Fixed explicit type parameters in mapOf<String, Any> calls
- Removed unnecessary setPlatformChannel call that caused compilation errors
- Ensured all companion object methods have correct return types
0.1.4 - 2025-08-11 #
Fixed #
- Plugin Architecture: Completely rewrote AWTY to follow Flutter's official plugin template
- Method Call Handling: Plugin now directly implements MethodCallHandler instead of delegation
- Plugin Registration: Fixed critical issue preventing Flutter from discovering and registering the plugin
- MissingPluginException: Resolved persistent plugin registration failures in calling applications
Technical #
- Rewrote
AwtyPlugin.ktto implement bothFlutterPluginandMethodCallHandlerdirectly - Simplified
AwtyPlatformChannel.ktto be a utility class rather than a method handler - Removed complex delegation pattern that was breaking Flutter's plugin discovery
- Plugin now follows the exact structure of Flutter's official plugin template
Breaking Changes #
- Plugin API: Internal plugin architecture changed significantly
- Method Handling: All method calls now go directly through the plugin class
- Platform Channel: Simplified to static utility methods
0.1.3 - 2025-08-11 #
Fixed #
- Plugin Architecture: Fixed AWTY to conform to Flutter's official plugin requirements
- Plugin Discovery: Added
plugin_platform_interfacedependency for proper plugin recognition - Method Call Handling: Updated
AwtyPluginto implementMethodCallHandlerdirectly - Plugin Registration: Fixed plugin registration pattern to match Flutter's official template
Technical #
- Added
plugin_platform_interface: ^2.0.2dependency - Updated
AwtyPluginto implement bothFlutterPluginandMethodCallHandler - Changed method call handling to delegate through the plugin class
- Plugin now follows Flutter's official plugin architecture pattern
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 #
Added #
- Initial release of AWTY Engine
- Basic step tracking functionality
- Goal-based notifications
- Android foreground service support
- Method channel communication
Technical #
- Kotlin-based Android implementation
- Flutter plugin architecture
- Shared preferences for state persistence
- Notification management