2016-10-11 49 views
4

我想知道我的应用在Android商店中的应用版本。如何获取Play商店的应用版本

我需要知道,如果有必要,向用户显示提供更新的消息。我可以得到我的安装版本应用程序版本(使用科尔多瓦 - 插件,应用程序版本)这样的:

cordova.getAppVersion.getVersionNumber(function (version) { 

      console.log("la version de la app es " + version); 
      $scope.versi = version; 
}); 

而不是Android商店的应用程序版本。

+0

一个办法是让你自己用于检查当前应用程序版本的网络服务 – Akis

+0

为什么y你想这样做吗?无论如何,Play商店都会提供更新。 – Henry

+0

是的。但我想在应用程序中向用户显示一条消息,我想强制升级应用程序有时 –

回答

3

我在一年前找到了解决方案。现在我无法找到一个链接,但有它:

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

要求Jsoup library。 这里是详细的链接answare link

+0

他们可能会提供某种API,我相信 – Killer

+1

@Shubham我也相信。因为当我们没有获得一些普通应用程序信息的本地方式时,这并不舒服。 –

+0

我可以使用https://github.com/googlesamples/android-play-publisher-api/tree/master/v2/java进行简单的ajax调用以获取应用程序版本 – Anuj

1

你可能想检查Edits.apks: upload方法,它会为你上传的每个APK返回一个版本代码;当您将它分配给轨道时,您将使用此版本代码来引用APK。这是documentation

这个unofficial API也可能有帮助,如SO thread中所述。

具体来说,看看维基页面 HowToSearchApps。 对查询的响应包含版本信息:

{ 
    "app": [ 
    { 
     "rating": "4.642857142857143", 
     "title": "Ruboto IRB", 
     "ratingsCount": 14, 
     "creator": "Jan Berkel", 
     "appType": "APPLICATION", 
     "id": "9089465703133677000", 
     "packageName": "org.jruby.ruboto.irb", 
     "version": "0.1", 
     "versionCode": 1, 
     "creatorId": "\"Jan Berkel\"", 
     "ExtendedInfo": { 
     "category": "Tools", 
     "permissionId": [ 
... 

这里有一些相关的SO职位:

+0

我会尝试。谢谢 –

相关问题