In App update implemented

pull/13/head
haroon amjad 2 years ago
parent 5fae260ffa
commit 52d389b268

@ -2,6 +2,7 @@ import 'dart:io';
import 'package:easy_localization/easy_localization.dart'; import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:in_app_update/in_app_update.dart';
import 'package:mohem_flutter_app/extensions/int_extensions.dart'; import 'package:mohem_flutter_app/extensions/int_extensions.dart';
import 'package:mohem_flutter_app/extensions/string_extensions.dart'; import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
@ -37,16 +38,38 @@ class _UnsafeDeviceScreenState extends State<AppUpdateScreen> {
dynamicParams.toString().toText14(isCenter: true).paddingOnly(left: 20.0, right: 20.0), dynamicParams.toString().toText14(isCenter: true).paddingOnly(left: 20.0, right: 20.0),
21.height, 21.height,
DefaultButton(LocaleKeys.ok.tr(), () async { DefaultButton(LocaleKeys.ok.tr(), () async {
if (Platform.isAndroid || Platform.isIOS) { if (Platform.isAndroid) {
var appId = Platform.isAndroid ? 'hmg.cloudSolutions.mohem' : '1468856602'; // _launchURL("https://play.google.com/store/apps/details?id=com.ejada.hmg");
InAppUpdate.checkForUpdate().then((info) {
print("checkForUpdate!!!");
print(info.toString());
if (info.immediateUpdateAllowed) {
print("Immediate Allowed!!!");
InAppUpdate.performImmediateUpdate().then((value) {}).catchError((e) => print(e.toString()));
}
}).catchError((e) {
print(e.toString());
});
}
if (Platform.isIOS) {
var url = Uri.parse( var url = Uri.parse(
Platform.isAndroid ? "market://details?id=$appId" : "https://apps.apple.com/app/id$appId", "https://apps.apple.com/app/id1468856602",
); );
launchUrl( launchUrl(
url, url,
mode: LaunchMode.externalApplication, mode: LaunchMode.externalApplication,
); );
} }
// if (Platform.isAndroid || Platform.isIOS) {
// var appId = Platform.isAndroid ? 'hmg.cloudSolutions.mohem' : '1468856602';
// var url = Uri.parse(
// Platform.isAndroid ? "market://details?id=$appId" : "https://apps.apple.com/app/id$appId",
// );
// launchUrl(
// url,
// mode: LaunchMode.externalApplication,
// );
// }
}).paddingAll(24) }).paddingAll(24)
], ],
), ),

@ -193,7 +193,18 @@ class _LoginScreenState extends State<LoginScreen> {
} catch (ex) { } catch (ex) {
Utils.hideLoading(context); Utils.hideLoading(context);
Utils.handleException(ex, context, (msg) { Utils.handleException(ex, context, (msg) {
Utils.confirmDialog(context, msg); Utils.confirmDialog(
context,
msg,
onTap: () async {
if (msg.toLowerCase().contains("password has expired")) {
Navigator.pop(context);
await Navigator.pushNamed(context, AppRoutes.newPassword, arguments: username.text);
} else {
Navigator.pop(context);
}
},
);
}); });
} }
} }

@ -119,6 +119,8 @@ dependencies:
# store_checker: ^1.1.0 # store_checker: ^1.1.0
google_api_availability: ^3.0.1 google_api_availability: ^3.0.1
in_app_update: 3.0.0
#todo its for temporary purpose, later will remove this. #todo its for temporary purpose, later will remove this.
dotted_border: ^2.0.0+3 dotted_border: ^2.0.0+3

Loading…
Cancel
Save