forked from fluttercommunity/get_version
-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
10 changed files
with
352 additions
and
93 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,232 @@ | ||
[![Buy Me A Coffee](https://img.shields.io/badge/Donate-Buy%20Me%20A%20Coffee-yellow.svg)](https://www.buymeacoffee.com/rodydavis) | ||
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WSH3GVC49GNNJ) | ||
|
||
# get_version | ||
![alt text](https://github.com/AppleEducate/get_version/blob/master/screenshots/IMG_0023.PNG) | ||
|
||
## Description | ||
Get the Version Name, Version Code and App ID on iOS and Android. | ||
|
||
## Setup | ||
### Android | ||
|
||
Go to build.gradle and update: | ||
|
||
``` | ||
defaultConfig { | ||
versionCode 1 | ||
versionName "1.0" | ||
minSdkVersion 16 | ||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" | ||
} | ||
``` | ||
|
||
### iOS | ||
|
||
Already good to go. | ||
|
||
## How to Use | ||
|
||
Get OS Version: | ||
|
||
``` | ||
String platformVersion; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
platformVersion = await GetVersion.platformVersion; | ||
} on PlatformException { | ||
platformVersion = 'Failed to get platform version.'; | ||
} | ||
``` | ||
|
||
Get Version Name: | ||
|
||
``` | ||
String projectVersion; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectVersion = await GetVersion.projectVersion; | ||
} on PlatformException { | ||
projectVersion = 'Failed to get project version.'; | ||
} | ||
``` | ||
|
||
Get Version Code: | ||
|
||
``` | ||
String projectCode; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectCode = await GetVersion.projectCode; | ||
} on PlatformException { | ||
projectCode = 'Failed to get build number.'; | ||
} | ||
``` | ||
|
||
Get App ID: | ||
|
||
``` | ||
String projectAppID; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectAppID = await GetVersion.appID; | ||
} on PlatformException { | ||
projectAppID = 'Failed to get app ID.'; | ||
} | ||
``` | ||
|
||
Get App Name: | ||
|
||
``` | ||
String projectName; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectName = await GetVersion.appName; | ||
} on PlatformException { | ||
projectName = 'Failed to get app name.'; | ||
} | ||
``` | ||
|
||
## Example | ||
|
||
``` | ||
import 'package:flutter/material.dart'; | ||
import 'package:flutter/services.dart'; | ||
import 'package:get_version/get_version.dart'; | ||
void main() => runApp(new MyApp()); | ||
class MyApp extends StatefulWidget { | ||
@override | ||
_MyAppState createState() => new _MyAppState(); | ||
} | ||
class _MyAppState extends State<MyApp> { | ||
String _platformVersion = 'Unknown'; | ||
String _projectVersion = ''; | ||
String _projectCode = ''; | ||
String _projectAppID = ''; | ||
String _projectName = ''; | ||
@override | ||
initState() { | ||
super.initState(); | ||
initPlatformState(); | ||
} | ||
// Platform messages are asynchronous, so we initialize in an async method. | ||
initPlatformState() async { | ||
String platformVersion; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
platformVersion = await GetVersion.platformVersion; | ||
} on PlatformException { | ||
platformVersion = 'Failed to get platform version.'; | ||
} | ||
String projectVersion; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectVersion = await GetVersion.projectVersion; | ||
} on PlatformException { | ||
projectVersion = 'Failed to get project version.'; | ||
} | ||
String projectCode; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectCode = await GetVersion.projectCode; | ||
} on PlatformException { | ||
projectCode = 'Failed to get build number.'; | ||
} | ||
String projectAppID; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectAppID = await GetVersion.appID; | ||
} on PlatformException { | ||
projectAppID = 'Failed to get app ID.'; | ||
} | ||
String projectName; | ||
// Platform messages may fail, so we use a try/catch PlatformException. | ||
try { | ||
projectName = await GetVersion.appName; | ||
} on PlatformException { | ||
projectName = 'Failed to get app name.'; | ||
} | ||
// If the widget was removed from the tree while the asynchronous platform | ||
// message was in flight, we want to discard the reply rather than calling | ||
// setState to update our non-existent appearance. | ||
if (!mounted) return; | ||
setState(() { | ||
_platformVersion = platformVersion; | ||
_projectVersion = projectVersion; | ||
_projectCode = projectCode; | ||
_projectAppID = projectAppID; | ||
_projectName = projectName; | ||
}); | ||
} | ||
<h3 align="center">The <i>get_version<i> plugin was moved to <a href='https://github.com/AppleEducate/plugins'>plugins/packages/get_version</a></h3> | ||
@override | ||
Widget build(BuildContext context) { | ||
return new MaterialApp( | ||
home: new Scaffold( | ||
appBar: new AppBar( | ||
title: new Text('Plugin example app'), | ||
), | ||
body: new SingleChildScrollView( | ||
child: new ListBody( | ||
children: <Widget>[ | ||
new Container( | ||
height: 10.0, | ||
), | ||
new ListTile( | ||
leading: new Icon(Icons.info), | ||
title: const Text('Name'), | ||
subtitle: new Text(_projectName), | ||
), | ||
new Container( | ||
height: 10.0, | ||
), | ||
new ListTile( | ||
leading: new Icon(Icons.info), | ||
title: const Text('Running on'), | ||
subtitle: new Text(_platformVersion), | ||
), | ||
new Divider( | ||
height: 20.0, | ||
), | ||
new ListTile( | ||
leading: new Icon(Icons.info), | ||
title: const Text('Version Name'), | ||
subtitle: new Text(_projectVersion), | ||
), | ||
new Divider( | ||
height: 20.0, | ||
), | ||
new ListTile( | ||
leading: new Icon(Icons.info), | ||
title: const Text('Version Code'), | ||
subtitle: new Text(_projectCode), | ||
), | ||
new Divider( | ||
height: 20.0, | ||
), | ||
new ListTile( | ||
leading: new Icon(Icons.info), | ||
title: const Text('App ID'), | ||
subtitle: new Text(_projectAppID), | ||
), | ||
], | ||
), | ||
), | ||
), | ||
); | ||
} | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,3 @@ | ||
org.gradle.jvmargs=-Xmx1536M | ||
android.enableJetifier=true | ||
android.useAndroidX=true | ||
org.gradle.jvmargs=-Xmx1536M |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
#Fri Jun 23 08:50:38 CEST 2017 | ||
#Thu Feb 07 11:51:55 EST 2019 | ||
distributionBase=GRADLE_USER_HOME | ||
distributionPath=wrapper/dists | ||
zipStoreBase=GRADLE_USER_HOME | ||
zipStorePath=wrapper/dists | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip |
Oops, something went wrong.