app_version_update

Creator: coderz1093

Last updated:

Add to Cart

Description:

app version update

Retrieve version and url for local app update against store app
Android and iOS
Features #
Using as reference packages like in_app_update , version_check.
Compares local version with the respective store version for the purpose of detecting user-side version updates.
It also provides widgets like dialog , bottom sheets and pages for you to display the update option to the user.
Getting started #
$ flutter pub add app_version_update
copied to clipboard
or add in your dependencies
dependencies:
app_version_update: <latest>
copied to clipboard
to use this app you need to have the app hosted in stores.
To test, you can manually downgrade your pubspec.yaml from your version: , when you run your local version it will be different from the store version
Usage #
Internet permission Android:
<uses-permission android:name="android.permission.INTERNET" />
Internet permission iOs:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key><true/>
</dict>
copied to clipboard
final appleId = '284882215'; // If this value is null, its packagename will be considered
final playStoreId = 'com.facebook.katana'; // If this value is null, its packagename will be considered

await AppVersionUpdate.checkForUpdates(
appleId: appleId, playStoreId: playStoreId)
.then((data) async {
print(data.storeUrl);
print(data.storeVersion);
if(data.canUpdate!){
//showDialog(... your custom widgets view)
//or use our widgets
// AppVersionUpdate.showAlertUpdate
// AppVersionUpdate.showBottomSheetUpdate
// AppVersionUpdate.showPageUpdate
AppVersionUpdate.showAlertUpdate(
appVersionResult: data, context: context);
}
});
copied to clipboard
Customize the Alert Dialog
// you also have some options to customize our Alert Dialog
AppUpdateVersion.showAlertUpdate(
{BuildContext? context,
AppVersionResult? appVersionResult,
bool? mandatory = false,
String? title = 'New version available',
TextStyle titleTextStyle =
const TextStyle(fontSize: 24.0, fontWeight: FontWeight.w500),
String? content = 'Would you like to update your application?',
TextStyle contentTextStyle =
const TextStyle(fontSize: 16.0, fontWeight: FontWeight.w400),
ButtonStyle? cancelButtonStyle = const ButtonStyle(
backgroundColor: MaterialStatePropertyAll(Colors.redAccent)),
ButtonStyle? updateButtonStyle = const ButtonStyle(
backgroundColor: MaterialStatePropertyAll(Colors.green)),
String? cancelButtonText = 'UPDATE LATER',
String? updateButtonText = 'UPDATE',
TextStyle? cancelTextStyle = const TextStyle(color: Colors.white),
TextStyle? updateTextStyle = const TextStyle(color: Colors.white),
Color? backgroundColor = Colors.white})
copied to clipboard
Customize the our bottom sheet
AppUpdateVersion.showBottomSheetUpdate(
{@required BuildContext? context,
@required AppVersionResult? appVersionResult,
bool? mandatory = false,
String? title = 'New version avaible',
Widget? content}) async {
await showModalBottomSheet(
isDismissible: !mandatory!,
context: context!,
builder: (context) => BottomSheetUpdateVersion(
appVersionResult: appVersionResult,
mandatory: mandatory,
content: content,
title: title,
));
}
copied to clipboard
Customize the Page
// you also have some options to customize our Page
AppUpdateVersion.showPageUpdate(
{@required BuildContext? context,
@required AppVersionResult? appVersionResult,
bool? mandatory = false,
Widget? page}) async {
Navigator.push(
context!,
MaterialPageRoute(
builder: (context) =>
page ??
UpdateVersionPage(
mandatory: mandatory,
appVersionResult: appVersionResult,
)));
}


copied to clipboard
Additional information #



Next Updates
status




Mandatory or optional update
released


Create TestMode
development


Bottom sheet widget
released


Page widget
released


Handle Exceptions
development


New options custom widgets
released


Automatic country detection
released


Modularize files
listed



This project is at an initial level, more functions will be included as
So any suggestion and contribution is welcome.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.