Shorebird Code Push
A Dart library that allows Flutter apps to get information about code push updates.
WARNING: This package is in a preview state and does not work with the currently available version of Shorebird.
Usage
// Import the library
import 'package:shorebird_code_push/shorebird_code_push.dart';
// Create an instance of the ShorebirdCodePush class
final shorebirdCodePush = ShorebirdCodePush();
// Get the current patch version, or null if no patch is installed.
final currentPatchversion = shorebirdCodePush.currentPatchVersion();
// Check whether a patch is available to install.
final isUpdateAvailable = await shorebirdCodePush.isNewPatchAvailableForDownload();
if (isUpdateAvailable) {
// Download the patch.
await shorebirdCodePush.downloadUpdate();
}
Developing
FFI
The Dart code in this library communicates with the Updater (part of Shorebird's Flutter engine) via FFI.
For an Updater function to be visible to the Dart code, it must:
- Be declared in c_api.rs as
pub extern "C"
.- This will add the function to the
library/include/updater.h
header file, which is generated by cbindgen when the Updater is built.
- This will add the function to the
- Be included in the generated ffi bindings. These can be regenerated using
dart run ffigen
. - Android specific: be listed in https://github.com/shorebirdtech/engine/blob/main/shell/platform/android/android_exports.lst
Libraries
- shorebird_code_push
- Get info about your Shorebird code push app