Shorebird Code Push

Discord

ci codecov License: MIT

A Dart package for communicating with the Shorebird Code Push Updater. Use this in your Shorebird app to:

  • ✅ Get the currently installed patch version
  • ✅ Check whether a new patch is available
  • ✅ Download new patches

Getting Started

If your Flutter app does not already use Shorebird, follow our Getting Started Guide to add code push to your app.

Installation

flutter pub add shorebird_code_push

Usage

After adding the package to your pubspec.yaml, you can use it in your app like this:

// Import the library
import 'package:shorebird_code_push/shorebird_code_push.dart';

// Create an instance of the ShorebirdCodePush class
final shorebirdCodePush = ShorebirdCodePush();

// Launch your app
void main() {
  runApp(const MyApp());
}

// [Other code here]

class _MyHomePageState extends State<MyHomePage> {
  @override
  void initState() {
    super.initState();

    // Get the current patch number and print it to the console. It will be
    // null if no patches are installed.
    shorebirdCodePush
        .currentPatchNumber()
        .then((value) => print('current patch number is $value'));
  }

  Future<void> _checkForUpdates() async {
    // Check whether a patch is available to install.
    final isUpdateAvailable = await shorebirdCodePush.isNewPatchAvailableForDownload();

    if (isUpdateAvailable) {
      // Download the new patch if it's available.
      await shorebirdCodePush.downloadUpdateIfAvailable();
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      // [Other code here]
      ElevatedButton(
        child: Text('Check for update'),
        onPressed: _checkForUpdates,
      )
      // [Other code here]
    );
  }
}

See the example for a complete working app.

Join us on Discord!

We have an active Discord server where you can ask questions and get help.

Contributing

See CONTRIBUTING.md.

Libraries

shorebird_code_push
Get info about your Shorebird code push app