如何从Google Play获取应用程序的最新版本?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从Google Play获取应用程序的最新版本?相关的知识,希望对你有一定的参考价值。

我将我的应用添加到Google Play。

我想弹出一个对话框,在用户启动应用程序时提醒用户,如果有新的更新,用户可以点击“更新”然后跳转到Google Play。

我看到了以下问题,但不幸的是答案已经不再适用了。

How to get application version from google play?

Google似乎没有提供任何API来获取应用版本。

我在网上搜索了很长时间。据说很多答案都是通过Jsoup获得版本号,但现在没有用。请帮助或尝试提供一些如何实现这一点的想法。

以下是我尝试过的两种方法:

(1)

newVersionName = Jsoup.connect("https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID + "&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();

(2)

         Document document = Jsoup.connect("https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID + "&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();

            if (document != null) {
                Elements element = document.getElementsContainingOwnText("Current\sVersion");
                for (Element ele : element) {
                    if (ele.siblingElements() != null) {
                        Elements sibElemets = ele.siblingElements();
                        for (Element sibElemet : sibElemets) {
                            newVersionName = sibElemet.text();
                        }
                    }
                }
            }
答案

您可以使用firebase远程配置。有关更多详细信息,请参阅以下链接https://medium.com/@sembozdemir/force-your-users-to-update-your-app-with-using-firebase-33f1e0bcec5a

另一答案

可以使用以下方法:将“Current \ sVersion”替换为“Current Version”:

     Document document = Jsoup.connect("https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID + "&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();

        if (document != null) {
            Elements element = document.getElementsContainingOwnText("Current Version");
            for (Element ele : element) {
                if (ele.siblingElements() != null) {
                    Elements sibElemets = ele.siblingElements();
                    for (Element sibElemet : sibElemets) {
                        newVersionName = sibElemet.text();
                    }
                }
            }
        }

以上是关于如何从Google Play获取应用程序的最新版本?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过google map api最新版本(google play service 8.3)绘制从当前位置到目的地的行车路线

如何为项目使用不同版本的 google-play-services 库

如何将google play服务添加到eclipse

可以以编程方式更新 Google Play 服务吗?

即使我从 Google Play 安装了最新版本,在 android 7 应用程序上仍使用旧版本的 WebView

gsutil - 如何从 google play 获取 Android 应用审查报告