Skip to content

Commit caa25af

Browse files
committed
Updated the README
1 parent 51f2c9a commit caa25af

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

README.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ will become more likely that users on other app stores need to be nagged about u
3232
| WEB | ❌ No | ✅ Yes |
3333
| WINDOWS | ❌ No | ✅ Yes |
3434

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+
3537
## Widgets
3638
The widgets come in two flavors: alert or card. The [UpgradeAlert](#alert-example) widget is used to display the
3739
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
377379
final bestItem = appcast.bestItem();
378380
```
379381

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+
380395
## Customizing the strings
381396

382397
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
499514
only use 2 digits (MAJOR.MINOR), it converts it to a 3 digit version: MAJOR.MINOR.0, to
500515
be compliant with Semantic Versioning.
501516

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+
502519
## Examples
503520

504521
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.
514531
| main_macos.dart | main_messages.dart | main_min_app_version.dart |
515532
| main_multiple.dart | main_stateful.dart | main_subclass.dart |
516533

517-
## Tapping UPDATE NOW button issue on Android
534+
## Troubleshooting
535+
536+
### Updates not showing?
537+
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
518542

519543
Seeing an error similar to this on Android after tapping the UPDATE NOW button?
520544
```

0 commit comments

Comments
 (0)