许可问题Google Play

时间:2014-06-26 14:11:12

标签: android in-app-purchase google-play

我遇到androidpublisher.inapppurchases.get

时遇到问题

我的项目仅根据https://code.google.com/p/google-api-java-client/wiki/OAuth2#Service_Accounts进行,并且在我迁移到新的Google Play帐户之前一切正常。所以现在当我执行请求服务器到服务器时,我收到了这个响应。

{
  "code" : 401,
  "errors" : [ {
    "domain" : "androidpublisher",
    "message" : "The current user has insufficient permissions to perform the requested operation.",
    "reason" : "permissionDenied"
  } ],
  "message" : "The current user has insufficient permissions to perform the requested operation."
}

任何人都熟悉此回复,因为在Google文档中没有任何关于此的反应。

4 个答案:

答案 0 :(得分:28)

问题解决了在Google Play设置中以管理员用户身份添加用户服务帐户电子邮件地址xxxxx@developer.gserviceaccount.com。

答案 1 :(得分:7)

从Google Play控制台转到(使用管理员权限):

  1. 设置(左侧面板)
  2. 开发者帐户(左侧面板)
  3. 用户&权限(左侧面板)
  4. 点击邀请新用户按钮。
  5. 输入服务帐户电子邮件(与您使用的json文件相同,以及创建服务帐户时生成的Google帐户)
  6. 在Role DropDown菜单中选择Administrator。
  7. 点击发送邀请
  8. 那就是它。现在没有人可以阻止你! :)

答案 2 :(得分:3)

不幸的是,接受的答案对我们不起作用。要验证收据,您需要一个访问令牌。 Access令牌由RefreshToken生成。 RefreshToken与Google帐户相关联。该Google帐户应该有View financial information在Google Play控制台中。

  1. 使用Android Client ID
  2. 获取重定向网址
  3. 使用带Financial Access Enabled Account的重定向网址获取刷新令牌
  4. 使用刷新令牌获取Access Token
  5. 使用Access Token验证IAP收据

答案 3 :(得分:2)

对于遇到此问题且上述解决方案不起作用且您的服务帐户在 Google Cloud 和 Google Play Console 中具有足够权限的用户,权限传播可能需要大约 24 小时以上(根据其他用户) ).

但是有一个技巧可以解决这个问题:在 Google Play 管理中心的 YOUR_APP > Products 部分下更新/更改/创建应用内购买。

Fix mentioned on Github