self_launcher 1.0.0
self_launcher: ^1.0.0 copied to clipboard
A lightweight Flutter package for bringing Android apps to the foreground. Simple method to reopen or bring your app to foreground when called.
Changelog #
All notable changes to the Self Launcher package will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
2.0.0 - 2024-01-15 #
Changed #
- BREAKING: Complete package rewrite and simplification
- BREAKING: Package name changed from
flutter_self_launch
toself_launcher
- BREAKING: Removed all timer, scheduling, and countdown functionality
- BREAKING: Removed AlarmManager, foreground service, and broadcast receiver
- BREAKING: Removed all complex permissions (exact alarms, wake locks, boot receiver)
- BREAKING: Simplified API to single method:
bringToForeground()
Added #
- Simple
bringToForeground()
method that brings app to foreground or reopens it - Zero-permission implementation (no special Android permissions required)
- Lightweight Android implementation using standard Intent flags
- Simplified example app demonstrating core functionality
- Updated documentation focusing on app launching without scheduling
Removed #
scheduleLaunch()
method and all scheduling functionalitycancelLaunch()
methodcheckPermissions()
andrequestPermissions()
methodsgetStatus()
method and status tracking- Event streams and real-time updates
- LaunchStatus and LaunchRequest models
- All Android permissions (SCHEDULE_EXACT_ALARM, WAKE_LOCK, etc.)
- Foreground service and broadcast receiver components
- Battery optimization handling
- Boot-completed receiver
Technical Changes #
- Simplified Android package structure (
com.example.self_launcher
) - Removed dependency on AlarmManager and system scheduling
- Uses standard Android Intent with NEW_TASK and CLEAR_TOP flags
- Minimal Android manifest with no special permissions
- Reduced codebase size by ~80%
Migration Guide #
This is a major breaking change. If you were using scheduling functionality:
- Replace
scheduleLaunch()
calls withbringToForeground()
for immediate launching - Remove permission handling code as no permissions are required
- Update import statements from
flutter_self_launch
toself_launcher
- Remove any status monitoring or event stream listeners
1.0.0 - 2024-01-15 (Legacy) #
Added (Legacy Version) #
- Initial release with full scheduling functionality
- AlarmManager-based delayed app launching
- Comprehensive permission handling
- Foreground service and broadcast receiver
- Real-time status updates and event streams
- Complex Android manifest with multiple permissions
Note: Version 1.x is now deprecated. Use 2.0.0+ for simplified app launching.
Platform Support #
- Android: API level 21+ (Android 5.0+)
- iOS: Not supported (iOS does not allow programmatic app launching)
Dependencies #
- Flutter SDK: >=3.13.0
- Dart SDK: >=3.1.0 <4.0.0
- Android: API level 21+ (Android 5.0+)
Contributing #
We welcome contributions! Please see our contributing guidelines for more information.
Support #
For issues, feature requests, or questions, please use our GitHub issue tracker.