Skip to content

EasyRate is an Android library for dealing with app ratings & feedbacks. In simple words, it shows a modern and well-designed dialog to engage users to rate your app on the Google Play Store.

Notifications You must be signed in to change notification settings

grezzled/EasyRate

Repository files navigation

EasyRate Android

EasyRate is an Android library for dealing with app ratings & feedbacks. In simple words, it shows a modern and well-designed dialog to engage users to rate the app in Google Play. To avoid bad ratings, the CTA Button changes according to the user's review as Follow :

  • Write Feedback: if review between 1 & 3 Stars
  • Rate: if a review is 4 or 5 Stars

Getting Started

Add to your root build.gradle at the end of repositories:

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

Step 2. Add the dependency

implementation 'com.github.grezzled:EasyRate:1.0.2'

Basic Usage

Show dialog

EasyRate.init(MainActivity.this)
        .setMailingContact("[email protected]","write a subject","write a description")
        .show();

Initiate to show dialog at an appropriate timing

EasyRate.init(MainActivity.this)
        .setMailingContact("[email protected]","write a subject","write a description")
        .build();

Advanced Usage

In default, the dialog will be shown when the following conditions is satisfied.

  • App is launched more than 3 times
  • App is launched more than 3 days later than installation.
        EasyRate.init(MainActivity.this)
                .setMailingContact("[email protected]","write a subject","write a description")
                .setLaunchesDelay(10) // App Launched more than 10 times
                .setDaysDelay(7) // App is launched more than 7 days later than installation.
                .setOnCloseClickListener(new EasyRate.OnCloseClick() {
                    @Override
                    public void onCloseClickListener() {
                        // Set what to do when close button clicked!
                    }
                })
                .setOnFeedbackClickListener(new EasyRate.OnFeedbackClick() {
                    @Override
                    public void onFeedBackClickListener() {
                      /* By Overriding this Listener, Feedback by email will be ignored 
                        * and "setMailingContact()" won't be necessary anymore.
                        * You can call a feedback activity, open a link, your Instagram account or whatever you want
                       */
                    }
                })
                .build();

Reset Count of launches and days to 0

EasyRate.resetDelay(context); 

Prevent the dialog from showing again

EasyRate.dontShowAgain(true,context);

Contributing

If you want to contribute this project, please send pull request. In present, I need contributors who can translate resources from English into other languages. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update the tests as appropriate.

License

Copyright 2019 Grezzled

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Author

Grezzled - [email protected]

About

EasyRate is an Android library for dealing with app ratings & feedbacks. In simple words, it shows a modern and well-designed dialog to engage users to rate your app on the Google Play Store.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages