flutter ios 16 live activities

Live Activities

A Flutter plugin to use iOS 16.1+ Live Activities & iPhone 14 Pro Dynamic Island features.

๐Ÿง What is it ?

This plugin use iOS ActivityKit API.

live_activities can be used to show dynamic live notification & implement dynamic island feature on the iPhone 14 Pro / Max โšซ๏ธ

โš ๏ธ live_activities is only intended to use with iOS 16.1+ ! It will simply do nothing on other platform & < iOS 16.1

flutter ios 16 live activities logo

๐Ÿ‘ป Getting started

Due to some technical restriction, it’s not currently possible to only use Flutter ๐Ÿซฃ.

You need to implement in your Flutter iOS project a Widget Extension & develop in Swift/Objective-C your own Live Activity / Dynamic Island design.

โ„น๏ธ You can check into the example repository for a full example app using Live Activities & Dynamic Island

๐Ÿงต Native

  • ๐Ÿ“ฑ Create natively your Live Activity view tutorial

    • โšซ๏ธ (Opt.) Create natively a Dynamic Island tutorial
  • ๐Ÿ›Ž Enable push notification capabilities.

enable push notification capabilities

  • โ›น๏ธ Enable live activities for both your app & widget extension.

enable live activity

๐Ÿ’™ Flutter

  • ๐Ÿ”Œ Import the plugin.
import 'package:live_activities/live_activities.dart';
  • ๐Ÿ“ฃ Create your dynamic activity.

final Map<String, String> activityModel = {
  'name': 'Margherita',
  'ingredient': 'tomato, mozzarella, basil',
  'quantity': '1',
};

_liveActivitiesPlugin.createActivity(activityModel.toMap());

โš ๏ธ For now you can only pass values as String.

๐Ÿ“˜ Documentation

Name Description Returned value
.createActivity() Create an iOS live activity, String The activity identifier
.updateActivity() Update the live activity data by using the activityId provided Future When the activity was updated
.endActivity() End the live activity by using the activityId provided Future When the activity was ended

๐ŸŽฏ Roadmap

  • Support multiple type instead of String (Date, Number etc.).
  • Inject a Widget inside the notification with Flutter Engine ?

GitHub

View Github