force_upgrader 0.0.2
force_upgrader: ^0.0.2 copied to clipboard
Flutter package to force users to upgrade past a minimum version.
Force Upgrader #
An un-opinionated upgrader to prompt users to upgrade their app with callbacks to allow deep customization
UI #
The default dialog tries to be platform agnostic fitting on multiple platforms. However this dialog like everything else can be easily replaced
Usage #
Insert the ForceUpgrader
widget anywhere in your widget tree but preferably somewhere high up
import 'package:flutter/material.dart';
import 'package:force_upgrader/force_upgrader.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Force Upgrader Example',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const ExampleHome(),
);
}
}
class ExampleHome extends StatelessWidget {
const ExampleHome({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return ForceUpgrader(
getMinimumVersion: () async => '2.0.0',
allowSkipCallback: () async => true,
onDialogDismissed: () {
debugPrint("Skipped");
},
child: Scaffold(
appBar: AppBar(
title: const Text('Force Upgrader Example'),
),
),
);
}
}
Force Upgrader's constructor takes the following parameters
- child: The child to return under Force Upgrader
- upgradeDialog: An optional custom dialog
- getMinimumVersion: The future callback to get the minimum version string
- getCurrentVersion: The optional future callback to call to get the current version string
- androidPackageName: The optional Android package name of the flutter app
- iOSAppStoreId: The optional iOS AppStore Id of the flutter app
- macOSAppStoreId: The optional macOSAppStoreId of the flutter app
- windowsStoreId: The optional windowsStoreId of the the flutter app
- defaultStoreUrl: The optional upgrade url of the flutter app
- dialogHeadingText: Custom optional heading text for the upgrade dialog
- dialogBodyText: Custom optional body text for the upgrade dialog
- updateButtonText: Custom optional text for the upgrade dialog's update button
- allowSkipCallback: The future callback to call to determine if skipping is allowed
- skipButtonText: Custom optional text for the upgrade dialog's skip button
- onDialogDismissed: The optional callback to call when upgrade dialog's skip button is pressed
Version Strings #
Version strings must be in compliance with the Semantic Versioning Spec (https://semver.org/)