Last updated:
0 purchases
in googleplay update
Presented by
https://lapakprogrammer.com/
Maintained by ACHMAD MAULANA
in_googleplay_update #
Enables In App Updates on Android using the official Android APIs.
https://developer.android.com/guide/app-bundle/in-app-updates
Documentation #
The following methods are exposed:
Future<AppUpdateInfo> checkForUpdate(): Checks if there's an update available
Future<void> performImmediateUpdate(): Performs an immediate update (full-screen)
Future<void> startFlexibleUpdate(): Starts a flexible update (background download)
Future<void> completeFlexibleUpdate(): Actually installs an available flexible update
Stream<String> flexibleUpdateStream(): To listener flexible update state this return json string bytes_downloaded: string, total_bytes_to_download used this for make progress har download
example: flexible progressbar
StreamBuilder<String>(
stream: InAppPlayUpdate.flexibleUpdateStream(),
builder: (context, snapshot) {
if (snapshot.hasData) {
String byteStringDownload = snapshot.data ?? '{}';
final byteDownload = json.decode(byteStringDownload);
return Column(
children: [
if(int.parse(byteDownload['bytes_downloaded']) == 0 && int.parse(byteDownload['total_bytes_to_download']) == 0)...[
ElevatedButton(
onPressed: () {
InAppPlayUpdate.completeFlexibleUpdate().then((_) {
showSnack("Success!");
}).catchError((e) {
showSnack(e.toString());
});
},
child: const Text('Complete flexible update'),
),
] else...[
LinearProgressIndicator(
value: (int.parse(byteDownload['bytes_downloaded']) / int.parse(byteDownload['total_bytes_to_download'])),
),
Text('${filesize(int.parse(byteDownload['bytes_downloaded']))}/${filesize(int.parse(byteDownload['total_bytes_to_download']))}',
style: const TextStyle(
fontSize: 14
),
)
]
],
);
} else {
return Column(
children: [
SizedBox(height: 10),
SizedBox(
width: 30,
height: 30,
child: CircularProgressIndicator(),
),
Text('This loading for download flexible indicator',
style: const TextStyle(
fontSize: 14
),
)
],
);
}
},
)
copied to clipboard
Please have a look in the example app on how to use it!
Android #
This plugin integrates the official Android APIs to perform in app updated that were released in 2019:
https://developer.android.com/guide/app-bundle/in-app-updates
Troubleshooting #
Getting ERROR_API_NOT_AVAILABLE error #
Be aware that this plugin cannot be tested locally. It must be installed via Google Play to work.
Please check the official documentation about In App Updates from Google.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.