You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+25-1Lines changed: 25 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,6 +32,8 @@ will become more likely that users on other app stores need to be nagged about u
32
32
| WEB |❌ No |✅ Yes |
33
33
| WINDOWS |❌ No |✅ Yes |
34
34
35
+
**Note:** This package relies on scraping public Play Store pages for Android. It does *not* use the native Android In-App Updates API or Huawei AppGallery API.
36
+
35
37
## Widgets
36
38
The widgets come in two flavors: alert or card. The [UpgradeAlert](#alert-example) widget is used to display the
37
39
popup alert prompt, and the [UpgradeCard](#card-example) widget is used to display the inline material design card.
@@ -377,6 +379,19 @@ final items = await appcast.parseAppcastItemsFromUri('https://raw.githubusercont
377
379
final bestItem = appcast.bestItem();
378
380
```
379
381
382
+
### Appcast Critical Update
383
+
You can force an update (hiding the Ignore and Later buttons) by adding the `sparkle:criticalUpdate` tag to the item in your Appcast XML.
384
+
385
+
```xml
386
+
<item>
387
+
<title>Version 1.15.0</title>
388
+
<sparkle:tags>
389
+
<sparkle:criticalUpdate />
390
+
</sparkle:tags>
391
+
...
392
+
</item>
393
+
```
394
+
380
395
## Customizing the strings
381
396
382
397
The strings displayed in `upgrader` can be customzied by extending the `UpgraderMessages` class
@@ -499,6 +514,8 @@ digit (MAJOR), it converts it to a 3 digit version: MAJOR.0.0, and for versions
499
514
only use 2 digits (MAJOR.MINOR), it converts it to a 3 digit version: MAJOR.MINOR.0, to
500
515
be compliant with Semantic Versioning.
501
516
517
+
**Important:** The version string in your store listing (Google Play / App Store) *must* be a valid semantic version (e.g. `1.2.3` or `1.2.3+4`). Formats like `1.2.3(4)` are not valid and will cause a `FormatException`.
518
+
502
519
## Examples
503
520
504
521
There are [plenty of examples](https://github.com/larryaasen/upgrader/tree/main/example/lib) that cover various different situations that may
@@ -514,7 +531,14 @@ help you customize the `upgrader` experience for your app. Check these out.
1.**Google Play Closed/Internal Testing:** This package relies on scraping the *public* store page. If your app is in a Closed or Internal testing track, the page is not public, and `upgrader` cannot see the version. Use an **Appcast** for testing these pre-production builds.
538
+
2.**Cache/Ignored:** If you previously tapped "Ignore" or "Later", the alert will be suppressed. You can reset this state by calling `await Upgrader.clearSavedSettings();` during development only.
539
+
3.**Debug Mode:** By default, logs are hidden. Enable `debugLogging: true` in the `Upgrader` constructor to see exactly what the package is parsing.
540
+
541
+
### Tapping UPDATE NOW button issue on Android
518
542
519
543
Seeing an error similar to this on Android after tapping the UPDATE NOW button?
0 commit comments