标签: google-play-developer-api

如何从Google Play商店获取应用市场版本信息?

如何更新Play商店应用程序,即如果用户使用旧版本应用程序,我如何从Google Play商店获取应用程序版本信息以提示用户强制/建议更新应用程序.我已经通过了andorid-market-api,这不是官方的方式,也需要谷歌的oauth登录验证.我也经历了android查询 ,它提供了应用内版本检查,但它在我的情况下不起作用.我找到了以下两种选择:

  • 使用将存储版本信息的服务器API
  • 使用谷歌标签并在应用程序中访问它,这不是一个首选的方式.

还有其他方法可以轻松完成吗?

version-control android google-apps-marketplace google-play google-play-developer-api

36
推荐指数
7
解决办法
6万
查看次数

如何更新适用于Android Studio 2.2模拟器的Google Play服务?

这个问题有很多变化,但是大多数都很老,并没有真正回答这个问题.我不是问如何安装Studio 2.2模拟器中安装的Play服务.

问题是这些模拟器使用旧版Play服务.

当我运行使用Firebase以促进Google登录的测试应用时,我从Nexus 5 API 23仿真器获取此警报对话框:

在此输入图像描述

在我的登录活动的onCreate方法中,我有以下代码:

int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);

    switch(result) {
        case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
            Log.d(TAG,"SERVICE_VERSION_UPDATE_REQUIRED");
            break;
        case ConnectionResult.SUCCESS:
            Log.d(TAG, "Play service available success");
            break;
        default:
            Log.d(TAG, "unknown services result: " + result);

    }
Run Code Online (Sandbox Code Playgroud)

这总是返回SERVICE_VERSION_UPDATE_REQUIRED.

单击警报对话框中的更新不会检测到任何内容.在调试日志中,我在Play服务启动失败时收到此消息:

W/GooglePlayServicesUtil: Google Play services out of date.  Requires 9080000 but found 8489470
Run Code Online (Sandbox Code Playgroud)

我的应用程序在真正的Android设备上运行良好.

我错过了什么简单的事情?

TIA

android google-play-developer-api

27
推荐指数
3
解决办法
3万
查看次数

如何为新的 android 版本设置更新优先级

我一直在尝试实施 Google 的新应用内更新,但遇到了问题。问题首先是,开发人员如何在发布应用程序的新更新时指定更新的类型,即灵活的或即时的。其次,如果由开发人员决定他必须为特定更新实施哪种类型的更新,那么使用什么 - appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.IMMEDIATE) 或 appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.Flexible)

文档中给出了Google Play 使用 0 到 5 之间的整数值,其中 0 是默认值,5 是最高优先级。要设置更新的优先级,请使用 Google Play Developer API 中 Edits.tracks.releases 下的 inAppUpdatePriority 字段。 如何设置?

android google-play-developer-api in-app-update

25
推荐指数
3
解决办法
5831
查看次数

如何确定用户是否取消Google Play订阅?

即将在我们的Android应用程序中构建订阅产品,但有一点不清楚了解取消订阅的最佳方式.我们计划让用户取消的唯一方法是让他们转到Google Play商店并明确取消,但在这种情况下,我们的后端将不会收到通知.

Google Play Developer API文档明确表示您不能在API中查询所有订阅的状态,那么我们应该如何知道哪些用户取消了订阅?

任何帮助非常感谢!

android subscriptions google-play google-play-developer-api

18
推荐指数
2
解决办法
5249
查看次数

Google Android发布商API以"410 purchaseTokenNoLongerValid"错误响应

获取订阅状态(https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get)后,API会响应

{
  "error": {  
    "errors": [   
      {    
        "domain": "androidpublisher",    
        "reason": "purchaseTokenNoLongerValid",    
        "message": "The purchase token is no longer valid."   
      }  
    ],  
    "code": 410,  
    "message": "The purchase token is no longer valid." 
  }
}
Run Code Online (Sandbox Code Playgroud)

我无法在Android发布商API的上下文中找到任何提及"purchaseTokenNoLongerValid"或"购买令牌不再有效"的内容,无论是在文档中还是在Google搜索中.

我可以猜出这个错误意味着什么,但更好地确切地知道,无论如何,在此错误之后我应该如何处理订阅?

android subscription google-play-developer-api

13
推荐指数
2
解决办法
3832
查看次数

从Firebase Functions调用Google Play Developer API

我想发展我的用户的应用内购买和订阅的服务器端验证的建议,我想用火力地堡功能为.基本上它必须是一个HTTP触发器函数,它接收购买令牌,调用Play Developer API来验证购买,然后对结果做一些事情.

但是,调用许多Google API(包括Play Developer API)需要进行非平凡的授权.以下是我理解所需设置的方法:

  1. 必须有一个启用了Google Play Developer API v2的GCP项目.
  2. 它应该是一个单独的项目,因为在Google Play控制台中只能有一个链接到Play商店.
  3. 我的Firebase Functions项目必须以某种方式对该其他项目进行身份验证.我认为使用服务帐户最适合此服务器到服务器方案.
  4. 最后,我的Firebase函数代码必须以某种方式获取身份验证令牌(希望是JWT?),最后进行API调用以获得订阅状态.

问题是绝对没有人类可读的文档或指导.鉴于Firebase中的入口流量包含在免费计划中(因此我假设他们鼓励使用Firebase功能中的Google API),这一事实非常令人失望.我已经设法在这里和那里找到一些信息,但是对于谷歌API的经验太少(大多数只需要使用api密钥),我需要帮助将它放在一起.

这是我到目前为止所发现的:

  1. 我有一个链接到Play商店并启用了API的GCP项目.但出于某种原因,尝试在API资源管理器中对其进行测试会导致错误"用于调用Google Play Developer API的项目ID尚未在Google Play开发者控制台中进行链接".
  2. 我创建了一个服务帐户并导出了一个JSON密钥,其中包含生成JWT的密钥.
  3. 我还在Play Console中为该服务帐户设置了读取权限.
  4. 我找到了一个用于Google API 的Node.JS客户端库,它是alpha版本并且文档非常稀疏(例如,没有关于如何使用JWT进行身份验证的明显文档,也没有关于如何调用android发布者API的示例).目前我正在努力解决这个问题.不幸的是,我对阅读JS库代码感到不太舒服,特别是当编辑器没有提供跳转到突出显示的函数源的可能性时.

我很惊讶没有被询问或记录,因为从Firebase功能验证应用内购买似乎是一项常见任务.有没有人成功完成它,或者Firebase团队可能会介入回答?

google-api firebase google-api-nodejs-client google-play-developer-api google-cloud-functions

13
推荐指数
1
解决办法
2209
查看次数

我如何获得Google退款订单?

谷歌购买虚空API说:

通过Google Play Voided Purchases API,您可以撤消对与用户无效的购买相关联的应用内商品的访问权限.用户可以通过以下方式取消购买:

  • 用户请求退款.
  • 用户取消订单.
  • 订单会被退回.

但是当我得到这个API的回报时,我发现一些购买状态是Charged.

为什么收费订单是由Google Void Purchase返回的?

我如何获得所有退款订单?

android google-play google-play-developer-api google-developers-console

11
推荐指数
1
解决办法
810
查看次数

Google Play商店直接链接到评分标题

我正在尝试创建一个更简化的链接来评估应用程序.

在Android应用程序中,链接到Play商店的应用程序页面很简单market://details?id=<package_name> 但是,这链接到应用程序页面的顶部,用户必须向下滚动才能找到评级控件.

通常,所需的操作越少,用户就越有可能遵循.(例如,如果他们意外地滚过评级控件,他们可能会回到他们以前做的任何事情.)因此,理想情况下,应用程序中的"存储率"按钮不仅可以打开游戏中的相应页面存储,但打开它到正确的标题.文档要么没有列出如何执行此操作,要么在非显而易见的位置列出.

有一个古老的问题,这里那里接受的答案是:reviewId = 0附加到市场环节.即market://details?id=<package_name>&reviewId=0 不幸的是,这种方法不再适用.

目前有工作方式将用户直接链接到Google Play商店页面上的正确位置以评估应用吗?

android google-play google-play-developer-api

11
推荐指数
1
解决办法
1272
查看次数

firebase功能的服务帐户身份验证访问Google API(针对应用内购买信息)失败

我们正在准备一个firebase触发器来处理Android的实时开发人员通知,我们必须使用Google Play Developer API来了解用户订阅的详细信息.因此,我们在Google Play控制台中关联了firebase服务帐户,并授予了必要的访问权限.

我们使用谷歌的nodejs库为googleapis(github链接)编写了一段代码,如下所示:

return google.auth.getClient({
  keyFile: path.join(__dirname, './service-account.json'),
  scope: 'https://www.googleapis.com/auth/androidpublisher'
}) .then((client) => {
  const androidpublisher = google.androidpublisher({
    version: 'v3',
    auth: client
  });
  const params = {
    packageName: ANDROID_PACKAGE_NAME,
    subscriptionId: ANDROID_SUBSCRIPTIONID,
    token: token
  };
  return androidpublisher.purchases.subscriptions.get(params)
  .then(res => {
    console.log(`The response is ${res.data}`);
    return null;
  })
  .catch(error => {
    console.error(error);
  });
});
Run Code Online (Sandbox Code Playgroud)

但它返回一个错误状态:'无效的凭据',我对此有点失落.我已经使用curl测试了API和授权令牌,它也显示了401错误响应.

我不确定我的流程是否正确,有人能给我任何建议吗?

google-api node.js google-play-developer-api android-inapp-purchase google-cloud-functions

11
推荐指数
1
解决办法
802
查看次数

Google Play 管理中心 &gt; Play 游戏服务设置中未列出云项目

我正在尝试启动 Play 游戏服务并将其链接到我创建并启用 Google Play Developer api 的云项目。

但是,在“Play 游戏服务设置”页面上,我找不到我的云项目。即使我输入了确切的项目名称,它也不在搜索结果中。

在云平台上,我验证了我是该项目的所有者。

在此输入图像描述

另外,我对云项目和游戏服务项目感到困惑。

据我所知,1个开发者帐户可以链接到1个API项目。

如果我想将我的应用程序链接到每个游戏服务项目并将我的开发者帐户链接到1个云项目,我该怎么办?

我正在尝试对我的应用程序使用回复评论 api。如果我只是将“Google Play Developer api”添加到云平台中的游戏服务项目中,可以吗?

提前致谢!

android google-play-developer-api

11
推荐指数
1
解决办法
1320
查看次数