app_review 0.0.1 app_review: ^0.0.1 copied to clipboard
Request and Write Reviews and Open Store Listing for Android/iOS in Flutter.
app_review #
Description #
Flutter Plugin for Requesting and Writing Reviews in Google Play and the App Store. Apps have to be published for the app to be found correctly. Android only supports navigating to Store Listing in Google Play.
Installing #
get_version:
git:
url: git://github.com/AppleEducate/app_review
Import #
import 'package:app_review/app_review.dart';
Android
Navigates to Store Listing in Google Play
iOS
For Requesting Reviews it is managed by Apple. You can call the code on the page load and if the user has rate in app turned on Apple will send the request for the pop up. In debug mode it will always display. This is the required way for requesting reviews after iOS 10.3.
Example #
import 'package:app_review/app_review.dart';
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => new _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
initState() {
super.initState();
AppReview.getAppID.then((onValue) {
setState(() {
appID = onValue;
});
print("App ID" + appID);
});
}
String appID = "";
String output = "";
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(
title: new Text('App Review'),
),
body: new SingleChildScrollView(
child: new ListBody(
children: <Widget>[
new Container(
height: 40.0,
),
new ListTile(
leading: new Icon(Icons.info),
title: new Text('App ID'),
subtitle: new Text(appID),
onTap: () {
AppReview.getAppID.then((onValue) {
setState(() {
output = onValue;
});
print(onValue);
});
},
),
new Divider(
height: 20.0,
),
new ListTile(
leading: new Icon(
Icons.shop,
),
title: new Text('View Store Page'),
onTap: () {
AppReview.storeListing.then((onValue) {
setState(() {
output = onValue;
});
print(onValue);
});
},
),
new Divider(
height: 20.0,
),
new ListTile(
leading: new Icon(
Icons.star,
),
title: new Text('Request Review'),
onTap: () {
AppReview.requestReview.then((onValue) {
setState(() {
output = onValue;
});
print(onValue);
});
},
),
new Divider(
height: 20.0,
),
new ListTile(
leading: new Icon(
Icons.note_add,
),
title: new Text('Write a New Review'),
onTap: () {
AppReview.writeReview.then((onValue) {
setState(() {
output = onValue;
});
print(onValue);
});
},
),
new Divider(
height: 20.0,
),
new ListTile(
title: new Text(output),
),
],
),
),
),
);
}
}