android - 如何以编程方式获取华为应用市场上应用程序的版本?

标签 android google-play huawei-mobile-services appgallery

我知道如何为 Google Play 商店完成 (answer here) ,但我没能找到 AppGallery 的方法。 谢谢!

更新#1

使用下面的答案,我通过以下步骤部分解决了这个问题:

  1. 制作一个具有管理员角色的 API 客户端,它还可以与应用管理员和运营人员一起使用。 (此处的文档:API Client)
  2. 获取访问 token 。 (此处的文档:Obtaining a Token)
  3. 获取应用信息。 (此处的文档:Querying App Information)

查询应用信息的响应,有很多关于应用的信息,包括“versionNumber”,但对我来说它没有提供“versionNumber”(我需要的单一信息),因为这个参数是可选的。现在我又被卡住了,因为我不明白我需要改变什么才能收到这个。

如果有人知道我该如何解决这个问题,非常感谢您的帮助。

更新 #2

@shirley 的评论是正确的。 该问题已在他们的最新版本中得到修复,并已于本月发布。

最佳答案

可以调用查询应用信息接口(interface)(GET方式)查询应用详情:

public static void getAppInfo(String domain, String clientId, String token, String appId, String lang) {
     HttpGet get = new HttpGet(domain + "/publish/v2/app-info?appid=" + appId + "&lang=" + lang);
     get.setHeader("Authorization", "Bearer " + token);
     get.setHeader("client_id", clientId);
     try {
         CloseableHttpClient httpClient = HttpClients.createDefault();
         CloseableHttpResponse httpResponse = httpClient.execute(get);
         int statusCode = httpResponse.getStatusLine().getStatusCode();
         if (statusCode == HttpStatus.SC_OK) {
             BufferedReader br =
                     new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), Consts.UTF_8));
             String result = br.readLine();
             // Object returned by the app information query API, which can be received using the AppInfo object. For details, please refer to the API reference.
             JSONObject object = JSON.parseObject(result);
             System.out.println(object.get("ret"));
         }
     } catch (Exception e) {
     }
 }

它们在此处被提及:Completing App Information , Querying App Information .

关于android - 如何以编程方式获取华为应用市场上应用程序的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63013857/

相关文章:

android - 从 recyclerview 获取详细信息并使用 cardview 和 retrofit 2 网络库在另一个 fragment 中显示结果

google-play - 为什么 Google Play 的事件设备安装量不等于每日设备安装总量减去每日设备卸载总量?

android - 如何将不同的 firebase 数据库连接到 release/beta/alpha 版本?

java - 如何找出我已经写入字节缓冲区的字节数(Java 新手)

java - 将 JSONArray 中的所有 null 值替换为空字符串

Android - Google+ 共享状态失败并且 Google Play 服务崩溃

android - 添加华为套件报错 "Could not find com.huawei.hms:location:6.0.0.302"

java - Android Studio Bumblebee,HMS Toolkit 不工作,为什么?

javascript - 快应用没有触发onShow生命周期功能?

java - 如何从 Worker 获取输出数据? (MVVM + WorkManager + Room)