Skip to content

Commit 8a119be

Browse files
authored
Merge pull request #1 from MrJohnDev/kotlin_update
Kotlin Update
2 parents ea5e145 + 733b46b commit 8a119be

File tree

3 files changed

+25
-22
lines changed

3 files changed

+25
-22
lines changed

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ buildscript {
55
ext.kotlin_version = '1.7.10'
66
repositories {
77
google()
8-
jcenter()
8+
mavenCentral()
99
}
1010

1111
dependencies {

example/android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ buildscript {
22
ext.kotlin_version = '1.7.10'
33
repositories {
44
google()
5-
jcenter()
5+
mavenCentral()
66
}
77

88
dependencies {

lib/in_app_update.dart

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -56,26 +56,29 @@ class InAppUpdate {
5656
/// Returns [AppUpdateInfo], which can be used to decide if
5757
/// [startFlexibleUpdate] or [performImmediateUpdate] should be called.
5858
static Future<AppUpdateInfo> checkForUpdate() async {
59-
final result = await _channel.invokeMethod('checkForUpdate');
60-
61-
return AppUpdateInfo(
62-
updateAvailability: UpdateAvailability.values.firstWhere(
63-
(element) => element.value == result['updateAvailability']),
64-
immediateUpdateAllowed: result['immediateAllowed'],
65-
immediateAllowedPreconditions: result['immediateAllowedPreconditions']
66-
?.map<int>((e) => e as int)
67-
.toList(),
68-
flexibleUpdateAllowed: result['flexibleAllowed'],
69-
flexibleAllowedPreconditions: result['flexibleAllowedPreconditions']
70-
?.map<int>((e) => e as int)
71-
.toList(),
72-
availableVersionCode: result['availableVersionCode'],
73-
installStatus: InstallStatus.values
74-
.firstWhere((element) => element.value == result['installStatus']),
75-
packageName: result['packageName'],
76-
clientVersionStalenessDays: result['clientVersionStalenessDays'],
77-
updatePriority: result['updatePriority'],
78-
);
59+
try {
60+
final result = await _channel.invokeMethod('checkForUpdate');
61+
return AppUpdateInfo(
62+
updateAvailability: UpdateAvailability.values.firstWhere(
63+
(element) => element.value == result['updateAvailability']),
64+
immediateUpdateAllowed: result['immediateAllowed'],
65+
immediateAllowedPreconditions: result['immediateAllowedPreconditions']
66+
?.map<int>((e) => e as int)
67+
.toList(),
68+
flexibleUpdateAllowed: result['flexibleAllowed'],
69+
flexibleAllowedPreconditions: result['flexibleAllowedPreconditions']
70+
?.map<int>((e) => e as int)
71+
.toList(),
72+
availableVersionCode: result['availableVersionCode'],
73+
installStatus: InstallStatus.values
74+
.firstWhere((element) => element.value == result['installStatus']),
75+
packageName: result['packageName'],
76+
clientVersionStalenessDays: result['clientVersionStalenessDays'],
77+
updatePriority: result['updatePriority'],
78+
);
79+
} on PlatformException catch (e) {
80+
throw e;
81+
}
7982
}
8083

8184
/// Performs an immediate update that is entirely handled by the Play API.

0 commit comments

Comments
 (0)