-1

Currently in my Android application I have a popup that brings the user to my application in the Google Play store so they can review my application. I would like to display the popup only if the current user account has not reviewed my application yet. Is it possible to check if the account has already written a review or rated the application?

Jerome
  • 1,429
  • 11
  • 13
user2413972
  • 1,355
  • 2
  • 9
  • 25
  • 2
    possible duplicate of [How do you to check if a user has rated your app on the android market?](http://stackoverflow.com/questions/11284549/how-do-you-to-check-if-a-user-has-rated-your-app-on-the-android-market), [How to check if somebody wrote a review to my Android App](http://stackoverflow.com/questions/10537971/how-to-check-if-somebody-wrote-a-review-to-my-android-app) and [How to know if a specific user has rated a Android App?](http://stackoverflow.com/questions/5318700/how-to-know-if-a-specific-user-has-rated-a-android-app) – zakinster May 23 '13 at 14:19
  • Create your own script... or ask a new stackoverflow question "How to create script that checks if somebody wrote a review to my Android Application?" :) – gran33 May 23 '13 at 14:20
  • I want to open additional content after the evaluation. – user2413972 May 23 '13 at 14:23
  • The only solutions to do that seems to be in violation of *Google* policy. – zakinster May 23 '13 at 14:23

1 Answers1

0

There are no official Google API to access Google Play data, however, there is an unofficial
android-market-api that may allow you to list all your app's comments.

Example from android-market-api wiki :

CommentsRequest commentsRequest = CommentsRequest.newBuilder()
                                .setAppId("7065399193137006744")
                                .setStartIndex(0)
                                .setEntriesCount(10)
                                .build();

 session.append(commentsRequest, new Callback<CommentsResponse>() {
  @Override
    public void onResult(ResponseContext context, CommentsResponse response) {
        System.out.println("Response : " + response);
        // response.getComments(0).getAuthorName()
        // response.getComments(0).getCreationTime()
        // ...
    }
});

session.flush();

Which is suppose to output something like :

{
  "comments": [
    {
      "rating": 5,
      "creationTime": 1269710736815,
      "authorName": "Nate Kidwell",
      "text": "Tremendous application. More examples would be great (as would integrated rubydocs), but awesome all the same.",
      "authorId": "04441815096871118032"
    },
...

You may then be able to identify the current user in the comment list to check if he already reviewed your app or not.

zakinster
  • 10,508
  • 1
  • 41
  • 52
  • I need only the fact of a comment rather than texts. – user2413972 May 23 '13 at 14:39
  • @user2413972 This API is only crawling Google Play in order to get the list of an application review. (A thing you can do yourself by sending HTTP request to `play.google.com/store/apps/details?id=com.example.yourapp`). You would then need the User name or ID to check whether he posted a review. – zakinster May 23 '13 at 14:50