flutter_smkit_ui 1.3.3
flutter_smkit_ui: ^1.3.3 copied to clipboard
Flutter Plugin for Sency's SMKitUI
0.1.0 #
created SMKitUI
0.1.1 #
Added Android support
0.1.2 #
Updated smkitUI
0.1.3 #
Bug fix
0.1.4 #
Add multiple Custom Workouts
0.1.5 #
Add Custom Assessment
0.1.6 #
Bug Fix
0.1.7 #
Bug fix
0.1.8 #
Update sdk
0.1.9 #
Bug fix
0.2.0 #
Bug fix
0.2.1 #
Bug fix
0.2.2 #
Bug fix
0.2.3 #
Bug fix
0.2.4 #
Bug fix
0.2.5 #
- Added support for loading
apiPublicKeyfrom.envfile usingflutter_dotenv. - Improved error handling for missing
.envfile. - Updated example app with new assessment and workout features.
0.2.6 #
- Unified user data handling for assessments: Flutter now sends
genderandbirthday(milliseconds since epoch) for both iOS and Android. - Android plugin converts
birthdaytoageand mapsgenderstring to native enum, supporting both lowercase and capitalized values. - Added
GenderSerializerfor Android to ensure correct serialization of gender values. showSummaryargument is now supported and configurable from Flutter for both iOS and Android.- Example app updated: assessment type selection via dropdown, showSummary toggle, and improved UI for starting assessments.
- Improved error handling and code alignment between platforms.
1.2.7 #
- Upgraded Android native module (SMKitUI 1.3.1 โ 1.3.3) to improve video instructions management.
- Enhanced video playback and instruction handling in Android assessments and workouts.
1.2.8 #
- BREAKING FIX: Fixed critical hanging issue with preference setter methods (
setSessionLanguage,setCounterPreferences,setEndExercisePreferences) - Method Channel Fix: Made preference setters fire-and-forget to prevent timeout issues
- Platform Alignment: Updated Android and iOS implementations to properly handle method channel results
- Error Handling: Improved error handling and logging in
startCustomizedAssessmentmethod - iOS Fix: Fixed user data popup issue in custom assessments by providing default UserData
- Android SDK: Upgraded to SMKitUI 1.3.5 for improved stability
- Debugging: Enhanced logging and error reporting for better troubleshooting
- Performance: Removed blocking await calls from preference setters to improve assessment startup time
1.3.0 #
- Android 15 & 16 Compatibility: Upgraded Android SMKitUI to version 1.3.9 with full support for Android 15 and Android 16 (API 36) including 16KB page size compatibility
- Modern Build Tools: Updated to Android Gradle Plugin 8.11.1 and Gradle 8.11.1/8.13 for better stability and performance
- Kotlin 2.0: Upgraded to Kotlin 2.0.21 for improved compilation speed and modern language features
- SDK Update: Updated compileSdk to 36 (Android 16) for future-proof development
- Enhanced Compatibility: Better support for the latest Android development tools and SDKs
- Build System: Improved Gradle configuration for reliable builds on modern Android versions
1.3.1 #
- ๐ฏ MAJOR: Standardized Data Structure Across Platforms: Complete alignment of workout/assessment summary data between iOS and Android
- Native SDK Updates:
- iOS: Upgraded SMKitUI to 1.4.3 for enhanced data consistency
- Android: Upgraded SMKitUI to 1.4.0 for improved serialization
- ๐ CamelCase Naming Convention: All JSON fields now use consistent camelCase naming across platforms:
userData,sessionId,activityType,startTime,endTime,totalTime,totalScoreexerciseId,uiElements,instructionVideo,voiceIntro,voiceOutro,prettyNamescoringParamswithscoreFactor,targetTime,targetReps
- ๐ Flattened Exercise Data: Removed nested
exercise_infostructure, all fields now at top level - โ
Field Name Fixes:
- Fixed
voicOutrotypo โvoiceOutroon Android - Unified
feedback(iOS) โfeedbacks(both platforms) - Converted
typeโactivityTypefor clarity
- Fixed
- ๐ง Type Safety Improvements: Fixed Dart type issues (
Float?โdouble?) for better JSON parsing - ๐ฑ Cross-Platform Consistency: iOS and Android now produce identical JSON structure for easy data handling
- ๐ Bug Fixes: Resolved runtime errors related to type mismatches and missing fields
- ๐ Enhanced Logging: Added comprehensive debug logging in example app for easier testing and validation
1.3.2 #
- ๐ฑ Native SDK Updates:
- iOS: Upgraded SMKitUI to 1.4.4 with enhanced stability and performance
- Android: Upgraded SMKitUI to 1.4.2 for improved functionality
- iOS: Updated minimum deployment target to iOS 16.0
- โจ New Feature: Modifications Parameter: Added support for
modificationsparameter in all assessment and workout methods, allowing runtime configuration changes:startAssessment()now accepts optionalmodificationsmapstartCustomizedWorkout()now accepts optionalmodificationsmapstartCustomizedAssessment()now accepts optionalmodificationsmap
- ๐ง Enhanced Error Handling:
- iOS: Added proper error handling with FlutterError responses for configuration failures
- iOS: Improved thread safety for SDK configuration (ensure main thread execution)
- iOS: Added validation for API key and workout/assessment arguments
- Android: Better error propagation for customized workouts and assessments
- ๐งต Thread Safety Improvements:
- iOS: Fixed potential race conditions with async operations
- iOS: Added weak self references to prevent memory leaks in closures
- iOS: Ensured UI operations run on main thread
- ๐ Gradle & Build System Updates:
- Example app: Updated to Flutter Gradle Plugin 1.0.0
- Example app: Modernized settings.gradle with plugin management
- Example app: Updated Android Gradle Plugin to 8.11.1
- Example app: Updated Kotlin to 2.0.21
- ๐ Bug Fixes:
- Fixed iOS workout/assessment startup reliability issues
- Improved JSON serialization for modifications parameter
- Fixed potential crashes on deallocated plugin instances
- ๐ Code Quality:
- Removed unnecessary comments and TODOs
- Improved code consistency between platforms
- Better null safety handling for optional parameters
1.3.3 #
- ๐ฑ Native SDK Updates:
- iOS: Upgraded SMKitUI to 1.4.6 with enhanced features and stability
- Android: Upgraded SMKitUI to 1.4.3 for improved functionality
- ๐จ New Feature: Color Theme Customization: Added support for UI theme customization via
primaryColorin modifications parameter:- Supports 8 predefined themes: green, blue, orange, purple, red (maps to orange), silver, gold, and pink
- Automatically maps hex color codes to SDK theme enums
- Theme is applied globally via
UIColorTheme.current(Android) andSMKitUIModel.colorTheme(iOS) - UI-related color keys (
primaryColor,accentColor,backgroundColor) are automatically filtered from exercise modifications
- ๐ฑ New Feature: Phone Calibration Control: Added support for phone calibration settings via
phoneCalibrationin modifications parameter:- Control whether phone calibration screen is shown via
enabledboolean - Additional settings:
autoCalibrateandcalibrationSensitivity(for future use) showPhoneCalibrationparameter now passed to all assessment and workout methods- Default value:
true(calibration screen shown by default)
- Control whether phone calibration screen is shown via