reminders 2.0.2 copy "reminders: ^2.0.2" to clipboard
reminders: ^2.0.2 copied to clipboard

PlatformiOSmacOS

Read, Edit, Create and Delete Apple Reminders

Reminders #

This is a simple Flutter plugin to provider, read, write, edit and delete access to Apple Reminders on ios and MacOS.

API #

When the reminders class is instantiated it requests permission to access the users reminders. If permission has not yet been given a popup will appear asking for permission. Success or failure can be determined:

Future<bool> requestPermission() This will prompt a system alert dialog with the text you provided from 'NSRemindersUsageDescription'. Returns true if user accepted prompt (or has already accepted), or false (or if it has already been declined previously).

Future<bool> hasAccess()

Apple Calendars has a default Reminders List it uses if no list is specified when creating a new reminder. The list ID can be determined:

Future<String?> getDefaultListId()

Apple Reminders support multiple lists of reminders. A complete list of lists can be determined:

Future<RemList?> getDefaultList()

Apple Reminders support multiple lists of reminders. A complete list of lists can be determined:

Future<List<RemList>> getAllLists()

Get all the reminders in a List by passing the RemList.id to:

Future<List<Reminder>?> getReminders([String? id])

Attributes of a Reminder can be changed or a new Reminder can be created and then saved. Changes induce, but are not limited to, marking Reminders complete or not and setting due dates:

Future<Reminder> saveReminder(Reminder reminder)

Delete a reminder by passing the Reminder.id to: Future<String?> deleteReminder(String id) async`

iOS integration #

Add the following key/value pair to your Info.plist

iOS 17 or BELOW:

<key>NSRemindersUsageDescription</key>

<string>INSERT_REASON_HERE</string>

iOS 17 or ABOVE:

<key>NSRemindersFullAccessUsageDescription</key>

<string>INSERT_REASON_HERE</string>

Warning: Although NSRemindersUsageDescription is forward compatible with iOS 17 , this does not appear to be the case with iPad OS 17 when compiling with Xcode 15. TLDR: just add both keys regardless!

MacOS integration #

Add the following to macos/Runner/DebugProfile.entitlements and 'macos/Runner/Release.entitlements'

<key>com.apple.security.personal-information.calendars</key> <true/>

Android, Web, Windows & Linux integration #

As this plugin only supports Apple Reminders, there is no Android, Web, Windows, or Linux integration.

16
likes
140
pub points
68%
popularity

Publisher

unverified uploader

Read, Edit, Create and Delete Apple Reminders

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on reminders