81

I want to check to see if a user has rated my app on the Google Play, not how many stars, just if they have. And if they haven't I will prompt them with a dialog asking them to rate it with this code:

startActivity( new Intent( Intent.ACTION_VIEW,
       Uri.parse("market://details?id=packagename") ) );
Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
  • 1
    As answered by others, this is not possible. But if you want to prompt the user to rate your app, you can use my small library project: https://github.com/marcow/AppRater – caw Jul 31 '13 at 03:53

5 Answers5

124

No. You cannot do this. And this is a good thing too -- otherwise you will be able to influence rating by giving people who rated it rewards and such. Additionally, developers would be able to retaliate to negative reviews if such an API were available. This might also violate certain legal agreements between the User and Google if Google starts revealing this data.

However, this is what I personally do in my apps:

  1. Let the user use the app 5 times, to get a good feel of it.
  2. Prompt the user on the sixth run to rate it with options for Yes, Later and Never. Later delays it by two days.
Raghav Sood
  • 81,899
  • 22
  • 187
  • 195
  • 1
    I really don't like apps that desperately try to get you to rate them the 2nd time you've started them up. 5 times is better, but I'd probably be less annoyed by one that waited at least 5 days and at least 10 uses before asking me to rate it. Maybe also one that gave you the question at the end of a session (ie, hitting back button on base activity) rather than when yu've just started it up to do something. – Julian Higginson Jul 01 '12 at 23:56
  • 1
    @JulianHigginson The exact time and place of the prompt depends from app to app. I use 5 runs as the minimum. One of my more extensive apps goes upto 15 days/20 uses. – Raghav Sood Jul 02 '12 at 00:01
  • 5
    what if user clicked yes on prompt & when user redirected to play store, user closed play store instead of rating the app.. – Ashish Sajwan May 05 '15 at 10:35
  • 10
    so what happens if user already rated the app? Surely it will be silly asking him to rate again – zooter Apr 24 '16 at 05:35
  • you don't need to ask to rate it again after two days, just save to preferences that dialog was shown to a user and don't ask any more! – user924 Jan 21 '22 at 13:15
8

Actually you can do it, you can get the username by using this or similar...

How can I get the google username on Android?

then fire a parser on https://play.google.com/store/apps/details?id=X URL...

<span class="author-name"> <a href="/store/people/details?id=11">Andy Borris</a>  </span>

<div class="tiny-star star-rating-non-editable-container" aria-label=" Rated 1 stars out of five stars "> <div class="current-rating" style="width: 20%;"></div> </div>

and then you can popup "rate me five stars or i will share your pictures with the world" :P lol just kidding

Community
  • 1
  • 1
D.Snap
  • 1,704
  • 1
  • 22
  • 15
  • 4
    But not all ratings are on one single page load when there are hundreds of ratings. So how could you find that username then? – AlexioVay Sep 28 '17 at 15:13
7

It does take an effort to get users to rate your app, especially if they like it! Unfortunately, negative ratings seem to take much less persuasion ;-)

I've tried a few things, all involving an app button titled "Rate me!" or some such, which when clicked, opens the Market App on the phone. It has been my experience that most users who click the first "Rate me" button will spend an extra 5 secs to give you a stars-rating (and remember most users don't know that your app cannot track whether they actually provided a rating or not). They may not give you a wordy review, and limit it to only a few words ("Great app"), but hey take what you can get!

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
PVS
  • 1,168
  • 11
  • 24
1

As other users mentioned before your best bet is to use a "Rate my app" button or dialog. If you use analytics you can track button clicks. If using Google Analytics you could assign event values for buttons displayed on the dialog box and see see how many users click "Rate" button.

Fat Monk
  • 2,077
  • 1
  • 26
  • 59
Zee
  • 673
  • 6
  • 7
1

It is not possible to know automatically how rated your app. A good practice that I suggest is to select the best momment to rate in order to get a better review.

1 - First, find the best moment for rating. You can do this efficiently by selecting the momment that you solve the users pain. For example, if you were uberlike app, the best momment would be when the users get a ride safely and give a good review for the driver.

2 - Then, code a dialog with Yes, Later and Never options and save to your database to ask later or not.

3 - Ask again on the next best momment.

Leo Paim
  • 500
  • 7
  • 9