启用通知/观看 Google Play 存储桶以编程方式下载报告

2023-11-30

有很多关于的新信息如何以编程方式下载 Google Play 报告 using gsutil工具。 Google Play 使用存储桶来存储这些报告,就像 Google Cloud Storage 一样。我已经能够毫无问题地从 Google Play 存储桶下载报告。例如:

gsutil cp gs://pubsite_prod_rev_<my project id>/stats/installs/installs_<my app id>_201502_overview.csv .

另一方面,gsutil 提供了一个功能观看 Google Cloud Storage 存储桶,这样您就可以在每次存储桶中的对象发生变化时收到通知(gsutil notification watchbucket)。我还可以在我自己的 Google Cloud 项目中创建的存储桶中启用通知。

问题是,我无法在 Google Play 存储桶中启用通知。有可能吗?我得到一个AccessDeniedException: 403 Forbidden调用时出错:

gsutil notification watchbucket -i playnotif -t sometoken https://notif.mydomain.com gs://pubsite_prod_rev_<my project id>
  • 我已遵循所有步骤here,特别小心那些关于识别接收通知的域.
  • 正如我上面提到的,我已经能够完成我需要的所有流程,但使用的是 Google Cloud 中我自己的存储桶,而不是 Google Play 存储桶。
  • Google Play 项目已链接到 Google Cloud 项目。当我启用 Google Play API 访问(Google Play 开发者控制台 -> 配置(左侧菜单) -> API 访问)时,它会自动执行此操作。
  • Google Play 项目所有者和我自己的 Google Cloud 项目所有者是同一个人。
  • 该所有者已成功注册并验证了用于接收通知的域(在示例中,我验证了这两个域,以防万一:notif.mydomain.com and mydomain.com,在中使用 https谷歌网站管理员工具)
  • 这些域名也已被列入白名单谷歌开发者控制台(左侧边栏 -> API 和身份验证 -> 推送)。
  • 我已使用项目所有者帐号或我创建的服务帐号在自己的 Google Cloud 存储桶中成功启用了通知。我已经尝试在 Google Play 存储桶中同时使用两者(所有者和相应的服务帐户),但没有成功。

任何想法将不胜感激。谢谢!

EDIT:

我已经按照步骤操作了here,但使用不同的程序(如下面的评论中所述)。按照 Nikita 的建议,我尝试使用相同的过程来执行这些步骤。

因此,我将 gsutil 配置为(通过 gcloud)使用所有者帐户:

gcloud config set account [email protected]

在尝试授予对服务帐户的完全访问权限时,我遇到了以下错误:

$ gsutil acl ch -u [email protected]:FC gs://pubsite_prod_rev_my-bucket-id
CommandException: Failed to set acl for gs://pubsite_prod_rev_my-bucket-id/. Please ensure you have OWNER-role access to this resource.

因此,我尝试列出该存储桶的默认 ACL,结果发现:

$ gsutil defacl get gs://pubsite_prod_rev_my-bucket-id
No default object ACL present for gs://pubsite_prod_rev_my-bucket-id. This could occur if the default object ACL is private, in which case objects created in this bucket will be readable only by their creators. It could also mean you do not have OWNER permission on gs://pubsite_prod_rev_my-bucket-id and therefore do not have permission to read the default object ACL.
[]

结论:

这确实让我觉得,即使使用项目所有者帐户,该帐户在 Play 商店存储桶上也不具有 OWNER 角色。这意味着 ACL 无法修改,甚至无法列出,也无法启用通知,因为遗憾的是,我们实际上并没有own水桶。


目前,你不能。 Google Play 拥有这些存储桶,而最终用户没有该存储桶FULL_CONTROL订阅所需的访问权限对象变更通知.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

启用通知/观看 Google Play 存储桶以编程方式下载报告 的相关文章

随机推荐

  • Android 上是否有类似于 Windows Phone 7 上的全景或枢轴 UI 控件?

    有谁知道是否有一个适用于 Android 的 UI 小部件 类似于 Windows Phone 7 全景或枢轴控件 如果没有 是否有任何教程可以指导我走上实现自己的正确道路 任何帮助表示赞赏 谢谢 是的 我也对枢轴控件感兴趣 这是我找到的类
  • 避免 GRPC 服务器中的端口冲突

    我目前正在考虑 GRPC 来满足我的实时需求 我注意到在示例中我们明确要求绑定到服务器中的硬编码端口 我希望将服务器部署在像 Heroku 这样的 Stack 上 想象一下 我将端口设置为 9090 并且该端口当前正被另一个服务使用 这不会
  • R:每月汇总行数

    我制作了一个数据框 其中有一列包含日期和一列包含数值 我希望这个数据框按月进行分组 并汇总每个相应月份其他列中的所有数值 这是我的数据框示例 capture date Test1 Test2 Test3 2016 03 18 0 1 1 2
  • 如何在 Vue 2 中包含 css 文件

    我是 vue js 新手 正在尝试学习这个 我在我的系统中安装了全新版本的 vue webpack 我有一个 css js 和这个主题模板的图像 我想将其包含到 HTML 中 所以我尝试将其添加到index html但我可以在控制台中看到错
  • 在没有 IDE 的情况下如何使用 CMSIS?

    我正在使用 STM32F103C8T6 并想使用 CMSIS 这本质上只是寄存器定义 没有代码 让我的生活更轻松 同时仍保持在较低水平 问题是我不知道如何安装该库以便在命令行上使用 Makefile 使用 所有文档似乎都与特定于供应商的 I
  • 从任何进程获取密钥

    我在网上看到了很多解决方案 但没有一个完全符合我的要求 当我的应用程序在后台运行时 在给定进程 不是我的控制台应用程序 中按下任何键的最佳 最简单方法是什么 我不需要修改器或任何东西 如果您不太关心按下哪个进程 最简单的方法是调用获取异步键
  • 删除异常值 (+/- 3 std) 并替换为 Python/pandas 中的 np.nan

    我看到了几种接近解决我的问题的解决方案 link1 link2 但到目前为止 他们还没有帮助我取得成功 我相信以下解决方案是我所需要的 但仍然出现错误 并且我没有声誉点对其进行评论 提问 link 我收到以下错误 但我不明白在哪里 copy
  • 如何在android中创建像Iphone Edittext框一样的渐变

    这是一个例子iPhone EditText控制 如何在 Android 中创建相同的控件 基本上 我看到三种方式做你想做的事 第一种方法 第一个是 如阿基 说 制作一个 9 补丁 精确复制您要使用的渐变填充框 未指定的其他平台 这可以让您的
  • 如何将 Google Actions 响应集成到 Dialogflow 中的 Webhook 响应中?

    我正在尝试找出如何嵌入 Google Actions 响应 例如卡片轮播 在 DialogFlow 的 Webhook 响应中 On https developers google com actions dialogflow webhoo
  • Hibernate 抛出 SQLException 无法重置阅读器

    java sql SQLException could not reset reader at org hibernate lob ClobImpl getCharacterStream ClobImpl java 100 at org h
  • Python+Tkinter,如何在独立于tk前端的后台运行?

    我是一个 tkinter 菜鸟 在后台运行长时间运行的进程 与我的 tkinter 弹出窗口 表单 分开 的首选方式是什么 我在使用 tkinter 时阅读了有关多线程的不同内容 但找不到简单的 这样做 需要明确的是 我需要的行为是 用户启
  • Xarray:将多个 CSV 文件加载到数据集中

    我有几个逗号分隔的数据文件 我想将它们加载到 xarray 数据集中 每个文件中的每一行代表固定网格中字段的不同空间值 每个文件代表不同的时间点 网格间距是固定的 不随时间变化 网格的间距不均匀 最终目标是计算max x y std t v
  • 如何在 ruby​​ 中对字母数字数组进行排序

    如何在 ruby 中按字母数字顺序对数组数据进行排序 假设我的数组是a test 0 1 test 0 2 test 0 3 test 0 4 test 0 5 test 0 6 test 0 7 test 0 8 test 0 9 tes
  • Android Studio 未在 Flutter 中显示 Logcat

    我正在使用 Android StudioFlutter应用程序开发 一切似乎都工作正常 只是 Android Studio 没有在 Logcat 中显示 日志 在 Logcat 部分中 显示 请配置 Android SDK 这是已经配置好的
  • 从数据表中清除排序 stateSave

    我有带有状态保存和标头过滤器的数据表 请参阅下面的代码 dttblEnrolledUser tblUsers dataTable paging true searching true bLengthChange false info fal
  • 将对象添加到 json 文件 - Node.js

    我正在尝试将一个对象添加到 Node js 中一个非常大的 JSON 文件中 但前提是 id 与现有对象不匹配 到目前为止我所拥有的 JSON 文件示例 id 123 text some text id 223 text some othe
  • 如何使用 WINAPI 和 C++ 提取可执行文件的文件描述?

    我正在尝试提取可执行文件的文件描述 文件描述是当您右键单击文件并选择 属性 时看到的 它位于 常规 选项卡中 我尝试过使用这里找到的算法 https learn microsoft com en us windows desktop api
  • 从 php codeigniter 调用存储过程

    找了一个星期 没有找到一些可以用来执行存储过程的内容 设想 我已经在Profiler窗口中复制了在SQL Server 2014管理上运行的代码 我打开 SQL Studio 和 HeidiSQL 并运行查询 它运行正常并返回预期结果 当我
  • 如何将裁剪后的图像扩展为方框?

    我得到了一张 JPEG 图像 需要使用 CSS 对其进行裁剪 然后进行扩展以适合1200px x 1000px box 这是我到目前为止所拥有的 top image display block clip path inset 0px 103
  • 启用通知/观看 Google Play 存储桶以编程方式下载报告

    有很多关于的新信息如何以编程方式下载 Google Play 报告 using gsutil工具 Google Play 使用存储桶来存储这些报告 就像 Google Cloud Storage 一样 我已经能够毫无问题地从 Google