Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/impaktfull/flutter_appcenter_release_manager
Download appcenter updates straight from your iOS or Android app.
https://github.com/impaktfull/flutter_appcenter_release_manager
android appcenter dart flutter ios release-manager
Last synced: about 2 months ago
JSON representation
Download appcenter updates straight from your iOS or Android app.
- Host: GitHub
- URL: https://github.com/impaktfull/flutter_appcenter_release_manager
- Owner: impaktfull
- License: other
- Created: 2020-12-02T18:48:29.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-02-13T11:43:32.000Z (7 months ago)
- Last Synced: 2024-06-09T18:37:39.116Z (3 months ago)
- Topics: android, appcenter, dart, flutter, ios, release-manager
- Language: Dart
- Homepage:
- Size: 163 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# AppCenter Release Manager
[![pub package](https://img.shields.io/pub/v/appcenter_release_manager.svg)](https://pub.dartlang.org/packages/appcenter_release_manager)
[![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)Download appcenter updates straight from your iOS or Android app.
### Use the predefined UI with the AppcenterReleaseManagerLatestReleases widget
Api Token should have read access only
```dart
AppcenterReleaseManagerLatestReleases(
apiToken: 'your-api-token',
ownerName: 'your-owner-name',
appName: 'your-app-name',
),
```### Use the manager to create your custom ui. Should be used as a repository/service
Api Token should have read access only
```dart
AppCenterReleaseManager(
apiToken: 'your-api-token',
)
```### Install by url or release details:
Api Token should have read access only
```dart
final details = await AppCenterReleaseManager(apiToken: '').getLatestReleaseDetails('owner_name','app_name');
AppCenterReleaseManager(apiToken: '').installRelease(details, openAndroidInstallScreen: true, keepAndroidNotification: false);
```Or by url
Api Token should have read access only
```dart
final details = await AppCenterReleaseManager(apiToken: '').getLatestReleaseDetails('owner_name','app_name');
AppCenterReleaseManager(apiToken: '').installReleaseByUrl(details.installUrl, appName: 'your-app-name', appVersion: 'your-version', openAndroidInstallScreen: true, keepAndroidNotification: false); //appName & appVersion & openAndroidInstallScreen & keepAndroidNotification will be used in the notification on android. On iOS this is never used
```#### Install Options
`openAndroidInstallScreen` -> On Android, this will open the install screen after the download is finished. On iOS this is never used
`keepAndroidNotification` -> On Android, this will keep the notification after the download is finished. On iOS this is never used
If you use openAndroidInstallScreen: false -> keepAndroidNotification will automatically be set to true### Full access
If you also want to splits everything up by owner you need to provide a full access api token### Other available methods for the AppCenterReleaseManager:
Api Token should have read access only
```dart
AppCenterReleaseManager(apiToken: '').getUserDetails(); //global api token onlyAppCenterReleaseManager(apiToken: '').getAllOrganizations(); //global api token only
AppCenterReleaseManager(apiToken: '').getAllApps(); //global api token only
AppCenterReleaseManager(apiToken: '').getAllApps(ownerName: 'owner_name'); //global api token only
AppCenterReleaseManager(apiToken: '').getReleases('owner_name','app_name'); //global/app api token only
AppCenterReleaseManager(apiToken: '').getReleaseDetails('owner_name','app_name', 'id'); //global/app api token only
AppCenterReleaseManager(apiToken: '').getLatestReleaseDetails('owner_name','app_name'); //global/app api token only
```### Android Production:
This package automaticly adds an extra permission to install apps from Android 8 & above.
```xml
```For most cases you don't want this permission in Production. To remove this. Add the following lines to the AndroidManifest.xml for the flavour/buildtype where you don't want this permission
```xml
```
In most cases you will place this in
`/android/app/src/release/AndroidManifest.xml`
But if you are using a flavour like `prod`, `alpha`, `beta` it will probably only be added here:
`/android/app/src/prod/AndroidManifest.xml`
This will make sure that the permission is only removed in `prod` so you can still install updates in `beta` & `alpha`