mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-06-29 10:17:16 +08:00
Feedback: Send us the version number of the app
This commit is contained in:
@ -1,7 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:journal/app.dart';
|
|
||||||
import 'package:journal/settings.dart';
|
import 'package:journal/settings.dart';
|
||||||
import 'package:package_info/package_info.dart';
|
import 'package:journal/utils.dart';
|
||||||
|
|
||||||
class SettingsScreen extends StatelessWidget {
|
class SettingsScreen extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
@ -143,40 +142,27 @@ class VersionNumberTile extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class VersionNumberTileState extends State<VersionNumberTile> {
|
class VersionNumberTileState extends State<VersionNumberTile> {
|
||||||
PackageInfo packageInfo;
|
String versionText;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
|
||||||
() async {
|
() async {
|
||||||
PackageInfo info = await PackageInfo.fromPlatform();
|
var str = await getVersionString();
|
||||||
setState(() {
|
setState(() {
|
||||||
packageInfo = info;
|
versionText = str;
|
||||||
});
|
});
|
||||||
}();
|
}();
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
var text = "";
|
|
||||||
if (packageInfo != null) {
|
|
||||||
text = packageInfo.appName +
|
|
||||||
" " +
|
|
||||||
packageInfo.version +
|
|
||||||
"+" +
|
|
||||||
packageInfo.buildNumber;
|
|
||||||
|
|
||||||
if (JournalApp.isInDebugMode) {
|
|
||||||
text += " (Debug)";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var textTheme = Theme.of(context).textTheme;
|
var textTheme = Theme.of(context).textTheme;
|
||||||
return ListTile(
|
return ListTile(
|
||||||
title: Text("Version Info", style: textTheme.subhead),
|
title: Text("Version Info", style: textTheme.subhead),
|
||||||
subtitle: Text(
|
subtitle: Text(
|
||||||
text,
|
versionText,
|
||||||
style: textTheme.body1,
|
style: textTheme.body1,
|
||||||
textAlign: TextAlign.left,
|
textAlign: TextAlign.left,
|
||||||
),
|
),
|
||||||
|
16
lib/utils.dart
Normal file
16
lib/utils.dart
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
import 'package:journal/app.dart';
|
||||||
|
import 'package:package_info/package_info.dart';
|
||||||
|
|
||||||
|
Future<String> getVersionString() async {
|
||||||
|
var info = await PackageInfo.fromPlatform();
|
||||||
|
var versionText = "";
|
||||||
|
if (info != null) {
|
||||||
|
versionText = info.appName + " " + info.version + "+" + info.buildNumber;
|
||||||
|
|
||||||
|
if (JournalApp.isInDebugMode) {
|
||||||
|
versionText += " (Debug)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return versionText;
|
||||||
|
}
|
@ -1,5 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:journal/state_container.dart';
|
import 'package:journal/state_container.dart';
|
||||||
|
import 'package:journal/utils.dart';
|
||||||
import 'package:launch_review/launch_review.dart';
|
import 'package:launch_review/launch_review.dart';
|
||||||
import 'package:share/share.dart';
|
import 'package:share/share.dart';
|
||||||
import 'package:url_launcher/url_launcher.dart';
|
import 'package:url_launcher/url_launcher.dart';
|
||||||
@ -67,11 +68,13 @@ class AppDrawer extends StatelessWidget {
|
|||||||
ListTile(
|
ListTile(
|
||||||
leading: Icon(Icons.rate_review, color: textStyle.color),
|
leading: Icon(Icons.rate_review, color: textStyle.color),
|
||||||
title: Text('Feedback', style: textStyle),
|
title: Text('Feedback', style: textStyle),
|
||||||
onTap: () {
|
onTap: () async {
|
||||||
|
var versionText = await getVersionString();
|
||||||
|
|
||||||
var emailAddress = 'gitjournal.io@gmail.com';
|
var emailAddress = 'gitjournal.io@gmail.com';
|
||||||
var subject = 'GitJournal Feedback';
|
var subject = 'GitJournal Feedback';
|
||||||
var body =
|
var body =
|
||||||
"Hey!\n\nHere are some ways to improve GitJournal - \n";
|
"Hey!\n\nHere are some ways to improve GitJournal - \n \n\nVersion: $versionText";
|
||||||
var url = 'mailto:$emailAddress?subject=$subject&body=$body';
|
var url = 'mailto:$emailAddress?subject=$subject&body=$body';
|
||||||
launch(url);
|
launch(url);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user