Как получить информацию о версии на рынке приложений в магазине google play?

Как я могу получить информацию о версии приложения из магазина воспроизведения Google для запроса пользователю принудительного / рекомендуемого обновления приложения при обновлении приложения для магазина воспроизведения, то есть в случае использования пользователем старой версии приложения. Я уже прошел через andorid-market-api, который не является официальным способом, а также требует аутентификации пользователя из google. Я также прошел андроид-запрос, который проверяет версию приложения, но он не работает в моем случае. Я нашел следующие две альтернативы:

  • Использовать API-интерфейс сервера, который будет хранить информацию о версии
  • Используйте теги google и обращайтесь к нему в приложении, что не является предпочтительным способом.

Есть ли другие способы сделать это легко?

Я передумал, не использую библиотеку, просто создаю новый класс

1.

public class VersionChecker extends AsyncTask<String, String, String>{ String newVersion; @Override protected String doInBackground(String... params) { try { newVersion = Jsoup.connect("https://play.google.com/store/apps/details?id=" + "package name" + "&hl=en") .timeout(30000) .userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6") .referrer("http://www.google.com") .get() .select("div[itemprop=softwareVersion]") .first() .ownText(); } catch (IOException e) { e.printStackTrace(); } return newVersion; } 
  1. В вашей деятельности:

      VersionChecker versionChecker = new VersionChecker(); String latestVersion = versionChecker.execute().get(); 

ВОТ И ВСЕ

Вот версия jQuery, чтобы получить номер версии, если кому-то это понадобится.

  $.get("https://play.google.com/store/apps/details?id=" + packageName + "&hl=en", function(data){ console.log($('<div/>').html(data).contents().find('div[itemprop="softwareVersion"]').text().trim()); }); 

Вы можете вызвать следующий WebService: http://carreto.pt/tools/android-store-version/?package=%5BYOUR_APP_PACKAGE_NAME%5D

Пример использования Volley:

 String packageName = "com.google.android.apps.plus"; String url = "http://carreto.pt/tools/android-store-version/?package="; JsonObjectRequest jsObjRequest = new JsonObjectRequest (Request.Method.GET, url+packageName, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { /* here you have access to: package_name, - the app package name status - success (true) of the request or not (false) author - the app author app_name - the app name on the store locale - the locale defined by default for the app publish_date - the date when the update was published version - the version on the store last_version_description - the update text description */ try{ if(response != null && response.has("status") && response.getBoolean("status") && response.has("version")){ Toast.makeText(getApplicationContext(), response.getString("version").toString(), Toast.LENGTH_LONG).show(); } else{ //TODO handling error } } catch (Exception e){ //TODO handling error } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { //TODO handling error } }); 

Я рекомендую использовать ex. Push-уведомление, чтобы уведомить ваше приложение о том, что есть новое обновление, или используйте свой собственный сервер, чтобы включить версию приложения для чтения.

Да, его дополнительная работа каждый раз, когда вы обновляете свое приложение, но в этом случае вы не зависите от некоторых «неофициальных» или сторонних вещей, которые могут закончиться без обслуживания.

На всякий случай, когда вы что-то пропустили – предыдущее обсуждение вашей темы запрашивает в Google Play магазине версию приложения?

Использовать API-интерфейс сервера, который будет хранить информацию о версии

Как вы сказали. Это простой способ обнаружить обновление. Передавайте информацию о своей версии с помощью всех вызовов API. Когда обновляется игровой магазин, измените версию на сервере. После того, как версия сервера выше установленной версии приложения, вы можете вернуть код состояния / сообщение в ответ API, который можно обработать, и сообщение об обновлении может быть показано. Вы также можете заблокировать пользователей от использования очень старого приложения, такого как WhatsApp, если вы используете этот метод.

Или вы можете использовать push-уведомление, которое легко сделать … Также

Firebase Remote Config может помочь лучше всего здесь,

См. Этот ответ https://stackoverflow.com/a/45750132/2049384