In fact, you can check whether the user left a comment in google play-e, but not in the traditional way =). This service is proof of that. At least earlier after installing the application, he demanded to leave a rating. A few years ago I was making a similar product and the customer had the same requirement. In the end, came up with the following solution:
public static void getCommentsFromMarket(final int pageNumber, final String uid, String marketName, final CallBack callBack) { AsyncHttpClient client = new AsyncHttpClient(); String url = "https://play.google.com/store/getreviews"; RequestParams params = new RequestParams(); try { client.addHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0"); client.addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); client.addHeader("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3"); client.addHeader("Accept-Encoding", "gzip, deflate"); client.addHeader("Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.7"); client.addHeader("Connection", "keep-alive"); client.addHeader("Referer", "https://play.google.com"); params.put("reviewType", "0"); params.put("pageNum", String.valueOf(pageNumber)); params.put("id", marketName); params.put("reviewSortOrder", "0"); params.put("xhr", "1"); params.put("hl", "ru"); client.post(url, params, new AsyncHttpResponseHandler() { @Override public void onSuccess(String result) { // postDataToServer(pageNumber, uid, result, new CallBack()); if (result.contains(uid)) { callBack.onSuccess(true); } else { callBack.onSuccess(false); } } public void onFailure(Throwable th) { callBack.onFail(th.getLocalizedMessage()); } }); } catch (Exception e) { callBack.onFail(e.getLocalizedMessage()); } }
where int pageNumber is the page number with comments, String uid is the user id in google plus. In the example I used the asyncHttpClient library. Actually, the method had to be run in a cycle over 10 pages, since as a rule, fresh comment was always within their framework.