From acb99c39a5666ba93416f46d53b79316c8276337 Mon Sep 17 00:00:00 2001 From: thisisamank Date: Tue, 2 Feb 2021 23:36:52 +0530 Subject: [PATCH 01/13] Migrated android_alarm_manager to support null safety #75233 --- packages/android_alarm_manager/CHANGELOG.md | 4 ++++ .../lib/android_alarm_manager.dart | 16 ++++++++-------- packages/android_alarm_manager/pubspec.yaml | 2 +- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/packages/android_alarm_manager/CHANGELOG.md b/packages/android_alarm_manager/CHANGELOG.md index df5b7a2fa752..6eef45729d6e 100644 --- a/packages/android_alarm_manager/CHANGELOG.md +++ b/packages/android_alarm_manager/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.4.6 - null safety + +* Migrate to null safety + ## 0.4.5+20 * Update the example app: remove the deprecated `RaisedButton` and `FlatButton` widgets. diff --git a/packages/android_alarm_manager/lib/android_alarm_manager.dart b/packages/android_alarm_manager/lib/android_alarm_manager.dart index b8afa134472c..61babf12855f 100644 --- a/packages/android_alarm_manager/lib/android_alarm_manager.dart +++ b/packages/android_alarm_manager/lib/android_alarm_manager.dart @@ -31,7 +31,7 @@ void _alarmManagerCallbackDispatcher() { // PluginUtilities.getCallbackFromHandle performs a lookup based on the // callback handle and returns a tear-off of the original callback. - final Function closure = PluginUtilities.getCallbackFromHandle(handle); + final Function? closure = PluginUtilities.getCallbackFromHandle(handle); if (closure == null) { print('Fatal: could not find callback'); @@ -71,13 +71,13 @@ class AndroidAlarmManager { // Callback used to get the handle for a callback. It's // [PluginUtilities.getCallbackHandle] by default. static _GetCallbackHandle _getCallbackHandle = - (Function callback) => PluginUtilities.getCallbackHandle(callback); + (Function callback) => PluginUtilities.getCallbackHandle(callback)!; /// This is exposed for the unit tests. It should not be accessed by users of /// the plugin. @visibleForTesting static void setTestOverides( - {_Now now, _GetCallbackHandle getCallbackHandle}) { + {_Now? now, _GetCallbackHandle? getCallbackHandle}) { _now = (now ?? _now); _getCallbackHandle = (getCallbackHandle ?? _getCallbackHandle); } @@ -93,7 +93,7 @@ class AndroidAlarmManager { if (handle == null) { return false; } - final bool r = await _channel.invokeMethod( + final bool? r = await _channel.invokeMethod( 'AlarmService.start', [handle.toRawHandle()]); return r ?? false; } @@ -211,7 +211,7 @@ class AndroidAlarmManager { if (handle == null) { return false; } - final bool r = + final bool? r = await _channel.invokeMethod('Alarm.oneShotAt', [ id, alarmClock, @@ -262,7 +262,7 @@ class AndroidAlarmManager { Duration duration, int id, Function callback, { - DateTime startAt, + DateTime? startAt, bool exact = false, bool wakeup = false, bool rescheduleOnReboot = false, @@ -278,7 +278,7 @@ class AndroidAlarmManager { if (handle == null) { return false; } - final bool r = await _channel.invokeMethod( + final bool? r = await _channel.invokeMethod( 'Alarm.periodic', [ id, exact, @@ -299,7 +299,7 @@ class AndroidAlarmManager { /// Returns a [Future] that resolves to `true` on success and `false` on /// failure. static Future cancel(int id) async { - final bool r = + final bool? r = await _channel.invokeMethod('Alarm.cancel', [id]); return (r == null) ? false : r; } diff --git a/packages/android_alarm_manager/pubspec.yaml b/packages/android_alarm_manager/pubspec.yaml index d1771c0f0380..e8387a1e966b 100644 --- a/packages/android_alarm_manager/pubspec.yaml +++ b/packages/android_alarm_manager/pubspec.yaml @@ -24,5 +24,5 @@ flutter: pluginClass: AndroidAlarmManagerPlugin environment: - sdk: ">=2.1.0 <3.0.0" + sdk: '>=2.12.0-0 <3.0.0' flutter: ">=1.12.13+hotfix.5" From 9e808fb576b9c9abe1daea29ab4fa7fdb3307fa4 Mon Sep 17 00:00:00 2001 From: thisisamank Date: Tue, 2 Feb 2021 23:45:45 +0530 Subject: [PATCH 02/13] pubspec.yaml version code updated --- packages/android_alarm_manager/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/android_alarm_manager/pubspec.yaml b/packages/android_alarm_manager/pubspec.yaml index e8387a1e966b..6abfae74e5d9 100644 --- a/packages/android_alarm_manager/pubspec.yaml +++ b/packages/android_alarm_manager/pubspec.yaml @@ -4,7 +4,7 @@ description: Flutter plugin for accessing the Android AlarmManager service, and # 0.4.y+z is compatible with 1.0.0, if you land a breaking change bump # the version to 2.0.0. # See more details: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 -version: 0.4.5+20 +version: 0.4.6 homepage: https://github.com/flutter/plugins/tree/master/packages/android_alarm_manager dependencies: From fc97a634d912d20640583136c87fb2aba9a42bb5 Mon Sep 17 00:00:00 2001 From: thisisamank Date: Wed, 3 Feb 2021 00:41:38 +0530 Subject: [PATCH 03/13] Implemented changes according to review --- packages/android_alarm_manager/CHANGELOG.md | 4 ++-- .../example/lib/main.dart | 20 +++++++++---------- .../example/pubspec.yaml | 2 +- packages/android_alarm_manager/pubspec.yaml | 2 +- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/android_alarm_manager/CHANGELOG.md b/packages/android_alarm_manager/CHANGELOG.md index 6eef45729d6e..d4bf1630c498 100644 --- a/packages/android_alarm_manager/CHANGELOG.md +++ b/packages/android_alarm_manager/CHANGELOG.md @@ -1,6 +1,6 @@ -## 0.4.6 - null safety +## 0.5.0-null-safety -* Migrate to null safety +* Migrate to null safety. ## 0.4.5+20 diff --git a/packages/android_alarm_manager/example/lib/main.dart b/packages/android_alarm_manager/example/lib/main.dart index ac27fec2e4c6..03075685995c 100644 --- a/packages/android_alarm_manager/example/lib/main.dart +++ b/packages/android_alarm_manager/example/lib/main.dart @@ -22,7 +22,7 @@ const String isolateName = 'isolate'; final ReceivePort port = ReceivePort(); /// Global [SharedPreferences] object. -SharedPreferences prefs; +SharedPreferences? prefs; Future main() async { // TODO(bkonyi): uncomment @@ -35,8 +35,8 @@ Future main() async { isolateName, ); prefs = await SharedPreferences.getInstance(); - if (!prefs.containsKey(countKey)) { - await prefs.setInt(countKey, 0); + if (!prefs!.containsKey(countKey)) { + await prefs!.setInt(countKey, 0); } runApp(AlarmManagerExampleApp()); } @@ -54,8 +54,8 @@ class AlarmManagerExampleApp extends StatelessWidget { } class _AlarmHomePage extends StatefulWidget { - _AlarmHomePage({Key key, this.title}) : super(key: key); - final String title; + _AlarmHomePage({Key? key, this.title}) : super(key: key); + final String? title; @override _AlarmHomePageState createState() => _AlarmHomePageState(); @@ -78,7 +78,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { print('Increment counter!'); // Ensure we've loaded the updated count from the background isolate. - await prefs.reload(); + await prefs!.reload(); setState(() { _counter++; @@ -86,7 +86,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { } // The background - static SendPort uiSendPort; + static SendPort? uiSendPort; // The callback for our alarm static Future callback() async { @@ -107,7 +107,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { final textStyle = Theme.of(context).textTheme.headline4; return Scaffold( appBar: AppBar( - title: Text(widget.title), + title: Text(widget.title!), ), body: Center( child: Column( @@ -125,7 +125,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { style: textStyle, ), Text( - prefs.getInt(countKey).toString(), + prefs!.getInt(countKey).toString(), key: ValueKey('BackgroundCountText'), style: textStyle, ), @@ -140,7 +140,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { await AndroidAlarmManager.oneShot( const Duration(seconds: 5), // Ensure we have a unique alarm ID. - Random().nextInt(pow(2, 31)), + Random().nextInt(pow(2, 31).toInt()), callback, exact: true, wakeup: true, diff --git a/packages/android_alarm_manager/example/pubspec.yaml b/packages/android_alarm_manager/example/pubspec.yaml index e636a246376b..a007d85e1ee6 100644 --- a/packages/android_alarm_manager/example/pubspec.yaml +++ b/packages/android_alarm_manager/example/pubspec.yaml @@ -23,5 +23,5 @@ flutter: uses-material-design: true environment: - sdk: ">=2.1.0 <3.0.0" + sdk: '>=2.12.0-0 <3.0.0' flutter: ">=1.12.13+hotfix.5 <2.0.0" diff --git a/packages/android_alarm_manager/pubspec.yaml b/packages/android_alarm_manager/pubspec.yaml index 6abfae74e5d9..bc60d518cdd9 100644 --- a/packages/android_alarm_manager/pubspec.yaml +++ b/packages/android_alarm_manager/pubspec.yaml @@ -4,7 +4,7 @@ description: Flutter plugin for accessing the Android AlarmManager service, and # 0.4.y+z is compatible with 1.0.0, if you land a breaking change bump # the version to 2.0.0. # See more details: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 -version: 0.4.6 +version: 0.5.0-null-safety homepage: https://github.com/flutter/plugins/tree/master/packages/android_alarm_manager dependencies: From ebeaaff6617f5c531804183f1837fc70104cb04e Mon Sep 17 00:00:00 2001 From: Ben Konyi Date: Wed, 3 Feb 2021 09:59:33 -0800 Subject: [PATCH 04/13] Update packages/android_alarm_manager/CHANGELOG.md --- packages/android_alarm_manager/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/android_alarm_manager/CHANGELOG.md b/packages/android_alarm_manager/CHANGELOG.md index d4bf1630c498..62e1a27a3392 100644 --- a/packages/android_alarm_manager/CHANGELOG.md +++ b/packages/android_alarm_manager/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.5.0-null-safety +## 0.5.0-nullsafety.0 * Migrate to null safety. From a6325e1e45502d9ebcf3b92ba12320502bec7455 Mon Sep 17 00:00:00 2001 From: Ben Konyi Date: Wed, 3 Feb 2021 09:59:39 -0800 Subject: [PATCH 05/13] Update packages/android_alarm_manager/pubspec.yaml --- packages/android_alarm_manager/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/android_alarm_manager/pubspec.yaml b/packages/android_alarm_manager/pubspec.yaml index bc60d518cdd9..4e5c080d1890 100644 --- a/packages/android_alarm_manager/pubspec.yaml +++ b/packages/android_alarm_manager/pubspec.yaml @@ -4,7 +4,7 @@ description: Flutter plugin for accessing the Android AlarmManager service, and # 0.4.y+z is compatible with 1.0.0, if you land a breaking change bump # the version to 2.0.0. # See more details: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 -version: 0.5.0-null-safety +version: 0.5.0-nullsafety.0 homepage: https://github.com/flutter/plugins/tree/master/packages/android_alarm_manager dependencies: From 30ca955fd6a6f67a15ccb3e7cab9eb6db710059d Mon Sep 17 00:00:00 2001 From: thisisamank Date: Fri, 12 Feb 2021 11:26:43 +0530 Subject: [PATCH 06/13] Implemented changes accorrding to review --- .../android_alarm_manager/example/lib/main.dart | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/android_alarm_manager/example/lib/main.dart b/packages/android_alarm_manager/example/lib/main.dart index 03075685995c..b113b0b02442 100644 --- a/packages/android_alarm_manager/example/lib/main.dart +++ b/packages/android_alarm_manager/example/lib/main.dart @@ -22,7 +22,7 @@ const String isolateName = 'isolate'; final ReceivePort port = ReceivePort(); /// Global [SharedPreferences] object. -SharedPreferences? prefs; +late SharedPreferences prefs; Future main() async { // TODO(bkonyi): uncomment @@ -35,8 +35,8 @@ Future main() async { isolateName, ); prefs = await SharedPreferences.getInstance(); - if (!prefs!.containsKey(countKey)) { - await prefs!.setInt(countKey, 0); + if (!prefs.containsKey(countKey)) { + await prefs.setInt(countKey, 0); } runApp(AlarmManagerExampleApp()); } @@ -54,8 +54,8 @@ class AlarmManagerExampleApp extends StatelessWidget { } class _AlarmHomePage extends StatefulWidget { - _AlarmHomePage({Key? key, this.title}) : super(key: key); - final String? title; + _AlarmHomePage({Key? key, required this.title}) : super(key: key); + final String title; @override _AlarmHomePageState createState() => _AlarmHomePageState(); @@ -78,7 +78,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { print('Increment counter!'); // Ensure we've loaded the updated count from the background isolate. - await prefs!.reload(); + await prefs.reload(); setState(() { _counter++; @@ -107,7 +107,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { final textStyle = Theme.of(context).textTheme.headline4; return Scaffold( appBar: AppBar( - title: Text(widget.title!), + title: Text(widget.title), ), body: Center( child: Column( @@ -125,7 +125,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { style: textStyle, ), Text( - prefs!.getInt(countKey).toString(), + prefs.getInt(countKey).toString(), key: ValueKey('BackgroundCountText'), style: textStyle, ), From bce067ba769948068cad4c34db99c9ec12dab195 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:03:43 -0500 Subject: [PATCH 07/13] Migrate example dependencies --- packages/android_alarm_manager/example/pubspec.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/android_alarm_manager/example/pubspec.yaml b/packages/android_alarm_manager/example/pubspec.yaml index a007d85e1ee6..c2b3086476fd 100644 --- a/packages/android_alarm_manager/example/pubspec.yaml +++ b/packages/android_alarm_manager/example/pubspec.yaml @@ -6,10 +6,10 @@ dependencies: sdk: flutter android_alarm_manager: path: ../ - shared_preferences: ^0.5.6 + shared_preferences: ^2.0.0-nullsafety integration_test: path: ../../integration_test - path_provider: ^1.3.1 + path_provider: ^2.0.0-nullsafety dev_dependencies: espresso: ^0.0.1+3 From 72fc8621fe8b30bee3e24c62e579bd3a64acc450 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:04:03 -0500 Subject: [PATCH 08/13] Opt out the integration tests --- .../example/integration_test/android_alarm_manager_test.dart | 2 ++ .../example/test_driver/integration_test.dart | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/android_alarm_manager/example/integration_test/android_alarm_manager_test.dart b/packages/android_alarm_manager/example/integration_test/android_alarm_manager_test.dart index 4d2e3201eecf..4d53a5a945e6 100644 --- a/packages/android_alarm_manager/example/integration_test/android_alarm_manager_test.dart +++ b/packages/android_alarm_manager/example/integration_test/android_alarm_manager_test.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// @dart=2.9 + import 'dart:async'; import 'dart:io'; import 'package:android_alarm_manager_example/main.dart' as app; diff --git a/packages/android_alarm_manager/example/test_driver/integration_test.dart b/packages/android_alarm_manager/example/test_driver/integration_test.dart index ed54518d7d00..4e78d04fa971 100644 --- a/packages/android_alarm_manager/example/test_driver/integration_test.dart +++ b/packages/android_alarm_manager/example/test_driver/integration_test.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// @dart=2.9 + import 'dart:async'; import 'dart:convert'; import 'dart:io'; From f0320c78d5a821ca13810d4d4877be2b6f552d26 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:52:19 -0500 Subject: [PATCH 09/13] example compilation fix --- packages/android_alarm_manager/example/lib/main.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/android_alarm_manager/example/lib/main.dart b/packages/android_alarm_manager/example/lib/main.dart index b113b0b02442..dc3779c8cbe2 100644 --- a/packages/android_alarm_manager/example/lib/main.dart +++ b/packages/android_alarm_manager/example/lib/main.dart @@ -94,7 +94,7 @@ class _AlarmHomePageState extends State<_AlarmHomePage> { // Get the previous cached count and increment it. final prefs = await SharedPreferences.getInstance(); - int currentCount = prefs.getInt(countKey); + int currentCount = prefs.getInt(countKey) ?? 0; await prefs.setInt(countKey, currentCount + 1); // This will be null if we're running in the background. From f69db1d90f7c853bc407810b936d083160a2b687 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:52:38 -0500 Subject: [PATCH 10/13] Update NNBD plugin list --- script/nnbd_plugins.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/nnbd_plugins.sh b/script/nnbd_plugins.sh index 44e5df9e95ef..6a317cbeae85 100644 --- a/script/nnbd_plugins.sh +++ b/script/nnbd_plugins.sh @@ -5,6 +5,7 @@ # null-safe is available on stable. readonly NNBD_PLUGINS_LIST=( + "android_alarm_manager" "android_intent" "battery" "connectivity" @@ -27,7 +28,6 @@ readonly NNBD_PLUGINS_LIST=( # building the all plugins app. This list should be kept empty. readonly NON_NNBD_PLUGINS_LIST=( - # "android_alarm_manager" "camera" # "file_selector" # "google_maps_flutter" From 0e560699187b5873caa11153ad8425a451f20c18 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:53:14 -0500 Subject: [PATCH 11/13] Fix nullability of callback lookup --- .../lib/android_alarm_manager.dart | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/android_alarm_manager/lib/android_alarm_manager.dart b/packages/android_alarm_manager/lib/android_alarm_manager.dart index 61babf12855f..6e82c4509dfa 100644 --- a/packages/android_alarm_manager/lib/android_alarm_manager.dart +++ b/packages/android_alarm_manager/lib/android_alarm_manager.dart @@ -56,7 +56,7 @@ void _alarmManagerCallbackDispatcher() { // A lambda that returns the current instant in the form of a [DateTime]. typedef DateTime _Now(); // A lambda that gets the handle for the given [callback]. -typedef CallbackHandle _GetCallbackHandle(Function callback); +typedef CallbackHandle? _GetCallbackHandle(Function callback); /// A Flutter plugin for registering Dart callbacks with the Android /// AlarmManager service. @@ -71,7 +71,7 @@ class AndroidAlarmManager { // Callback used to get the handle for a callback. It's // [PluginUtilities.getCallbackHandle] by default. static _GetCallbackHandle _getCallbackHandle = - (Function callback) => PluginUtilities.getCallbackHandle(callback)!; + (Function callback) => PluginUtilities.getCallbackHandle(callback); /// This is exposed for the unit tests. It should not be accessed by users of /// the plugin. @@ -88,7 +88,7 @@ class AndroidAlarmManager { /// Returns a [Future] that resolves to `true` on success and `false` on /// failure. static Future initialize() async { - final CallbackHandle handle = + final CallbackHandle? handle = _getCallbackHandle(_alarmManagerCallbackDispatcher); if (handle == null) { return false; @@ -207,7 +207,7 @@ class AndroidAlarmManager { assert(callback is Function() || callback is Function(int)); assert(id.bitLength < 32); final int startMillis = time.millisecondsSinceEpoch; - final CallbackHandle handle = _getCallbackHandle(callback); + final CallbackHandle? handle = _getCallbackHandle(callback); if (handle == null) { return false; } @@ -274,7 +274,7 @@ class AndroidAlarmManager { final int period = duration.inMilliseconds; final int first = startAt != null ? startAt.millisecondsSinceEpoch : now + period; - final CallbackHandle handle = _getCallbackHandle(callback); + final CallbackHandle? handle = _getCallbackHandle(callback); if (handle == null) { return false; } From c7b9cfd240506827729b39219e6599bf034edf00 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:54:14 -0500 Subject: [PATCH 12/13] Standardize null bool handling --- .../android_alarm_manager/lib/android_alarm_manager.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/android_alarm_manager/lib/android_alarm_manager.dart b/packages/android_alarm_manager/lib/android_alarm_manager.dart index 6e82c4509dfa..218959bc4bcc 100644 --- a/packages/android_alarm_manager/lib/android_alarm_manager.dart +++ b/packages/android_alarm_manager/lib/android_alarm_manager.dart @@ -222,7 +222,7 @@ class AndroidAlarmManager { rescheduleOnReboot, handle.toRawHandle(), ]); - return (r == null) ? false : r; + return r ?? false; } /// Schedules a repeating timer to run `callback` with period `duration`. @@ -288,7 +288,7 @@ class AndroidAlarmManager { rescheduleOnReboot, handle.toRawHandle() ]); - return (r == null) ? false : r; + return r ?? false; } /// Cancels a timer. @@ -301,6 +301,6 @@ class AndroidAlarmManager { static Future cancel(int id) async { final bool? r = await _channel.invokeMethod('Alarm.cancel', [id]); - return (r == null) ? false : r; + return r ?? false; } } From 57cc4697f275b0aaeada57a2f70c7bc7895eb9b0 Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 12 Feb 2021 11:58:22 -0500 Subject: [PATCH 13/13] Change version to 2.0 due to previous 1.0 compat commitment --- packages/android_alarm_manager/CHANGELOG.md | 2 +- packages/android_alarm_manager/README.md | 14 +------------- packages/android_alarm_manager/pubspec.yaml | 5 +---- 3 files changed, 3 insertions(+), 18 deletions(-) diff --git a/packages/android_alarm_manager/CHANGELOG.md b/packages/android_alarm_manager/CHANGELOG.md index 62e1a27a3392..b06f23c45a30 100644 --- a/packages/android_alarm_manager/CHANGELOG.md +++ b/packages/android_alarm_manager/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.5.0-nullsafety.0 +## 2.0.0-nullsafety * Migrate to null safety. diff --git a/packages/android_alarm_manager/README.md b/packages/android_alarm_manager/README.md index cf02bf66ff11..5a8a55e43641 100644 --- a/packages/android_alarm_manager/README.md +++ b/packages/android_alarm_manager/README.md @@ -5,13 +5,6 @@ A Flutter plugin for accessing the Android AlarmManager service, and running Dart code in the background when alarms fire. -**Please set your constraint to `android_alarm_manager: '>=0.4.y+x <2.0.0'`** - -## Backward compatible 1.0.0 version is coming -The plugin has reached a stable API, we guarantee that version `1.0.0` will be backward compatible with `0.4.y+z`. -Please use `android_alarm_manager: '>=0.4.y+x <2.0.0'` as your dependency constraint to allow a smoother ecosystem migration. -For more details see: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 - ## Getting Started After importing this plugin to your project as usual, add the following to your @@ -109,17 +102,12 @@ Which must be reflected in the application's `AndroidManifest.xml`. E.g.: **Note:** Not calling `AlarmService.setPluginRegistrant` will result in an exception being thrown when an alarm eventually fires. -### Flutter Android Embedding V2 (Flutter Version >= 1.12) +### Flutter Android Embedding V2 For the Flutter Android Embedding V2, plugins are registered with the background isolate via reflection so `AlarmService.setPluginRegistrant` does not need to be called. -**NOTE: this plugin is not completely compatible with the V2 embedding on -Flutter versions < 1.12 as the background isolate will not automatically -register plugins. This can be resolved by running `flutter upgrade` to upgrade -to the latest Flutter version.** - For help getting started with Flutter, view our online [documentation](https://flutter.dev/). diff --git a/packages/android_alarm_manager/pubspec.yaml b/packages/android_alarm_manager/pubspec.yaml index 4e5c080d1890..ab1937242859 100644 --- a/packages/android_alarm_manager/pubspec.yaml +++ b/packages/android_alarm_manager/pubspec.yaml @@ -1,10 +1,7 @@ name: android_alarm_manager description: Flutter plugin for accessing the Android AlarmManager service, and running Dart code in the background when alarms fire. -# 0.4.y+z is compatible with 1.0.0, if you land a breaking change bump -# the version to 2.0.0. -# See more details: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 -version: 0.5.0-nullsafety.0 +version: 2.0.0-nullsafety homepage: https://github.com/flutter/plugins/tree/master/packages/android_alarm_manager dependencies: